简易数字电压表设计课程设计说明书(共15页)_第1页
简易数字电压表设计课程设计说明书(共15页)_第2页
简易数字电压表设计课程设计说明书(共15页)_第3页
简易数字电压表设计课程设计说明书(共15页)_第4页
简易数字电压表设计课程设计说明书(共15页)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、精选优质文档-倾情为你奉上成绩 南京工程学院课程设计说明书(论文)题 目 简易数字电压表设计 课 程 名 称 微机原理及接口技术 院(系、部、中心)XXXXX 专 业 XXXX 班 级 XXXXX 学 生 姓 名 XXXX 学 号 XXXXX 设 计 地 点 微机原理实验中心 指 导 教 师 XXXX 设计起止时间: 2009年12月14日至2009年12月18日目 录1功能描述采用8086、ADC0809逐次逼近式A/D转换器,设计一个电压检测电路并编制相应的程序,使其能将输入的0-5V模拟电压量转换成数字量并在LED/LCD屏上显示. 完成简易数字电压表的设计。2总体设计本次课程设计使用伟

2、福6000实验系统,使用了8086、模数转换芯片ADC0809、中断控制器8259A、键盘、6位数码管以及点阵122x32液晶等。设计应用的原理是利用8086作为控制单元,实现AD采样的启动、键盘的扫描以及数码管或液晶的显示。采用ADC0809逐次逼近式A/D转换器设计一个电压检测电路并编制相应的程序,使其能将输入的0-5V模拟电压量转换成数字量并在LED/LCD屏上显示;ADC0809每采集一次大约需要100S,设计程序既可采用查询方式读入A/D转换结果,也可采用中断方式读入结果;模拟电压量由实验箱上的电位器提供,电压范围0-5V,经ADC0809转换得到的数字量范围为0-255;采用键盘扫

3、描实现判断有无按键和读取键值的功能。通过按键来启动AD转换和清零的功能。 六位数码管的显示采用动态显示。21系统硬件电路设计用中断、键盘、液晶显示0-5V电压1.键盘部分电路2.中断部分电路3.液晶显示电路4. 模数转换电路22软件流程图设计1、A/D转换模块流程图如图一图一2、数码管模块流程图图二3、中断模块流程图如图三图三4、键盘模块流程图如图四图四5、主程序和键盘扫描子程序如图五图五3测试结果与分析编制好汇编程序并下载到硬件电路中运行能达到预期目标。当按下“1”键,启动AD转换,旋转电位器,可看到LED/LCD显示的数值在不断变化,变化范围是0.00V到5.00V。当按下“0”键时,数据

4、清零,旋转电位器,显示结果不发生变化。当按下其他键时,显示结果不发生变化。4课程设计总结以前从没有学过关于汇编语言的知识,起初学起来感觉很有难度。当知道要做课程设计的时候心里面感觉有些害怕和担心, 担心自己不会或者做不好。但是当真的要做的时候也只好进自己作大的努力去做, 做到自己最好的。通过本次课程设计,我能更加深刻地掌握8086的编程、中断控制器、模数转换及LED/LCD显示原理,用实践验证了所学理论的正确性,清楚学习过程中的不足,为今后进一步的学习积累经验。 在课程设计的过程中遇到了不少问题,并且大部分能够得到解决,根据问题分析设计过程中存在的缺陷,加以改善后,能够加深印象。 如LED动态

5、显示,发现的问题是数码管闪烁并且比较暗,观察程序,发现显示1位数码后的延时时间比较短,适当延长时间后问题得到解决。 增加小数点后,第1位数值有时不能正确显示,查找原因发现,书中给出数码管段码的最高位是0,所以小数点不显示,将段码值和80H相或操作问题得到解决。 当不能明显发现程序的问题所在时,我尝试利用单步执行程序的方法,大多数情况下能够解决问题。另外,编写条理清晰、模块分明的程序有利于阅读和调试。还有一个收获就是:课程设计前务必提前准备好,明确这样可节省时间,提高效率。参考文献:1.戴梅萼、史嘉权.微型计算机基础及应用(第四版).北京:清华大学出版社,2008.32.陆红伟.微机原理实验与课

6、程设计指导书.北京:中国电力出版社,2006附录:(源程序清单) 专心-专注-专业CS0809 EQU 09000HOUTBIT EQU 0A002HOUTSEG EQU 0A004HIN_KEY EQU 0A001HICW1 EQU BICW2 EQU BICW4 EQU BOCW1 EQU BCS8259A EQU 0B000HCS8259B EQU 0B001HCWADD1 EQU 0C000HDWADD1 EQU 0C001HCRADD1 EQU 0C002HDRADD1 EQU 0C003HCWADD2 EQU 0C004HDWADD2 EQU 0C005HCRADD2 EQU 0C

7、006HDRADD2 EQU 0C007HPD1 EQU 3DHDATA SEGMENTVOL DB 3 DUP(0)KEY DB 1 DUP(0)FONT DW 0000HCOLUMN DB 0HPAGE_ DB 0HCODE_ DB 0HCOUNT DB 0HCOUNT1 DB 0HDIR DB 0HR4 DB 0HR3 DB 0HCOL2 DB 0HCTEMP DB 0HCOM DB 0HDAT DB 0HKEYTABLE: DB 16H,15H,14H,0FFH DB 13H,12H,11H,10H DB 0DH,0CH,0BH,0AH DB 0EH,03H,06H,09H DB 0F

8、H,02H,05H,08H DB 00H,01H,04H,07HWORDTABLE:DB 00H,00H,0F8H,88H,88H,88H,88H,0FFH,88H,88H,88H,88H,0F8H,00H,00H,00H DB 00H,00H,1FH,08H,08H,08H,08H,7FH,88H,88H,88H,88H,9FH,80H,0F0H,00H ;"电",0 DB 00H,00H,0FEH,02H,82H,82H,82H,82H,0FAH,82H,82H,82H,82H,82H,02H,00H DB 80H,60H,1FH,40H,40H,40H,40H,40H

9、,7FH,40H,40H,44H,58H,40H,40H,00H ;"压",1NUM: DB 00H,0E0H,10H,08H,08H,10H,0E0H,00H,00H,0FH,10H,20H,20H,10H,0FH,00H ;"0",0 DB 00H,10H,10H,0F8H,00H,00H,00H,00H,00H,20H,20H,3FH,20H,20H,00H,00H ;"1",1 DB 00H,70H,08H,08H,08H,88H,70H,00H,00H,30H,28H,24H,22H,21H,30H,00H ;"2

10、",2 DB 00H,30H,08H,88H,88H,48H,30H,00H,00H,18H,20H,20H,20H,11H,0EH,00H ;"3",3 DB 00H,00H,0C0H,20H,10H,0F8H,00H,00H,00H,07H,04H,24H,24H,3FH,24H,00H ;"4",4 DB 00H,0F8H,08H,88H,88H,08H,08H,00H,00H,19H,21H,20H,20H,11H,0EH,00H ;"5",5 DB 00H,0E0H,10H,88H,88H,18H,00H,00H,

11、00H,0FH,11H,20H,20H,11H,0EH,00H ;"6",6 DB 00H,38H,08H,08H,0C8H,38H,08H,00H,00H,00H,00H,3FH,00H,00H,00H,00H ;"7",7 DB 00H,70H,88H,08H,08H,88H,70H,00H,00H,1CH,22H,21H,21H,22H,1CH,00H ;"8",8 DB 00H,0E0H,10H,08H,08H,10H,0E0H,00H,00H,00H,31H,22H,22H,11H,0FH,00H ;"9"

12、;,9 DB 00H,00H,00H,0C0H,0C0H,00H,00H,00H,00H,00H,00H,30H,30H,00H,00H,00H ;":",10 DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,30H,30H,00H,00H,00H,00H,00H ;".",11 DB 08H,78H,88H,00H,00H,0C8H,38H,08H,00H,00H,07H,38H,0EH,01H,00H,00H ;"V",12DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS

13、:DATAAD0809 PROC NEARADAG: MOV AL,0 MOV DX,CS0809 OUT DX,AL MOV CX,40H LOOP $ RETAD0809 ENDP;*中断及8259初始化IENTER PROC NEAR PUSH AX PUSH DX MOV DX,CS0809 IN AL,DX MOV AH,0 MOV BX,0 MOV BX,OFFSET VOL MOV CL,51 DIV CL MOV BX,AL INC BX MOV DX,0 MOV AL,AH MOV AH,0 MOV CL,10 MUL CL MOV CL,51 DIV CL MOV BX,A

14、L INC BX MOV DX,0 MOV AL,AH MOV AH,0 MOV CL,10 MUL CL MOV CL,51 DIV CL MOV BX,AL MOV DX,CS8259A MOV AL,20H OUT DX,AL POP DX POP AX IRETIENTER ENDPIINIT PROC NEAR CLI MOV AX,0 MOV DS,AX MOV BX,4*ICW2 MOV AX,CODE SHL AX,4 ADD AX,OFFSET IENTER MOV BX,AX MOV AX,0 INC BX INC BX MOV BX,AX MOV DX,CS8259A M

15、OV AL,ICW1 OUT DX,AL MOV DX,CS8259B MOV AL,ICW2 OUT DX,AL MOV AL,ICW4 OUT DX,AL MOV AL,OCW1 OUT DX,AL RETIINIT ENDP;*延时及扫描键盘DELAY PROC NEAR PUSH AX PUSH CX MOV AL,0 MOV CX,AX LOOP $ POP CX POP AX RETDELAY ENDPTESTKEY PROC NEAR MOV DX,OUTBIT MOV AL,0 OUT DX,AL MOV DX,IN_KEY IN AL,DX NOT AL AND AL,0FH

16、 RETTESTKEY ENDPGETKEY PROC NEAR MOV CH,B MOV CL,6KLOOP: MOV DX,OUTBIT MOV AL,CH NOT AL OUT DX,AL SHR CH,1 MOV DX,IN_KEY IN AL,DX NOT AL AND AL,0FH JNE GOON_ DEC CL JNZ KLOOP MOV CL,0FFH JMP EXIT1GOON_: DEC CL SHL CL,2 MOV CH,4LOOPC: TEST AL,1 JNZ EXIT1 SHR AL,1 INC CL DEC CH JNZ LOOPCEXIT1: MOV DX,

17、OUTBIT MOV AL,0 OUT DX,AL MOV CH,0 MOV BX,OFFSET KEYTABLE ADD BX,CX MOV AL,BX MOV BL,ALWAITRELEASE:MOV DX,OUTBIT MOV AL,0 OUT DX,AL MOV AH,10 CALL DELAY CALL TESTKEY JNE WAITRELEASE MOV AL,BL RETGETKEY ENDP;*液晶显示部分INITLED PROC NEAR MOV AH,0E2H CALL PR0 CALL PR3 MOV AH,0A4H CALL PR0 CALL PR3 MOV AH,0

18、A9H CALL PR0 CALL PR3 MOV AH,0A0H CALL PR0 CALL PR3 MOV AH,0C0H CALL PR0 CALL PR3 MOV AH,0AFH CALL PR0 CALL PR3 RETINITLED ENDPCLEAR PROC NEAR MOV R4,00HCLEAR1: MOV AL,R4 OR AL,0B8H MOV AH,AL CALL PR0 CALL PR3 MOV AH,00H CALL PR0 CALL PR3 MOV R3,50HCLEAR2: MOV DAT,00H CALL PR1 CALL PR4 DEC R3 JNZ CL

19、EAR2 INC R4 MOV AL,R4 CMP AL,04H JNE CLEAR1 RETCLEAR ENDPPR0 PROC NEAR MOV DX,CRADD1PR01: IN AL,DX TEST AL,80H JNZ PR01 MOV DX,CWADD1 MOV AL,AH OUT DX,AL RETPR0 ENDPPR1 PROC NEAR MOV DX,CRADD1PR11: IN AL,DX TEST AL,80H JNZ PR11 MOV DX,DWADD1 MOV AL,DAT OUT DX,AL RETPR1 ENDPPR3 PROC NEAR MOV DX,CRADD

20、2PR31: IN AL,DX TEST AL,80H JNZ PR31 MOV DX,CWADD2 MOV AL,AH OUT DX,AL RETPR3 ENDPPR4 PROC NEAR MOV DX,CRADD2PR41: IN AL,DX TEST AL,80H JNZ PR41 MOV DX,DWADD2 MOV AL,DAT OUT DX,AL RETPR4 ENDPDISPLAYNUM PROC NEAR PUSH AX MOV DX,OFFSET NUM MOV BX,OFFSET NUM MOV AL,CODE_ MOV AH,0 MOV CL,4 SHL AX,CL ADD

21、 AX,DX MOV BX,AX MOV AL,COLUMN MOV COL2,AL MOV CODE_, 00H MOV COUNT1, 02HCCW_3: MOV COUNT,08H MOV AL,PAGE_ AND AL,03H OR AL,0B8H MOV AH,AL CALL PR3 MOV AL,COL2 MOV COLUMN,AL MOV AH,AL CALL PR3CCW_4: MOV AL,BX MOV DAT,AL CALL PR4 INC CODE_ INC BX DEC COUNT JNZ CCW_4 MOV AL,PAGE_ INC AL MOV PAGE_ ,AL

22、DEC COUNT1 JNZ CCW_3 POP AX RETDISPLAYNUM ENDPDISPLAYWORD PROC NEAR MOV DX,OFFSET WORDTABLE MOV BX,OFFSET WORDTABLE MOV AL,CODE_ MOV AH,0 MOV CL,5 SHL AX,CL ADD AX,DX MOV BX,AX MOV AL,COLUMN MOV COL2,AL MOV CODE_, 00H MOV COUNT1, 02HCCW_1: MOV COUNT,10H MOV AL,PAGE_ AND AL,03H OR AL,0B8H MOV AH,AL C

23、ALL PR0 MOV AL,COL2 MOV COLUMN,AL MOV AH,AL CALL PR0CCW_2: MOV AL,BX MOV DAT,AL CALL PR1 INC CODE_ INC BX DEC COUNT JNZ CCW_2 MOV AL,PAGE_ INC AL MOV PAGE_ ,AL DEC COUNT1 JNZ CCW_1 RETDISPLAYWORD ENDPDISPLAY PROC NEAR MOV CTEMP,0 MOV PAGE_,02H MOV AL,PAGE_ MOV KEY,AL MOV BX,OFFSET VOL MOV AL,BX MOV CODE_,AL MOV COLUMN,8 PUSH BX CALL DISPLAYNUM POP BX INC BX MOV AL,BX MOV CODE_,AL MOV AL,CTEMP ADD AL,24 MOV COLUMN,AL MOV AL,KEY MOV PAGE_,AL PUSH BX CALL DISPLAYNUM POP BX INC BX MOV AL,BX MOV

温馨提示

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

评论

0/150

提交评论