资源描述
燕 山 大 学 课 程 设 计 说 明 书
燕山大学
课 程 设 计 说 明 书
题目: 模拟电压测量与显示
电气工程学院《课程设计》任务书
院(系):电气工程学院 基层教学单位:仪器科学与工程系
学号
学生姓名
(专业)班级
设计题目
模拟电压测量与显示
设
计
技
术
参
数
利用实验板上的电位器提供模拟量输入,ADC0809做A/D转换器,将模拟量转换成二进制数字量,输入单片机,编制程序,将二进制数字量转换为响应的模拟电压输出显示,并超限报警。
设
计
要
求
设计4位数码管显示电路和超限报警电路;编制相应的程序。
工作量
设计的内容满足课程设计的教学目的和要求,设计题目的难度和工作量适合学生的知识和能力状况,工作量饱满。
工作计划
查阅资料进行设计准备,设计硬件电路,编制程序,验证设计,撰写任务书。
参考资料
单片微型计算机接口技术及其应用 张淑清 国防工业出版社
单片机原理及应用 张淑清 国防工业出版社
单片机应用技术汇编
指导教
师签字
基层教学单位主任签字
说明:此表一式四份,系、指导教师、学生各一份,报送院教务科一份。
2013年7月1日
目 录
摘要 1
第一章 总体设计 2
1.1 概述 2
1.2 硬件电路图及工作过程简介 3
1.3程序设计 4
1.4小结 4
第二章 硬件设计 5
2.1 ADC0809 5
2.2 80C51 7
2.3 LED显示模块 7
第三章 软件设计 9
3.1 程序流程图 10
3.2 程序代码 12
3.3 总结 12
第四章 实验箱连线和实验结果 13
4.1 实验箱连线 12
4.2 实验结果 12
第五章 收获与总结 17
参考文献 20
摘要
本课题介绍了一种基于单片机的模拟电压测量的设计。该设计根据伟福LAB2000P实验箱设计,并在实验箱上实现。本设计主要由三个模块组成:A/D转换模块,数据处理模块及显示模块。A/D转换主要由芯片ADC0809来完成,它负责把采集到的模拟量转换为相应的数字量在传送到数据处理模块。数据处理则由芯片80C51来完成,其负责把ADC0809传送来的数字量经过一定的数据处理,产生相应的显示码送到显示模块进行显示;此外,它还控制着ADC0809芯片工作。
该系统的测量电路简单,所用的元件较少,成本低,且测量精度和可靠性较高。此系统可以测量0-5V的1路模拟直流输入电压值,并通过一个四位一体的7段数码管显示出来,当测量值超过设定值时产生报警。
关键词:单片机;模拟电压测量;A/D转换; LAB2000P;80C51;ADC0809
第一章 总体设计
1.1 概述
一个完备的单片机应用系统包括硬件和软件两大部分,其中硬件部分包括扩展的存储器、键盘、显示、前向通道、后向通道、控制接口电路以及相关芯片的外围电路等,软件的功能就是指挥单片机按预定的功能要求进行操作的程序。一个单片机系统只要系统的软、硬件紧密配合,协调一致,这样才是高性能的单片机系统。
本课题所设计的模拟电压测量系统主要包括两部分:硬件电路及软件程序。而硬件电路采用 INTEL公司的80C51作为主处理器,系统主要由信号采集、 转换、A/D 数据处理输出、显示等几个功能模块组成。各部分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用汇编语言编程,利用wave6000软件对其编译和仿真。系统框图如图1:
模拟电压
80C51
单
片
机
ADC0809
转换
数据显示
图1 .整体框图
被测直流电压由 A/D 转换单元采集后被量化,再由单片机对 A/D 转换的结果进行标度变换,得到被测电压的数值,通过单片机转换结果、把结果输出给显示驱动单元,驱动数码管显示。
1.2 硬件电路图及工作过程简介
数字化是将连续模拟的电压量经 A/D 转化后变为不连续的离散的数字量并加以显示。在设计过程中采用分模块设计,按照设计思路把电路分 A/D 转换、数据处理输出、驱动、显示四个单元,分别设计。 A/D 转换器选用的是八位模/数转换器 ADC0809。其次,计算机中的数字都是十六进制数,而我们习惯于十进制数的读写,因此,在软件设计中则要把十六进制数转换成十进制数。在显示的时候也是如此。本装置的输出用四位 LED 显示,因此在软件设计中还要解决数字输出与 LED 的接口问题。硬件则需要将输出线接到八段数码管上。 数值显示采用八段数码管,由单片机以动态扫描方式驱动。 可以看出 ADC0809 通过 IN0 采集电压信号并送给单片机,单片机将采集来的信号进行一定的处理然后通过串口扩展的共阴极 LED 数码管显示采集的电压值。 数码管显示是采用动态显示的原理, 要显示的数码通过单片机的数据总线发送给74HC374,而四个数码管的公共端分别接 74HC374的 Q1-Q7 接口, 因此要使哪个数码管显示就把相应的公共端口置零即可。比如: “1” 数字的字型码通过串口发送出来并经过74HC374译码加到了四个数码管上,如果其中一个引脚为“0”那么对应的数码管显示数 字“1” 。在此电路中电压值的四个数字分别通过串口依次的送出,对应的公共端也依次被置“0” ,由于两次置“0”的时间间隔很短,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。因此给人的感 觉就是四个数码管同时的显示出电压值四个数字。 ADC0809 的 REF(-)接地,REF(+)接电源+5V,因此采集电压的范围是 0~ 5V,A/D 转换输出的结果 D0~D7 为 8 位二进制数。转换输出的结果在 0~255 之 间分别对应着 0~+5V 之间的 256 个电压值,因此单片机必须把 A/D 转换输出的 结果转换成可以显示的电压值。
1.3 软件程序设计
开机后调用 A/D 转换子程序启动 AD 转换器,单片机等待查询转换结束信号,如果有信号则通过并行口读取转换数据并存储,再按上面的方法通过串行口把数据传输出,经译码在数码管显示。具体方法和程序见程序设计部分。
1.4 小结
在电路设计和软件设计中都采用了分模块设计, 这种设计方法清晰的电路的功能,为设计和以后的调试和维修带来了极大的方便。特别是在软件设计中,这种方法曾强了程序的可移植性,为以后的功能扩展奠定了基础。
第二章 硬件设计
2.1 ADC0809
图2.0809引脚图
ADC0809是采样分辨率为8位的、以逐次逼近原理进行模—数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图2所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近ADC0809芯片有28条引脚,采用双列直插式封装。
ADC0809的工作过程:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通位模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 A/D转后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时输出三态门打开,转换结果的数字量输出到数据总线上。
图3.0809实验箱接线图
2.2 80C51
图4.80C51引脚图
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL
门电流。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流,
P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
2.3 LED显示模块
本设计才懂动态扫描技术。数码管动态显示介面是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp "的同名端连在一起,另外为每个数码管的公共极COM增加位元选通控制电路,位元选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位元选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位元就显示出字形,没有选通的数码管就不会亮。
透过分时轮流控制各个LED数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位元数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极体的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示资料,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O口,而且功耗更低。
图5.LED实验箱内部接线图
图6.LED实验仪接线图
LAB2000P实验仪提供了6位8段码LED显示电路,只要按地址输出相应的数据,就可以实现对显示器的控制。显示共有6位,用动态方式显示。8位段码、6位位码是由两片74LS374输出。位码经MC1413或ULN2003倒相驱动后,选择相应显示位。
实验仪中8位段码输出地址为0x004H,位码输出地址为0X002H。此处X是由KEY/LED CS决定,参见地址译码。做键盘和LED 实验时,需将KEY/LED CS接到相应的地址译码上,以便用相应的地址来访问。当KEY/LED CS接到CS0上,则段码地址为08004H,位码地址为08002H。
第三章 程序设计
3.1程序流程图
开始
初始化
启动A/D转换
读取采样值
数据处理
送LED显示
图7.程序流程图
3.2程序代码
ADADDRESS EQU 0A000H
OUTBIT EQU 08002H
OUTSEG EQU 08004H
LEDBUF EQU 60H
DELAYCX EQU 75H
ADRESULT EQU 76H
ORG 0000H
LJMP START
ADSTART: MOV DPTR,#ADADDRESS
MOV A,#0H
MOVX @DPTR,A
MOV A,#40H
DJNZ ACC,$
MOVX A,@DPTR
MOV ADRESULT,A
RET
LEDMAP: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H
DELAY:MOV R7,#0
DELAYLOOP: DJNZ R7,DELAYLOOP
DJNZ ACC,DELAYLOOP
RET
SEARCHLEDMAP: ANL A, #0FH
MOV DPTR, #LEDMAP
MOVC A, @A+DPTR
RET
DISPLAYLED: MOV R0, #LEDBUF
MOV R1, #4
MOV R2, #00001000B
LOOP: MOV DPTR, #OUTBIT
MOV A, #0
MOVX @DPTR, A
MOV A, @R0
MOV DPTR, #OUTSEG
MOVX @DPTR,A
MOV DPTR, #OUTBIT
MOV A, R2
MOVX @DPTR, A
MOV A, #01
CALL DELAY
MOV A, R2
RR A
MOV R2, A
INC R0
DJNZ R1, LOOP
MOV DPTR, #OUTBIT
MOV A, #0
MOVX @DPTR, A
RET
START: CLR P1.0
NOP
CALL ADSTART
MOV A, ADRESULT
MOV B,#05H
MUL AB
PUSH A
MOV A,B
MOV B,#0AH
DIV AB
CALL SEARCHLEDMAP
MOV LEDBUF+0,A
MOV A,B
CALL SEARCHLEDMAP
ORL A,#80H
MOV LEDBUF+1,A
POP A
MOV B,#0AH
MUL AB
PUSH A
MOV A,B
CALL SEARCHLEDMAP
MOV LEDBUF+2,A
POP A
MOV B,#0AH
MUL AB
MOV A,B
CALL SEARCHLEDMAP
MOV LEDBUF+3,A
MOV A,#04H
CLR PSW.7
SUBB A,LEDBUF+1
JNZ DISPLAYAGAIN
WAN: SETB P1.0
DISPLAYAGAIN: CALL DISPLAYLED;
DJNZ DELAYCX,DISPLAYAGAIN
NOP
SJMP START
END
第四章 实验箱连线和实验结果
4.1 实验箱连线图
连线
连接孔1
连接孔2
注释
1
CS0
KEY/LED CS
LED位选段选
2
CS2
AD_CS
AD转换器地址
3
电位器输出
IN0
输入模拟电压
4
P1.2
L1
超限报警
4.2实验结果
软件编译并全速运行后,则LED数码管上开始显示数字,旋转电位器,LED上显示的数字在0V~4.98V发生改变。LED的显示结果和直接用数字电压表测试模拟量输入所得结果几乎一致,误差完全在合理的范围之内。
第五章 收获与总结
经过一周的设计,终于完成了设计,遗憾的是超限报警部分没能在实验箱上调试出来。由于仪器误差,LED显示最大值只能是4.98V,离标准最大值5.0V已经不远,达到预期目的,设计成功。
回想本次课程设计,是在老师的指导和同学的帮助下共同完成的。在完成过程中遇到了许多问题,但在不断努力下,发现并解决了问题,使实验取得了成功。通过这次试验设计,在利用试验箱上多个功能模块共同实现采集模拟电压并把数据转换成数字在LED数码管上显示。熟悉了LAB2000P试验箱上各功能模块的结合应用。本设计用到了A/D转换程序、LED数码管显示程序、调用延时程序等等。应用不同功能的汇编程序的相结合,熟悉了主程序和各个子程序的功能调用。实现了不同功能程序的结合应用。在软件程序的编写过程中遇到许多问题,使得程序编译出现很多错误,后来发现并改正了程序。通过这次实验设计我们发现在做设计的时候有时候同学的帮助起着很大的作用。并且由于对编程不熟悉,所以在编程上有些费劲。由于水平有限,我们认为系统还有需要改进的地方。所以我们要更加努力的学习编程,提高自己的编程水平,深入的学习和思考问题。
参考文献
[1]张淑清.单片微型计算机接口技术及其应用[M].国防工业出版社
[2]张淑清.单片机原理及应用[M].国防工业出版社
[3]郑晖晖.单片机应用技术汇编语言[M].中国劳动社会保障出版社
[4]凌志浩.智能仪表原理与设计技术[M].华东理工大学出版社
第 15 页
燕山大学课程设计评审意见表
指导教师评语:
①该生学习态度 (认真 较认真 不认真)
②该生迟到、早退现象 (有 无)
③该生依赖他人进行设计情况 (有 无)
平时成绩: 指导教师签字:
2013 年 7 月 7 日
图面及其它成绩:
答辩小组评语:
①设计巧妙,实现设计要求,并有所创新。
②设计合理,实现设计要求。
③实现了大部分设计要求。
④没有完成设计要求,或者只实现了一小部分的设计要求。
答辩成绩: 组长签字:
2013 年 7 月 7 日
课程设计综合成绩:
答辩小组成员签字:
2013年 7 月 7日
第 17 页
展开阅读全文