基于SPI接口的单通道AD采集设计_第1页
基于SPI接口的单通道AD采集设计_第2页
基于SPI接口的单通道AD采集设计_第3页
基于SPI接口的单通道AD采集设计_第4页
基于SPI接口的单通道AD采集设计_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 课程设计(论文)说明书题 目:基于SPI接口的单通道A/D采集设计院 (系): 电子工程与自动化学院 专 业: 测控技术与仪器 学生姓名: 韦 军 之 学 号: 0900820524 指导教师: 何 锋 职 称: 讲 师 2012年 12月 28 日摘 要本设计基于AT89C52单片机的模拟信号采集转换显示系统的硬件设计,设计主要组成由电位器模拟输入、控制电路、SPI传输数据,模数转换,显示电路等几大部分。系统实现的功能是SPI传输、A/D转换和数值显示。本设计采用电位器生成模拟信号传送给ADC0832,单片机通过SPI总线数据传输控制ADC0832,经过A/D转换后的数据发送到单片机,由数

2、码管显示,可实现模拟信号采集转换和显示功能。该系统设计布线简单、体积小、重量轻、性价比高、扩展方便。如果增添多路模拟转换开关就可实现多路信号采集和显示功能。本设计可实现对来自现场的05V的直流模拟信号的实时采集,适用于温度、流量、压力的过程控制的系统反馈检查环节。关键词:单片机;SPI;模数转换AbstractThis design is introduced based on the SCM STC89C51 analog signal acquisition hardware design of the display system, The design is mainly compos

3、ed of the potentiometer analog input control circuit and the display circuit. The functionality of the system is A / D conversion and numerical display.This design use potentiometers to generate analog signals transmitted to the microcontroller, after the microcontroller A / D converter the data is

4、sent to the digital display, that can realize the conversion and display of analog data acquisition. The system design layout is simple, small, light weight, and cost-effective expansion of the convenience. If you add multiple analog converter switch can achieve multi-channel signal acquisition and

5、display functions. This design allows for real-time acquisition from the field 0 5V DC analog signal, it is applicable to the temperature, Flow and pressure process control system feedback check aspectsKey words:AT89S52; SPI; A / D converter 目 录引言 41设计要求与方案论证51.1系统设计任务和要求51.2方案论证51.2.1模数转换的选择51.2.2

6、51单片机选择51.2.3 显示部分52系统总体设计62.1系统设计框图62.2 系统部分部件简介62.2.1 AT89S52功能简介62.2.2 ADC0832 功能简介82.2.3 按键 102.2.4 显示模块 113 系统硬件电路12 3.1 系统硬件电路的组成 123.2部分硬件电路简介 123.2.1SPI总线协议及SPI时序图详解 123.2.2 ADC0832模数转换 133.2.3复位电路 143.2.4 晶振电路 143.2.5 数码管驱动显示电路 153.3 系统电路总原理图 163.4 PCB板的制作 174 检测与调试184.1 检测方法184.1.1静态调试 184

7、.1.2 动态调试 184.2精度调试 194.3软件调试 195总结与心得 21参考文献22附 录 23引言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,在我国已得到广泛应用。在智能仪表、工业检测控制、电力电子、机电一体化等方面取得了瞩目的成就。基于单片机的多路温度采集系统无论是在工业还是农业都是不可缺少的系统,其实用性强,实时性好,应用前景广阔。对于本设计而言,用电位器模拟输入代替温度传感器输入将05V的直流电压进行测量并送到LED进行显示。由于采集的是直流信号,对于缓慢变化的信号不必加保持电路,SPI 接口是一种同步串行外设接口,可以使

8、单片机与各种外围设备以串行方式进行通信以交换信息。SPI 总线系统可直接与多种标准外围器件直接接口,该接口一般使用4 条线:串行时钟线SCK、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI 和低电平有效的从机选择线CS,因此基于SPI 总线的系统扩展仅需34 位数据线和控制线即可实现与具有SPI 总线接口功能的各种I/O 器件直接接口,可以简化电路设计,节省很多常规电路中的接口器件和I/O 口线,提高设计的可靠性。采用了低功耗的LED数码管显示器件,以满足其在终端显示采集结果的需求。终端键盘控制采用尽可能少的键来实现控制功能,为了防止按键在输入时的消抖采用软件消抖的方法,以

9、降低硬件的开销,来提高系统的抗干扰能力。1 设计要求与方案论证1.1 系统设计任务与要求数据采集系统的设计是采用单片机为CPU的系统对某些控制系统的控制可以得到良好的效果。本次设计的论文题目是基于SPI接口的单通道A/D采集设计。主要要求如下:SPI数据传输、单片机SPI时序,单片机控制模数转换,数码管显示。随着超大规模集成电路技术的发展,由于单片机具有体积小、功能强、性价比高等特点,基于单片机而开发的测量控制系统也越来越受到重视,采用单片机做主控单元,无触点控制,可完成对数据的采集要求。所以基于单片机的数据采集广泛的应用于工业和农业等行业中,使产品小型化、智能化,既提高了产品的功能和质量,又

10、降低了成本,简化了设计。1.2 方案论证1.2.1 模数转换的选择A/D转换器的种类很多,就位数来分有8位、10位、12位和16位等。位数越高分辨率就越高,价格也就越贵。A/D转换器的型号很多,在精度和转换速度上的差异很大。(a) 双积分A/D转换器:双积分是一种间接式A/D转换器,优点是转换精度高,速度快。缺点是转换时间长,一般要4050ms,适用于转换速度不快的场合。(b) 逐次逼近式A/D转换器:逐次逼近式的属于直接式A/D转换器,转换精度高,速度高,价格适中,是目前种类最多,应用最广的A/D转换器,典型的8位模数转换器有ADC0832。鉴于方案(b)的数据类型是SPI形式的,价格适中,

11、种类繁多,应用广泛,本设计中采用ADC0832。1.2.2 51单片机的选择单片机是属于嵌入式系统,此系统是把CPU加上一些少量的内存和输入出组件(I/O),都嵌入在一颗芯片内,再使用特定的组译和编译软件编辑程序,利用烧录器把程序储存在芯片内,如此加上一些简单的外围电路,即可变成一个控制系统,所以单芯片又称为微控制器。本设计中选用AT89S52其内部已有程序存储器ROM,不用再去外扩程序存储器,使用方便。1.2.3 显示部分LED数码管有共阴和共阳两种,都是由七个发光管组成8字形构成的,加上小数点就是8个。这些段分别由字母a,b,c,d,e,f,g,dp来表示。当数码管特定的段加上电压后,这些

12、特定的段就会发亮,以形成我们眼睛看到的字样。LED数码管以发光二极管作为发光单元,颜色有单红, 黄,蓝,绿,白,七彩效果。其外壳采用阻燃PC塑料制作,强度高,抗冲击,抗老化,防紫外线,防尘,防潮。LED数码管具有功耗小,无热量,耐冲击,长寿命等优点。 本设计中采用共阴极数码管来显示。2 系统总体设计2.1 系统设计框图本设计主要包括:模拟数据的采集, A/D转换,数据处理模块,显示模块,按键模块,供电系统等几个基本部分。其设计框图如下:SPI A/D转换单片机显示部分按键时钟晶振复位电路图2.1 系统总体框图系统原理:用电位器模拟数据输入经过ADC0832的模拟通道进行A/D转换,又SPI总线

13、传输转换后的数字量经过单片机的处理,使输入量得以在数码管上显示。 按键复位电路是上电复位加手动复位,使用方便,在程序跑时,可以手动复位,这样就不用在重启单片机电源,就可以实现复位。还有两个按键是实现在循环显示的同时可以看任意一路模拟输入量的显示及确认,即加一和确认键。 数码管显示模块选用了4位数码管显示,第一位是通道显示,后三位是输入量的显示。2.2系统部分简介2.2.1 AT89S52功能简介a、主要特性如下: 1. 增强型 8051 单片机,6 时钟/机器周期和 12 时钟/机器周期可以任意选择,指令代码完全兼容传统 8051。 2. 工作电压:5.5V3.3V(5V 单片机)/3.8V2

14、.0V(3V 单片机)。 3. 工作频率范围:040MHz,相当于普通 8051 的 080MHz,实际工作频率可达 48MHz 。4. 用户应用程序空间为 4K 字节 5. 片上集成 1208 字节 RAM 。6. 通用 I/O 口 (35 个) 复位后为:P1/P2/P3/P4 是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O 口用时,需加上拉电阻。 7. ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序,数秒即可完成一片。8. 具有 EEPROM 功能

15、 。9. 具有看门狗功能 。10. 共 3 个 16 位定时器/计数器。即定时器 T0、T1、T2。11. 外部中断 2 路,下降沿中断或低电平触发电路,Power Down 模式可由外部中断低电平触发中断方式唤醒 。13. 工作温度范围:-40+85(工业级)/075(商业级)。 b、引脚功能说明:图2.2 AT89S52引脚说明P0 端口(P0.0P0.7,3932 引脚) :P0 口是一个漏极开路的 8 位双向 I/O 口。作为输出端口,每个引脚能驱动 8 个 TTL 负载,对端口 P0 写入每个引脚能驱动写入“1”时,可以作为高阻抗输入。在访问外部程序和数据存储器时在访问外部程序和数据

16、存储器时,P0 口也可以提供低 8 位地址和8位数据的复用总线位数据的复用总线。此时,P0 口内部上拉电阻有效。在 Flash ROM 编在程时,P0 端口接收指令字节端口接收指令字节;而在校验程序时,则输出指令字节则输出指令字节。验证时,要求外接上拉电阻。 P1 端口(P1.0P1.7,18 引脚):P1 口是一个带内部上拉电阻的 8 位双向 I/O 口。P1 的输出缓冲器可驱动(吸收或者输出电流方式)4 个 TTL 输入。对端 口写入 1 时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。P1 口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。此外,P1.0

17、 和 P1.1 还可以作为定时器/计数器 2 的外部技术输入(P1.0/T2) 和定时器/计数器 2 的触发输入(P1.1/T2EX)。 P2 端口(P2.0P2.7,2128 引脚) :P2 口是一个带内部上拉电阻的 8 位双 向 I/O 端口。P2 的输出缓冲器可以驱动(吸收或输出电流方式)4 个 TTL 输入。对端口写入 1 时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。P2 作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会 输出一个电流(I)。 RST(9 引脚) :复位输入。当输入连续两个机器周期以上高电平时为有效, 用来完成单片机单片机的复位初始化操作

18、。看门狗计时完成后,RST 引脚输出 96 个晶振周期的高电平。特殊寄存器 AUXR(地址 8EH)上的 DISRTO 位可以使此功 能无效。DISRTO 默认状态下,复位高电平有效。2.2.2 ADC0832功能简介ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道AD 转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在05 V之间。芯片转换时间仅为32 s,具有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI数据输入端,可以轻

19、易地实现通道功能的选择。由于它体积小,兼容性强,性价比高深受技术人员欢迎。11 ADC0832的特点=ADC0832具有以下特点8位分辨率;双通道AD转换;输入输出电平与TTLCMOS相兼容;5 V电源供电时输入电压在0 5 V 之间;工作频率为250 kHg,转换时间为32,s;一般功耗仅为15 mW;8P,14PDIP(双列直插),PICC多种封装;商用级芯片温宽为070 摄氏度,工业级芯片温宽为4085 C。图2.3为8脚双列直插式芯片顶视图。图2.3 芯片顶视图12 ADC0832芯片接口说明ADC0832芯片接口说明 :CS片选使能,低电平芯片使能;CH0为模拟输入通道0,或作为IN

20、使用;CH1为模拟输入通道1,或作为IN±使用;GND为芯片参考0电位(地);DI为数据信号输入,选择通道控制;DO为数据信号输出,转换数据输出;CLK 为芯片时钟输入;VCCVREF为电源输入及参考电压输入(复用)。13 ADC0832与单片机的接口电路ADC0832与单片机的接口电路如图2所示。图2.4 ADC0832与单片机的接口电路14 单片机对ADC0832的控制原理 在正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS,CLKDO,DI。但由于DO 端与DI端在通信时没有同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。

21、如图3所示当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用CLK,DO和DI的电平可任意。当需要进行AD转换时,需先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO,DI端则使用DI端输入通道功能选择的数据信号。在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。图2.5 ADC0832的时序图2.2.3 按键按键在单片机系统中是一个重要的部件。为了输入数据,查询和控制系统的工作状态,都要用到按键,按键是人工干预计算机的主要手段。在单片机控制系统中广泛使用的是机械按键。按键的动作不是立刻就完成的

22、,抖动是表现在输入电压的信号上。在理想的状态下按键引脚电平的变化如下图(a)曲线,但是在实际中按键在按下或放开的瞬间,由于机械触点存在弹跳现象,结果实际按键电压波形如图(b)曲线,即机械按键在按下和释放的瞬间存在抖动现象,抖动时间的长短与操作者的时间有关,一般在515ms之间而按键稳定闭合时间长短与操作者按键时间有关,从数百毫秒到数秒之间,为了保证按键由“按下”到“松手”之间仅视为一次输入或数据次输入,(对于具有重复按键功能的按键),必须在硬件或软件上增加去抖动措施,以避免一次按键输入一串数码。在本设计中采用软件去抖动措施,以降低硬件成本。图2.6 按键按下的输出电平2.2.4 显示模块LED

23、数码管正向压降一般为1.52V,额定电流为10mA,最大电流为40mA。数码管及其内部结构图如下所示:图2.7 数码管及其内部结构图共阴数码管数字编码,如下表所示:表3-1 共阴数码管数字编码显示数字共阴极字段码03FH106H25BH34FH466H56DH67DH707H87FH96FH3 系统硬件电路3.1系统硬件电路的组成要完成本设计的任务,系统硬件电路的组成主要有:电源电路、复位电路、晶振电路、电位器模拟输入电路、A/D模数转换电路、按键电路、数码管驱动显示电路等。3.2 部分硬件电路简介3.2.1 SPI总线协议及SPI时序图详解SPI,是英语Serial Peripheral I

24、nterface的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片 的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。 SPI是一个环形总线结构,由ss(cs)、sck、sdi、sdo构成,其时序其实很简单,主要是在sck的控制下,两个双向移位寄存器进行数据交换。 上升沿发送、下降沿接收、高位先发送。 上升沿到来的时候,sdo上的电平将被发送到从设备的寄存器中。 下降沿到来的时候,sdi上的电平将被接收到主设备的寄存器中。 假设主机和从机初始化就绪:并且主

25、机的sbuff=0xaa (10101010),从机的sbuff=0x55 (01010101),下面将分步对spi的8个时钟周期的数据情况演示一遍(假设上升沿发送数据)。图3.1 SPI工作模型图这样就完成了两个寄存器8位的交换,上面的0-1表示上升沿、1-0表示下降沿,sdi、 sdo相对于主机而言的。根据以上分析,一个完整的传送周期是16位,即两个字节,因为,首先主机要发送命令过去,然后从机根据主机的名准备数据,主机在 下一个8位时钟周期才把数据读回来。 SPI总线是Motorola公司推出的三线同步接口,同步串行3线方式进行通信:一条时钟线SCK,一条数据输入线MOSI,一条数据输出线

26、MISO; 用于 CPU与各种外围器件进行全双工、同步串行通讯。SPI主要特点有:可以同时发出和接收串行数据;可以当作主机或从机工作;提供频率可编程时钟;发送结束 中断标志;写冲突保护;总线竞争保护等。 SPI总线有四种工作方式(SP0, SP1, SP2, SP3),其中使用的最为广泛的是SPI0和SPI3方式。 SPI模块为了和外设进行数据交换,根据外设工作要求,其输出串行同步时钟极性和相位可以进行配置,时钟极性(CPOL)对传输协议没有重大的影响。如果 CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平。时钟相位(CPHA)能够配置用于选择两种

27、不同的传 输协议之一进行数据传输。如果CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。 SPI主模块和与之通信的外设音时钟相位和极性应该一致。3.2.2 ADC0832模数转换(1)对芯片的性能要有深刻体会,特别是芯片工作频率为250 kHz,转换时间为32 us;要在编写程序时特别注意,需要编写程者了解每句指令的执行时间, 严格控制CLK的时序,即控制CLK 的时序为4s,整个转换时间控制在32 s。(2)DIDO信号输入输出时,数据是串行输入输出的,先是输入地址参数,后面输出的才是转换数据。而地址参

28、数是01,1O,11时芯片都能正常输出数据,当地址参数为O0无法判断是地址还是数据时,就应考虑将输出信号置于高电平状态下,芯片才不会钳位在低电平而不能正常转换。(3)测量高速串行数据,需要高频率或能测试串行数据的示波器,如果示波器频率不高也是无法调试的。(4)在双通道模式输入时,如果IN一的电压大于IN+的电压则转换后的数据结果也不为00H。图3.2 芯片与单片机的接线3.2.3 复位电路单片机复位电路时系统中必不可少的,本设计采用手动复位。这种复位电路的工作原理是:通电时,电容两端相当于是短路,于是RST引脚上为高电平,复位按钮松开后,电源通过电阻对电容充电,RST端电压慢慢下降,降到一定程

29、度,即为低电平,单片机完成复位工作。图3.3 复位电路3.2.4 晶振电路晶振在单片机系统中作用非常大,它结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片机的一切指令的执行都是建立在单片机晶振提供的时钟频率。晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。本设计采用的电容C5、C6为30pF,晶振是12MHz。工作原理:单片机晶振电路即分频器的原始工作振荡频率,由石英晶体多谐振荡器的谐振频率来产生,晶振其实是一个频率产生器,他主要把传进去的电压转化为频率信号。提供给分频率一个基准的振荡频率,它是一个

30、多谐振荡器的正回馈环电路,也就是说它把输入作为输出,把输出作为输入的回馈频率,象这样一个永无休止的循环自激过程。晶振电路如下图所示:图3.4 晶振电路3.2.5 数码管驱动显示电路本设计采用共阴数码管显示,其公共端经三极管接地,同时三极管连接单片机P1口做为位显示信号选择,P0口为段选控制。图3.4数码管驱动显示电路3.3 系统电路总原理图完成各个模块后就要完成整个系统的接线,为了提高系统的抗干扰性,在各个集成元件上分别加一个瓷片电容。综上所述,把各个电路模块结合在一起就完成了设计原理图的设计,如附录所示。3.4 PCB板的制作在检查过系统原理图没有错误的情况下,由原理图生成PCB图,按照信号

31、流合理的布局元件,并设置元件间距约束为10mil;设置PCB布线规则:设置全板的安全间距为10mil;地线GND为40mil,新建规则VCC为30mil,其他other为15mil。优先级设定:VCC的优先级最高,GND其次,最后是其他other。本设计采用双面板设计。 布线采用交叉式布线,首先把各个瓷片电容与相对应的集成元件手动连接在一起,再进行自动布线。若布线不太恰当则改为手动改动布线,直到布线合理,美化为止。如下图所示:图3.5 PCB图泪滴焊盘是指印制板上的焊盘与铜箔走线之间,用线连接为泪滴状,用来增强焊盘的机械强度。这样不但可以让管脚可靠地连接,而且多次更换元件也不至于使焊盘脱落。对

32、PCB板覆铜。覆铜的意义在于减小地线阻抗,提高抗干扰能力;降低压降,提高电源效率;若与地线相连,减小环路面积。点击配线栏下的放置覆铜平面,分别在Top Layer和Bottom Layer层镀铜并在连接到网络后选择GND网络。4 检测与调试硬件调试是利用开发系统、基本测试仪器(万用表、示波器)等,检查用户系统硬件中存在的故障。4.1检测方法硬件调试可分为静态调试与动态调试两步进行:4.1.1 静态调试静态调试是在用户系统未工作时的一种调试。步骤如下: 第一步: 目测。检查外部的各种元件或者是电路是否有断点。 第二步: 用万用表测试。先用万用表复核目测中有疑问的连接点,再检测各种电源线与接地线之

33、间是否有短路现象。 第三步: 加电检测。给电路板加电检测所有的插座或者是硬件的电源是否符合要求的值。第四步: 联机检查。因为只有单片机开发.系统才能完成对用户.系统的调试。4.1.2 动态调试动态调试是在用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等的一种硬件检查。动态调试的一般方法是由近及远、由分到合。由近及远 是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的分层,然后分层调试。调试时仍采用去掉无关元件的方法,逐层调试下去,就会定位故障元件了。由分到合 是指首先按逻辑功能将用户系统硬件电路分为若干块,当调试电路时,与该元件无关的器件全部从用户系统

34、中去掉,这样可以将故障范围限定在某个局部的电路上。当各块电路无故障后,将各电路逐块加入系统中,再对各块电路功能及各电路之间可能存在的相互联系进行调试。由分到合的调试即告完成。为了检测单片机与数码管的连接是否有问题,编写小程序运行:ORG 0000HLJMP MAINORG 0030HMAIN: MOV P1,#0F8HEND此程序是让四位数码管同时显示数字一,给单片机上电,复位。单片机正常运行,在数码管上显示111.1。数码管显示正常。4.2 精度调试AT89S52单片机边沿触发中断响应时刻的测量:由于AT89S52系列具有很强的片内功能和指令系统,因而使单片机的应用发生了一个飞跃,这个系列的

35、产品也很快成为世界上第二代的标准控制器。51系列单片机有5个中断源,其中有2个是外部输入中断源INT0和INT1。可由中断控制寄存器TCON的ITI(TCON.2)和IT0(TCON.1)分别控制外部输入中断1和中断O的中断触发方式。若为0,则外部输入中断控制为电平触发方式;若为1,则控制为边沿触发方式。这里是下降沿触发中断。单片机外部输入的中断触发电平是TTL电平。对于TTL电平,TTL逻辑门输出高电平的允许范同为2.45V,其标称值为3.6V;输出低电平的允许范围00.7V,其标称值为0.3V2,在0.7 V与2.4V之间的是非高非低的中间电平。这样,在实际应用中,假设单片机外部中断引脚I

36、NT0输入一路由+5V下降到O的下降沿信号,单片机在某个时钟周期采样INT0引脚得到2.4V的高电平,而在下一个时钟周期到来进行采样时,由于实际的外部输入中断触发信号由高电平变为低电平往往需要一定的时间,因此,检测到的可能并非真正的低电平(小于0.7V),而是处于低电平与高电平之间的某一中间电平,即0.72.4V的某一电平。经测试本硬件中存在ADC0832不能正常工作,仔细查看原理图及PCB板得知:ADC0832芯片的时钟信号未与单片机相接。在PCB板上用一根导线使之相接,再检测未发现异常。4.3 软件调试该系统通过单片机的定时器定时200ms,定时扫描键盘和控制ADC0832进行模数转换,在

37、主函数内进行转换为05V,然后进行数码管动态显示。当定时时间到时,扫描键盘和进行模数转换。主程序流程图如下:开始初始化定时器装初值并开始定时控制ADC0832模数转换,存储到dat转换为05V数码管显示定时时间到 在主函数循环执行依该流程图编写程序,能很好工作。该流程图的程序见附录。5 总结与心得本文对基于单片机数据采集装置的硬件电路设计作了简要的分析,数据采集无论是在工业还是农业其应用都是非常广阔。温度采集是多点温度采集并将采集结果送到控制端让数码管来显示,这样便于让操作人员更加清楚的得知远端数据变化。通过这次的毕业设计使我对51单片机有了更深刻的认识,使我在大学课堂上学的理论知识通过实践变

38、的更加深刻,为我以后在接触单片机方面的工作打下了扎实的基础,其次在这次毕业设计中也锻炼了我独立解决困难问题的能力,培养了我的团队合作精神。本次对于单片机控制的数值显示温度的设计让我更明白了单片机控制在现代工程控制方面的优势,以及其重要性,在以前对单片机的学习中我有很多的问题通过这次学习都得到了解决,这样就间接提高了我的单片机技术水平。 整个设计通过了硬件上的调试。我想这对于自己以后的学习和工作都会有很大的帮助的。在这次设计中遇到了很多问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。一切问题必须要一点一

39、滴的解决,而在解决的过程中也是我个人能力提升的过程。给我印象最深的是要设计一个成功的电路,必须要有耐心,要有坚持的毅力。在整个电路的设计过程中,花费时间最多的是各个单元电路的连接及电路的细节设计上,如在多种方案的选择中,我们仔细比较分析其原理以及可行的原因,在焊接电路时要防止电路的虚焊,电解电容和发光二极管的极性,以免儿器件损坏。以及开关焊接时要注意引脚问题。最后还是在老师的耐心指导下,使整个电路可稳定工作。实验过程中我深刻的体会到在设计过程中,需要反复实践,其过程很可能相当烦琐,有时花很长时间设计出来的电路还是需要重做,那时心中未免有点灰心,有时还特别想放弃,此时更加需要静下心,查找原因。总

40、体来说,这次实践我受益匪浅。在摸索该如何设计电路使之实现所需功能的过程中,特别有趣,培养了我的设计思维,增加了实际操作能力。在让我体会电路的艰辛的同时,更让我体会到成功的喜悦和快乐。参考文献1 李建忠.单片机原理及应用M.西安:西安电子科技大学出版社,2002:2140.2 郝建国.单片机在电子电路设计中的应用M.北京:清华大学出版社,2006:124143.3 王松武.电子创新设计与实践M.北京:国防工业出版社,2005.4 陈梓城.使用电子电路设计与调试M.北京:中国电力出版社,2006.5 张 伟.电路板设计与制作M.北京:人民邮电出版社,2004.6 白泽生.用MCS-51单片机实现温

41、度的检测M.现代电子技术,2005.7 钱晓捷.微机原理与接口技术M.北京:机械工业出版社,2009.8 程 琤.单片机原理与应用系统开发M.北京:国防工业出版社,2010.附 录仿真图:原理图:PCB图: 最终程序:#include<REG52.H>#include "intrins.h"#define uchar unsigned char#define uint unsigned intUchar code led=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c, 0x39,0x5e,

42、0x79,0x71; uchar code ledpoint=0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef;uchar DIS=1,2,3,5;uchar dat=0x00;uchar CH=0x00;uchar count=0x00;sbit CS=P34;sbit Clk=P20;sbit DATI = P22;sbit DATO = P21;sbit KEY = P27;uchar adc0832(uchar CH) uchar i,test,adval;adval = 0x00; test = 0x00; Clk = 0; /初始化

43、 DATI = 1; _nop_(); CS = 0; _nop_(); Clk = 1; _nop_(); if ( CH = 0x00 ) /通道选择 Clk = 0; DATI = 1; /通道0的第一位 _nop_(); Clk = 1; _nop_(); Clk = 0; DATI = 0; /通道0的第二位 _nop_(); Clk = 1; _nop_(); if ( CH = 0x01 ) /通道选择 Clk = 0; DATI = 1; /通道0的第一位 _nop_(); Clk = 1; _nop_(); Clk = 0; DATI = 1; /通道0的第二位 _nop_(); Clk = 1; _nop_(); if ( CH = 0x02 ) /通道选择 Clk = 0; DATI = 0; /通道0的第一位 _nop_(); Clk = 1; _nop_(); Clk = 0; DATI = 1; /通道0的第二位 _nop_(); Clk = 1; _nop_(); Clk = 0; DATI = 1; for( i = 0;i < 8;i+ ) /读取前8位的值 _nop_(); adval <<= 1; Clk = 1; _nop_(); C

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论