微机原理温度显示系统设计文档格式.docx
《微机原理温度显示系统设计文档格式.docx》由会员分享,可在线阅读,更多相关《微机原理温度显示系统设计文档格式.docx(18页珍藏版)》请在冰点文库上搜索。
START1:
MOVDX,640H
OUTDX,AX
CALLDALLY
INAL,DX
MOVVALUE,AL
MOVAH,0
TESTBT,1
JNZS1
ANDAL,0FH
MOVBX,0EH
JMPS2
S1:
RORAX,1
MOVBX,0DH
S2:
MOVSI,OFFSETTNUM
ANDAX,0FH
ADDSI,AX
MOVAL,[SI]
MOVDX,602H
OUTDX,AL
MOVAL,BL
MOVDX,600H
INCBT
JMPSTART1
DALLY:
PUSHCX
PUSHAX
MOVCX,1H
A5:
MOVAX,0800H
A6:
DECAX
JNZA6
LOOPA5
POPAX
POPCX
RET
CODEENDS
ENDSTART
三设计图
3.1设计系统框图
温度显示系统总框图,如图2.1所示。
图3.1系统框图
3.2温度显示硬件接线图
在实验箱上按照温度显示硬件接线图将传输线对应连接起来,芯片82555中PB0至PB7口与LED数码管的A至Dp相连,是为了实现七段数码管的段选,PA0至PA2与LED的X6至X4相连,是为了实现位选,X4为百位的显示、X5为十位的显示、X6为个位的显示,如图2.2所示。
图3.2温度显示接线图
3.3设计流程图
总体设计程序流程图,如图3.3所示。
图2.3总体设计流程图
四元器件功能简介
4.1可编程并行通信接口芯片8255
4.1.18255简介
8255是一种通用的可编程并行通信接口芯片,能够方便的在8088/8086微机系统中实现并行输入/输出,通过变成选择多种功能方式。
由于此次实验设计是通过在实验箱上的小键盘来输入数据,而对这一数据的采集与判断就要利用该芯片来完成。
利用其三个可独立的输入输出端口不仅可以判断出键盘的按键位置还可以输入其对应的高低电平来使对应的LED闪亮。
可以说此芯片也是这次设计中很重要的一个环节。
图4.1可编程并行通信接口芯片8255的内部结构
4.1.28255硬件引脚图
140
239
338
437
536
635
734
833
8255
932
1031
1130
1229
1328
1427
1526
1625
1724
1823
1922
2021
PA4
PA5
PA6
PA7
WR
RESET
D0
D1
D2
D3
D4
D5
D6
D7
Vcc
PB7
PB6
PB5
PB4
PB3
PA3
PA2
PA1
PA0
RD
CS
GND
A1
A0
PC7
PC6
PC5
PC4
PC0
PC1
PC2
PC3
PB0
PB1
PB2
图4.28255硬件引脚图
A1上的不同编码可分别寻址上述3个口和一个控制寄存器,具体规定如下:
A1A0选择
00A口
01B口
10C口
11控制寄存器
通常A0,A1分别接系统总线A0和A1,它们与一起来决定8255的接口地址。
RESET为复位输入信号。
此端上的高电平可使8255复位。
复位后,8255的A口,B口和C口均被定为输入状态。
PA0~PA7为A口的8条输入输出信号线。
该口的这8条线是工作输入、输出还是双向(输入、输出)方式可由软件编程来决定。
PB0~PB7为B口的8条输入输出信号线。
利用软件编程可指定这8条线是输入还是输出。
PC0~PC78条线根据工作方式可作为数据的输入或输出线,也可以用作控制信号的输出或状态信号的输入线。
表4.18255的各种操作功能组合
操作功能
1
端口A数据总线
端口B数据总线
端口C数据总线
数据总线端口A
数据总线端口B
数据总线端口C
数据总线控制寄存器
非法操作(控制口不能读)
X
数据总线浮空
未选中8255
4.1.38255控制字
8255有两种控制字:
方式控制字和口按位置位/复位控制字。
由于着两个命令都是送到的同一个控制端口,故为了让其能识别是哪个命令,采用特征位的方法。
若写入的控制字的最高位是1,则是工作方式选择控制字;
若写入的控制字是0,则是口的按位置位/复位控制字。
1、方式控制字
其作用是指定3个并行端口(A、B、C)是作输入还是作输出端口以及选择8255的工作方式。
表4.28255方式控制字
标志位
=1写方式字
=0C口控制字
A组工作方式选择
00=方式0
01=方式1
1X=方式2
A口
1=输入
0=输出
C口(高4位)
B组工作方式选择
0=方式0
1方式1
B口
C口(低4位)
2、C口按位置位/复位控制字
该控制字的作用是指定口的8位中的任意一位置成高电平输出或低电平输出。
它的格式及每位的定义如表:
表4.38255的C口按位置位/复位控制字
D7=0
不用(一般置0)
C口的选择
000=C口位0
001=C口位1
010=C口位2
011=C口位3
100=C口位4
101=C口位5
110=C口位6
111=C口位7
1=置位
0=复位
8255有很强的功能,能够工作在各种工作方式下。
在应用过程中,可以利用软件编程来指定8255的工作方式。
也就是说,只要将不要的控制字装入芯片中的控制寄存器,即可确定8255的工作方式。
当控制字bit7=1是,控制字的bit6-bit0用来控制B组,包括B口的8位和C口的低4位。
当控制字的bit7=0时,指定该控制字仅对C口进行位操作——按位置位或复位操作。
对C口按位置/复位操作的控制字格式如图2所示。
如前面所叙,在必要时,可利用C口的按位置/复位控制字来使C口的某一位输出0或1。
例如,在设计程序中的程序片段
MOVDX,0646H
MOVAL,0A0H
OUTDX,AL;
初始化控制字,A组位方式1输出
MOVDX,0640H
MOVAL,0FFH
OUTDX,AL;
A口赋值
4.1.48255的工作方式
8255的工作方式有3种,由方式控制字来指定它的每个端口工作于何种方式。
由于此次设计只涉及到方式0,故只对方式0的工作过程予以简述。
表4.48255方式0之下的输入输出组合
A组
B组
A口(PA0—PA7)
C口(PC4—PC7)
B口(PB0—PB7)
C口(PC0—PC3)
入
出
1、方式0(基本输入/输出方式)
基本的输入/输出是指外设始终作好了准备,随时可以提供或者接受数据。
A、B、C三个端口均可以采用这种工作方式,A、B口工作在方式0下可由方式控制字设定,C端口作为数据输入/输出哭只能工作于方式0,无须设定。
方式0的任一端口可独立实现数据的输入或输出,输入输出的方向由方式控制字分别定义。
多用于在无条件传送时提供24位数据的输入或输出。
但A、B两断口在单独定义8位数据的输入或输出时可以利用C端口高半字节(A组),低半字节(B组)作为控制输出或状态输入的支持,且可以自行定义,无固定搭配的限制,此时A、B两端口可分别以查询方式工作。
2、方式0的基本功能
若A口、B口都工作在方式0,则此时8255可以有2个8位的数据输入/输出(A口、B口),2个4位口(C口上半部、下半部),而且A口、B口、C口上半部、C口下半部共
有16种不同的组合方式;
输出是锁存的,输入只有缓冲而无锁存功能。
CPU和8255A口、B口之间传送数据只能用程控方式(既无条件或查询方式),不能用中断方式。
3、方式0的特点
系统没有指定C口的某些线作为专门的信号联络线和状态位,但是用户可以自定义C口的某些线作为信号联络线。
CPU根据查询到的C口状态来了接数据传送过程,以确定是否对A口或B口进行数据读写。
在实验中,我是利用A、B口来输出信号,用C口来输入信号,通过8255的控制字使LED发光的,通过开关来强制控制C口来给LED显示发出对应的显示电平。
这样就可完成实际交通中出现的紧急状况。
4.2ADC0809芯片的内部结构及引脚
4.2.1ADC0809外部引线
ADC0809转换器由一个8路单端模拟信号多路开关电路、地址锁存与译码电路、A/D转换器和三态输出锁存缓冲器组成,其引脚图,如图3.3所示。
D0~D7——输出数据线;
IN0~IN7——8路模拟电压输入端;
ADDA,ADDB,ADDC——路地址输入;
ADDA——最低位,ADDC—最高位;
STALT——启动信号输入端,下降沿有效;
ALE——路地址锁存信号,用来锁存ADDA`ADDC的地址输入,上升沿有效;
EOC——变换结束状态信号,高电平表示一次变换已结束;
OE——读允许信号,高电平有效;
CLK——时钟输入端;
REF(+),REF(-)——参考电压输入端;
VCC——5V电源输入;
GND——地。
图4.3ADC0809引脚图
ADC0809由两部分组成:
模拟多路开关和A/D转换器。
其核心是8位A/D转换器,它采用逐次逼近法,对8路模拟开关的一路进行转换。
模拟多路包括8路模拟开关和3位锁存器与译码器,根据3位输入地址(ADDA.ADDB.ADDC)选择8路模拟输入当中的一路送到A/D转换器,如图3.4所示。
图4.4ADC0809内部结构图
4.2.2ADC0809工作方式
ADC0809的工作过程是:
首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址译码选通8路模拟输入之一到比较器。
STALT上升沿将逐次逼近储存器复位,下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC变成高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用做申请中断。
当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上,如表4-3所示。
表4-5ADC0809工作方式表
ADDC、ADDB、ADDA
000
001
010
011
100
101
110
111
选中通道
IN0
IN1
IN2
IN3
IN4
IN5
IN6
IN7
设计总结
本次设计是在王老师悉心指导下完成的,从课设的选题、思路、撰写和最后的定稿,李老师都花费了不少的时间和精力,给予了我们最大的指导和帮助。
李老师一丝不苟的治学态度以及严于律己、宽以待人的品质,无时无刻不在激励着我,令我们终生难忘,使我们满怀信心的迎接新的挑战。
在此,特向李老师表示深深的敬意和由衷的感谢!
在这段时间里,我们做了许多工作。
首先,我们进行的就是对相关资料的查找,通过借助图书馆的工具书和老师的指导,我们很快就完成了这项任务;
其次,就是搜集有关这次课程设计题目的资料,完成这项工作我们是通过网络及老师和同学的介绍,查找到的资料对我们的课程设计有很大的帮助。
我们的小组终于完成了《温度显示系统》的设计。
从开始接到设计题目到系统的实现,再到《温度显示系统》设计完成,每走一步对我们来说都是新的尝试与挑战。
在这一周的课程设计中,我们学到了很多知识也有很多感受,从对许多知识的一无所知,到对相关知识有了一定了解的状态,我们开始了独立的学习和试验,查看相关的资料和书籍,让自己头脑中模糊的概念逐渐清晰,使不成熟的作品一步步完善起来,每一次改进都是我们学习的收获,每一次试验的成功都会让我们兴奋好一段时间。
我以前就对计算机感兴趣,一直想找机会对计算机深入学习,是这次课程设计给了我机会,给了我非常大的启示:
无论什么时候都不应该丢掉自己的兴趣,更应该把自己的兴趣与社会的需求相结合才能在某些方面取得成就。
在以后我也会去不断的深造自己,用知识来武装自己,这样才会跟得上发展如此之快的社会。
另一个就是无论做什么事情都需要集体的力量,集体的力量是伟大的。
组员之间也要团结,相互协调好,这也是交际中的一种需要。
从今以后我会不断的完善自己,继续努力学习,把这种集体的精神带到我的学习和工作当中,为以后步入社会奠定良好的基础。
致谢
在这里我要感谢指导我们的王老师,他教会了我知识为所用也,真正运用到实际生活中去,王老师耐心地为我们解答问题所在,外表看似严厉,对学生严格要求,其实我感觉他内心却是很和蔼的。
我代表我们组祝愿老师:
身体健康、工作顺利!
最后,我还要感谢一周以来我们组员对我的默默支持,没有你们我自己是不能在短时间在完成这项任务的,我深深的道一声:
谢谢你们,辛苦了!
参考文献
1.顾可民,《微机原理与应用》大连理工大学出版社,2002.2
2.朱慧真.《汇编语言教程》.国防工业出版社,1988
3.孙德文等.《微机系统硬件教程》.海洋出版社,1993
4.谢瑞和.《微机技术实践》,华中理工大学出版社,1992
5.朱玉春等《微机原理与接口技术》大连理工大学出版社,2004
6.仇玉章等《微型计算机技术实验及指导教程》清华大学出版社,2003