- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理课程设计
微机原理课程设计
PAGE
微机原理课程设计
微机原理课程设计
—数据采集系统(查询法)
一、课设目的
进一步掌握微机原理只是,了解危机在实时采集过程中的应用,学习、掌握编程和程序调试方法。
二、课设内容
用查询法,将ADC 0809通道0外接0~5V电压,转换成数字量后,在七段LED数码管上,以小数点后两位(几十毫伏)的精度,显示其模拟电压的十进值;0809~道0的数字量以线性控制方式送DAC0832输出,当通道O的电压为5V时,0832的OUT为0v,当通道O的电压为0时,0832的OUT为2.5V;此模拟电压再送到ADC0809通道1,转换后的数字量在CRT上以十六进制显示;通道0的数字量经74LS574输出到八位LED上,且以一定的要求,点亮LED指示灯。调整电位器,用示波器或三用表观察0832的变化,观察七段LED数码管数值的变化,观察LED灯的变化,
ADC 0809的CLK脉冲,由定时器8254的OUT0提供;ADC 0809的EOC信号,用8255的PC0检测;74LS574外接的LED灯变化如下:若电压值小于0.5V,则最低位(DO)’LED灯亮,若电压值大于4.5V,则最高位LED灯亮,若电压值在0.5V~4.5V,则八位LED灯由低向高变化亮,且高位LED灯亮时低位灯全亮。
要有较好的人机对话界面;控制程序的运行。
三、硬件设计
1、电原理框图
见附件1
2、电原理框图工作过程的简要说明
(1)、ADC 0809的INO采集电位器0—5V电压,INl采集0832输出的模拟量。
(2)、DAC 0832将ADC 0809的INO数字量后重新转换成模拟量输出。
(3)、8255用于检测ADC 0809转换是否,为七段LED数码管显示提供显示驱动信息。
(4)、七段LED数码管显示ADC 0809的INO的值。
(5)、74LS574驱动八位发光二极管,使它们按要求点亮:来指示当前采样值的范围。
(6)、8254提供ADC 0809的采样时钟脉冲。
(7)、74LSl38译码器为各芯片提供地址信息。
四、软件设计
首先进行程序初始化显示提示信息,判断是否有键按下,按下1则继续往下执行,按下2则退出。首先对8254进行初始化选择工作方式及赋初值,然后启动0809的IN0,接着初始化8255,并检测PA7的状态检测转换是否,否继续检测直至EOC为1,然后读采样值并保存,将其经线性转换后送0832,启动0809的IN1,然后重新对8255初始化及检测PA7的EOC状态端口,直至为1,读IN1的采样值并保存,将读出值经线性转换后送往CRT显示,然后将保存的INO采样值进行量纲转换,调用数码显示子程序。然后对保存的IN0采样值进行比较,若小于,74574只驱动最低位,最低位亮,若大于则只有最高位亮,在中间值依次点亮一位,如大于小于则最低两位亮,在至间低三位亮,在 至间低三位亮等。在和间选择六个值依次控制选择点亮LED灯.最后判断主键盘是否有键按下,有结束,无重新回到启动0809的IN0程序段。最后列写数码管显示的子程序、CRT显示子程序、延时子程序。
1、主程序流图
见附录2
2、程序
DATA SEGMENT
MES1 DB PRESS 1 TO BEGIN!,0DH,0AH
DB PRESS 2 TO QUIT!,0DH,0AH,0DH,0AH,$
MES2 DB IN1 DATA= ,$
MES3 DB 0DH,0AH,$
K0 DB
K1 DB
S DB 3 DUP()
DCTBL1 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,3EH
DCTBL2 DB 0BFH,86H,0DBH,0CFH,0E6H,0EDH,0FDH,87H,0FFH,0DFH
S1 DB 01H
S2 DB 80H
DATA ENDS
STACK1 SEGMENT PARA STACK STACK
DB 256 DUP()
STACK1 ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
LEA DX,MES1
MOV AH,9
INT 21H
LOP1: MOV DL,0FFH
MOV AH,6
INT 21H
JZ LOP1
CMP AL,1
JZ DA
CMP AL,2
JZ EXIT1
文档评论(0)