




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 第 1 页单片机课程设计任务书专业年级专业年级 学号学号 学生姓名学生姓名 任任务务下下达达日日期期: 设计日期:设计日期: 设计题目:设计题目: 单片机电压采集装置设计专题题目:设计专题题目:单片机系统设计设计主要内容:设计主要内容: 制作单片机电压采集装置设计要求:设计要求:1、基本要求制作单片机电压采集装置电压采集功能在ADC0809的0通道输入05V电压,实时显示被测电压值(显示精度0.001V,即显示1位整数,3位小数) 。2、扩展要求指定通道采集,模式 0:通道 0 模拟信号采集,模式 1:指定通道模拟信号采集,模式 2:8 通道模拟信号自动循环采集,模式 3:设定报警上限值,模
2、式 4:设定报警下限值。系统有三个按键,分别是:模式切换、加、减按钮,模式切换:1 号按键,模式加 1;加:2 号按键,则值加 1;模式1 下改变通道,模式 3 下改变报警值;减:3 号按键,则值减 1, 模式 1 下改变通道, 模式 3 下改变报警值。报警设置:设置报警上限、下限,超过上线或者低于下线时 LED 会亮,并发出警报声。3、创新部分 将数码管换成LCD1602显示模式通道及电压值。 第 2 页指导教师签字:指导教师签字:摘摘 要要本设计介绍了基于用 89S52 单片机和 AD0809 进行电压采集的基本电路。系统硬件电路是由主板电路和扩展板电路两部分组成。主板电路包括单片机的最小
3、系统,键盘电路和 8 个 LED 数码显示电路,这部分电路已制成电路板。扩展电路中包含了 A/D 转换电路,单片机电压采集电路,通过调节电位器来改变输入的电压值,在主板电路的数码管中显示出所采集的电压值,该部分电路的布线部分是由自己手工完成的。 。通过程序调试各个部分的功能,运用 C 语言编程,完成各功能模块,通过下载软件下载到单片机芯片中,最终实现电压采集功能和扩展功能。关 键 词:单片机 ; ADC0809 芯片 ; C 语言编程 ; 模数转换 第 3 页目 录1 1 绪论绪论.51.11.1 系统概述系统概述.51.21.2 系统设计方案系统设计方案.52 2 硬件电路设计硬件电路设计.
4、62.12.1 单片机电路单片机电路.62.1.12.1.1 单片机电路板单片机电路板.62.1.22.1.2 单片机最小系统单片机最小系统.62.1.32.1.3 单片机的复位电路单片机的复位电路.72.1.42.1.4 键盘电路键盘电路.72.1.52.1.5 显示译码电路显示译码电路.82.2A/D2.2A/D 转换转换.92.2.12.2.1 ADC0809ADC0809 内部结构内部结构.102.2.22.2.2 ADC0809ADC0809 转换原理转换原理.102.2.32.2.3 ADAD 转换电路转换电路.122.2.42.2.4 电路设计电路设计.122.2.52.2.5
5、采集数据和对应电压的转换采集数据和对应电压的转换.122.32.3 芯片芯片 74LS0274LS02 内部电路内部电路.133 3 软件设计软件设计.143.13.1 设计任务设计任务.143.23.2 按键定义及显示标志按键定义及显示标志.143.33.3 程序设计程序设计.143.3.13.3.1 主程序框图主程序框图.143.3.23.3.2 正正常采集常采集.153.3.33.3.3 指定采集指定采集.173.3.53.3.5 报警设置报警设置.174 4 系统调试系统调试.184.14.1 硬件部分硬件部分.184.24.2 软件部分软件部分.185 5 总结总结.19 第 4 页
6、1 1 绪论绪论1.11.1 系统概述系统概述基于单片机的电压数据采集系统通过AD0809采集8路模拟信号,转换成数字信号由单片机处理,利用数码管显示相应的电压值,具有超限声光报警功能。1.21.2 系统设计方案系统设计方案本次实验要求设计电压采集装置,课程设计分设计、制作和调试三个部分。设计选题以单片机为核心,基本内容应包括单片机最小系统、键盘和LED显示电路,以及设计系统涉及的其他电路。系统硬件电路由标准电路和自制电路两部分组成。标准电路包括单片机最小系统、8个LED数码管电路和键盘电路,这部分电路已制成电路板,可根据设计需要进行配置选用。自制电路需自行设计焊接,包含标准电路不具备的其他电
7、路。设计中采用了模数转换器,利用 AD0809 型 8 位 MOS 型 A/D 转换器。可实现 8 路模拟信号的分时采集,片内有 8 路模拟选通开关,以及相应的通道地址锁存用译码电路,实现模拟信号到数字信号的转换。控制部分采用单片机 89C52 来完成。显示部分利用 LED 数码管显示模块,来显示采集到的电压分量。系统设计原理框图系统设计原理框图 第 5 页CPU电路复位电路晶振电路数码管显示电路按键电路LED显示电路 电路框图2 2 硬件电路设计硬件电路设计系统硬件电路由标准电路和自制电路两部分组成。标准电路包括单片机最小系统、8 个 LED 数码管电路和键盘电路,这部分电路已制成电路板,可
8、根据设计需要进行配置选用。自制电路需自行设计焊接,包含标准电路不具备的其他电路。2.12.1 单片机电路单片机电路2.1.12.1.1 单片机电路板单片机电路板2.1.22.1.2 单片机最小系统单片机最小系统 CPU 原理图该原理图包含单片机以及外部连接译码,锁存电路端口,其中的 第 6 页ALE,REST 为高电平时用来启动 ADC0809.P0、P2 口控制数码输出显示,P3口的 P3.3、P3.4、P3.5 控制按键,P1.1P1.3 控制通道选择。晶振采用 12MHZ,该频率有利于提高串口的通信可靠性,同时又保证单片机有较高的运行速度。2.1.32.1.3 单片机的复位电路单片机的复
9、位电路 复位电路当开关断开的时候,VCC 对电容充电,RESET 端为低电平;在开关闭合时电容放电,RESET 端为高电平。2.1.42.1.4 键盘电路键盘电路1 号按键 P3.0-模式切换2 号按键 P3.1-通道、报警限加 第 7 页3 号按键 P3.2-通道、报警限减4 号按键 P3.3- 查询法,接收 ad 转换状态 (不作为按键使用) 中断法,收 ad 结束中断信号2.1.52.1.5 显示译码电路显示译码电路LED 显示电路可提供 8 位 LED 显示;可显示 P1(P3)口状态;也可显示输入按键状态LED 显示电路显示电路采用 6 位共阴极 LED 动态扫描显示,CD4511
10、输出所需字形,74LS138 选择字位。在动态方式中,逐个地循环地点亮各位显示器。小数点 P2.7, bcd 码输出P2.3P2.0,字位选择 cba=P2.6P2.4。如图 7 所示: 第 8 页 数码管显示电路显示译码电路部分由 P0 口或 P2 口输出显示、控制信号,信号包含: 4 位 BCD 码 (DCBA) 1 位小数点控制信号(DOT) 3 位位选控制信号(SEL0、SEL1、SEL2)图 8:显示译码电路 显示译码电路显示译码器采用 CD4511 芯片:输入:BCD 输出:七段码 74LS138 芯片是用来控制显示时候的字位的,由于单片机的管脚是有限的通过使用 138 芯片可以避
11、免少使用些单片机的管脚,当输入 001 时,译码可得 10111111:输入:07 输出:低电平 74LS1382.2A/D2.2A/D 转换转换 第 9 页startstartclockclock输出允许(1,输入信号)转换结束(1,输出)地址锁存,输入信号500KHz1MHz启动(高电平脉冲,输入)2.2.1ADC08092.2.1ADC0809 内部结构内部结构ADC0809 由 8 路模拟开关、地址锁存与译码器、比较器、256 电阻阶梯、树状开关、逐次逼近式寄存器 SAR、控制电路和三态输出锁存器等组成。 ADC0809 结构图2.2.2ADC08092.2.2ADC0809 转换原理
12、转换原理 第 10 页 ADC0809 转换工作时序工作原理: 当单片机端的 P3.3 接低电平时,可以使两个非门打开(1)当模拟量送至某一输入通道后,CPU 将标识该通道编码的三位地址信号经数据线或地址线输入到 ADDC、ADDB、ADDA 引脚上。 (2)地址锁存允许 ALE 锁存地址信号,启动命令 START 启动 A/D 转换。(3)转换开始,EOC 变低电平,转换结束,EOC 变为高电平。EOC 可作为中断请求信号。 (4)转换结束后,可通过执行 IN 指令,设法在输出允许 OE 脚上形成一个正脉冲,打开三态缓冲器把转换的结果输入到 DB,一次 A/D 转换便完成。 第 11 页IN
13、-026msb2-1212-220IN-1272-3192-418IN-2282-582-615IN-312-714lsb2-817IN-42E OC7IN-53AD D-A25IN-64AD D-B24AD D-C23IN-75AL E22ref(-)16E NABL E9STA RT6ref(+)12CL OCK10IC12AD C080912345678J1CO N8VCC1213DBNO T2F 74041122W3WR15.1KVCCCA DP0.1UAD CCLKNE OCCH 012374L S02A45674L S02BAD CCSPD7PD6CH 3CH 4CH 5CH 6C
14、H 71AD CH 0D0D1D2D3D4D5D6D7A0A1A2CH 2CH 1GN DIN0,通道0参考电压:5V转换时钟:接单片机ALE输出经分频后得到启动和地址锁存信号输出使能信号通道地址信号输出数据/WR/RD片选信号:P3.3=0/INT0CC4060_7AD_CS2.2.32.2.3ADAD 转换电路转换电路 2.2.42.2.4 电路设计电路设计硬件资源分配数码管显示电路:用 P2 口:bcd 码输出P2.3P2.0;字位选择 CBA=P2.6P2.4 ;小数点 P2.7键盘电路:3 个键P3(3-5)ADC0809 电压转换电路控制信号:/WR=P3.6 /RD=P3.7 E
15、OC=P3.2 CS= P3.3 (可以不要,使 0809 常选通)数据输出:=P0 转换通道选择地址线:CBA =P1(3-1)2.2.52.2.5 采集数据和对应电压的转换采集数据和对应电压的转换一个 8 位二进制的 AD 采集数据转换为 5 位 10 进制显示数据。对应关系:00HFFH 0.000V5.000V;AD 分辨率为:5/25519.6mV;算法: Y=X19.6=X196/10转换结束:EOC1 第 12 页具体步骤:1、求 YX 196 ,结果为双字节二进制数 2、将 Y 转换为十进制数, 最大是一个 5 位的十进制数 3、去掉十进制数的最低位,相当于除 10 2.32.
16、3 芯片芯片 74LS0274LS02 内部电路内部电路 第 13 页3 3 软件设计软件设计3.13.1 设计任务设计任务3.1.13.1.1基本任务基本任务 进行电压采集并显示。 3.1.23.1.2扩展任务扩展任务 1、指定通道采集。2、报警设置:报警上限、报警下限。 3、将数码管换成LCD1602显示模式通道及电压值。3.23.2按键定义及显示标志按键定义及显示标志系统有三个按键,分别是:模式切换、加、减按钮。模式切换:1 号按键,模式加 1;加:2 号按键,则值加 1;模式 1 下改变通道,模式 3 下改变报警值;减:3 号按键,则值减 1, 模式 1 下改变通道,模式 3 下改变报
17、警值。3.33.3 程序程序设计设计 第 14 页3.3.13.3.1主程序框图主程序框图开始系统初始化显示初始化读键值显示模模式式0 0模式1模式2NN通道0模拟信号采集指定通道模拟信号采集8通道模拟信号自动循环采集NYYY模式3模式4N设定报警上限值设定报警下限值YYN 主程序框图3.3.23.3.2 正常采集正常采集 把采集的电压值转化为十进制,显示在数码管的后四位。显示三位小数。 第 15 页开始系统初始化显示初始化读键值显示光热敏电阻采集信号:void keyscan()if(jian1=0) /AD 采集delays(10);while(jian1=0)t=2;key=1;z=0;
18、 /标志位ad_adda=0; ad_addb=0; ad_addc=0; /送地址信号 if(jian5=0) /光敏电阻delays(10);while(jian5=0) key=2;t=3;ad_adda=0; ad_addb=0; ad_addc=1; /送地址信号z=0; /标志位正常采集程序框图 第 16 页if(jian13=0) /热敏电阻delays(10);while(jian13=0)key=3; t=4;ad_adda=1; ad_addb=0; ad_addc=1; /送地址信号z=0; /标志位huan();3.3.33.3.3 指定采集指定采集指定采集 再按 1数
19、码管最左端显示 1,此时为指定通道按 2:通道1, 按 3:通道1。 开始系统初始化显示初始化读模式显示模式=1指定采集YNk2按下通道+1k3按下通道-1指定采集程序框图 第 17 页3.3.53.3.5 报警设置报警设置再按 1数码管最右端显示 3,此时为报警设置。电压上下线显示在右边第三四位。按 2:电压1, 按 3:电压1 。再按 1又进入正常采集,依次循环 开始系统初始化显示初始化读模式显示模式=3报警设置YNk2按下电压+1k3按下电压-1 报警设置程序框图(使用 visio 软件画程序框图)4 4 系统调试系统调试系统调试包括硬件调试和软件调试两部分,介绍一下我在这两方面遇到一些
20、问题,以及如何解决的。4.14.1 硬件部分硬件部分硬件焊接分为单片机板和扩展版两部分。单片机版已经焊接好,只需焊接扩展版。在焊接扩展版时,我事先没有布局,任意焊接芯片,导致需要很长的导线,布线不规整。我把芯片拆下,通过看其他同学的焊接,查看元件管脚图,自己在草稿纸上画出各个芯片的位置。然后焊接,结果布线比较整 第 18 页齐。4.24.2 软件部分软件部分开始对单片机 C 语言很陌生,看程序很困难,自己编写不出程序。通过老师的讲解,和以前学过的 C 语言的知识,与单片机 C 语言基本相同,有些区别,把其中的区别搞懂了,能够编写简单的程序了。前几个程序通过问同学,反复调试编写了出来,设定电压上
21、下线的程序没有编写出来,通过看同学编写的程序,明白了如何编写。通过程序调试各个部分的功能,完成各功能模块,把程序下载到单片机中,最终实现电压采集功能和扩展功能。5 5 总结总结 第 19 页参考文献:1 胡汉才.单片机原理及其接口技术.3 版.北京:清华大学出版社, 20102 谢自美, 电子线路设计实验测试 (2 版) ,华中科技大学出版社3 单片机实验指导书 第 20 页附录附录附录附录 1 1、单片机板电路原理图、单片机板电路原理图 第 21 页附录附录 2 2、ADC0809ADC0809 与单片机连接图与单片机连接图 第 22 页GND13VCC11IN-026msb2-1212-2
22、20IN-1272-3192-418IN-2282-582-615IN-312-714lsb2-817IN-42EOC7IN-53ADD-A25IN-64ADD-B24ADD-C23IN-75ALE22ref(-)16ENAB LE9S TAR T6ref(+)12C LOC K10U1ADC 0809123U2A74LS 02456GND7VCC14U2B74LS 021122W3R 110K12345678910111213141516JP1HEADER 10X2C IN11C OUT9C OUT10R S T12Q47Q55Q64Q76Q814Q913Q1015Q121Q132Q143V
23、CC16GND8U440601P321P271P361P37W RR D1ALEVC C1P111P121P1312345678P0P00P01P02P03P04P05P06P07VC CVC C12P1VC CGNDIN0IN1IN2IN3IN4IN5IN6IN7VC CVC C8910U2C74LS 02附录附录 3 3、元件清单、元件清单 第 23 页扩展板符号名称型号 参数数量备注滑动变阻器1芯片ADC0809174LS021CD40461双排针若干短路帽若干 热敏电阻 1 光敏电阻 1 200k 电阻 1 10k 电阻 1 单片机主板符号名称型号 参数数量备注KP1/2/3/4/SW
24、RST1微动开关6*6*65SWPIP1拨码开关114P416P428P1芯片座40P11U1AT89S521U245111U374HC1381U5/6芯片74HC042L18发光二极管8红SEG16LED 数码管共阴极6SR18电阻200 欧8 第 24 页R11K1R210K1CRY1晶振12M1C2/3瓷片电容20P2C5独石电容1041C1电解电容22uF/25V1RKP13.3K1RKP21K1RL110K1RLED排阻4701电路板1双排针若干短路帽若干POW1电源接口1附录附录 4 4、 实物图实物图 第 25 页附录附录 5 5、 程序代码程序代码#include 第 26 页
25、#include #define NOP() _nop_() /* 定义空指令 */#define uchar unsigned char#define uint unsigned int#define delayNOP(); _nop_();_nop_();_nop_();_nop_();void delay(uchar x); /x*0.14MSvoid delay1(int ms);void huan();void lcddisp();void AD_change();uchar cdis1 = 0123456789.MWayU:;uchar cdis2 = Thank YOU !;sb
26、it LCD_RW = P21;sbit LCD_RS = P22; sbit LCD_EN = P20;uchar m;sbit ad_eoc=P33;/ad0809 转换结束标志,sbit ad_cs=P35; /ad0809 片选sbit ad_wr=P36; /ad0809 写入信号sbit ad_rd=P37; /ad0809 读出信号 sbit ad_adda=P27;/ADDAsbit ad_addb=P26; /ADDBsbit ad_addc=P25;/ADDCsbit jian1=P30;sbit jian5=P31;sbit jian13=P32;uchar key,t,
27、z=1,shuju,ad_data,disbuf18;uint ad_dianya;void timer()TMOD=0X11;TH1=(65536-500)/256;TL1=(65536-500)%256;ET1=1;TR1=0;EA=1;void delays(uint i) 第 27 页 uint j,k; for(j=i;j0;j-) for(k=110;k0;k-);void keyscan()if(jian1=0) /AD 采集delays(10);while(jian1=0)t=2;key=1;z=0; /标志位ad_adda=0; ad_addb=0; ad_addc=0; /
28、送地址信号 if(jian5=0) /光敏电阻delays(10);while(jian5=0) key=2;t=3;ad_adda=0; ad_addb=0; ad_addc=1; /送地址信号z=0; /标志位if(jian13=0) /热敏电阻delays(10);while(jian13=0)key=3; t=4;ad_adda=1; ad_addb=0; ad_addc=1; /送地址信号z=0; /标志位 第 28 页huan();void huan()disbuf0=12;disbuf1=17;disbuf2=t;disbuf3=0;disbuf4=13;disbuf5=14;d
29、isbuf6=15;disbuf7=17; disbuf8=key; disbuf9=0;disbuf10=16;disbuf11=17; disbuf12=ad_dianya/1000+1;disbuf13=11;disbuf14=ad_dianya%1000/100+1;disbuf15=ad_dianya%100/10+1;disbuf16=ad_dianya%10+1;void AD_change()P1=0 xff; ad_cs=0; ad_rd=1; /选中 ad,输出使能关while(z=1)keyscan();ad_wr =1;ad_wr =0; ad_wr =1;/启动 AD
30、while(ad_eoc=0); /查询转换结束ad_rd=0; /输出使能打开,准备读取数据ad_rd=0;ad_rd=0;ad_rd=0;ad_data=P1; /从片外读数据,读数据ad_rd=1; /输出使能关ad_dianya=ad_data*19.60784; 第 29 页bit lcd_busy() bit result; LCD_RS = 0; LCD_RW = 1; LCD_EN = 1; delayNOP(); result = (bit)(P0&0 x80); LCD_EN = 0; return(result); void lcd_wcmd(uchar cmd) while(lcd_busy(); LCD_RS = 0; LCD_RW = 0; LCD_EN =
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 计算机软件考试数理逻辑与试题及答案
- 知识产权法与科技创新的结合试题及答案
- 设定可衡量的工作指标计划
- 网络管理员必背考点试题及答案
- 人力资源在企业转型中的作用计划
- 前台文员的安全防范意识培养计划
- 云南省昆明市黄冈实验学校2025届七下数学期末联考试题含解析
- 品牌推新策略的实施与评估计划
- 中学拓宽国际视野教育计划
- 网络管理员岗位职责与考试要点的试题及答案
- (四调)武汉市2025届高中毕业生四月调研考试 数学试卷(含答案详解)
- 细胞培养实验指导4
- EN779-2012一般通风过滤器——过滤性能测定(中文版)
- 水中氯离子测定方法
- 安全生产责任协议书
- 美国联邦民事诉讼规则
- 西门子S7-200自动售货机课程设计(共16页)
- TR518_dos使用手册
- 外贸中英文商业发票
- 工程造价咨询费黑价联[2013]39号
- 商业发票样本(Commercial Invoice)
评论
0/150
提交评论