微机原理与接口技术课程设计温度采集系统软硬件设计.docx
《微机原理与接口技术课程设计温度采集系统软硬件设计.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计温度采集系统软硬件设计.docx(24页珍藏版)》请在冰点文库上搜索。
微机原理与接口技术课程设计温度采集系统软硬件设计
中北大学
课程设计任务书
2010/2011学年第2学期
学院:
中北大学信息商务学院
专业:
通信工程
起迄日期:
6月7日~7月12日
课程设计地点:
中北大学
指导教师:
系主任:
下达任务书日期:
2011年6月7日
一、设计目的和要求
1)、查资料了解8255A和ADC0809AD转换器的工作原理
2)、原理图设计,用PROTEL画出原理图
3)、软件设计,给出流程图及源代码并加注释
二、设计内容及步骤
1.设计要求
以8088CPU为核心设计一个温度采集系统,系统可以实现一路温度的采集,在3位LED显示器上显示当前温度。
本设计所用器件主要有传感器,A/D转换器,8088CPU,可编程并行接口8255,LED显示器等。
首先传感器把所测的温度转换为电压,输入A/D转换器中进行转换,然后再把得到的二进制数经过CPU在LED上显示出来。
本设计共分以下几个模块:
8088主控模块、A/D转换模块、并行接口模块、显示模块。
2.撰写设计报告
1.设计题目:
温度采集系统软硬件设计
2.任务要求及分工(注:
要求写清楚每个人完成的模块)
3.系统总体方案
4.各个硬件模块设计和原理图
5.各个软件模块设计和流程图
6心得体会和参考资料
注:
学生完成课程设计后提交课程设计报告,要求将前述全部内容依先后顺序写成设计报告一份,要求文字通畅、字迹工整,装订成册。
三、进度安排
序号
设计内容
时间(天)
1
查阅资料,确定设计思路
1
2
设计实现
2
3
调试
1
4
考核设计,写设计报告
1
四、答辩与成绩评定
1.课程设计报告应有设计者和指导教师的签名。
未经指导教师签字,不能参加答辩。
2.由指导教师组成答辩小组,答辩时按设计报告编写顺序,设计者本人首先对自己的设计进行5-10分钟的讲解,讲明设计中主要解决的问题,然后回答教师提问。
每位学生的答辩时间一般不超过20-25分钟。
3.成绩评定包括以下部分:
(1)出勤情况占20%
(2)设计的完成情况占30%
其中包括:
数据库的创建情况;可视化的界面设计情况;对数据集的操作的完成情况;程序代码的编写情况;运行结果的正确程度。
(3)课程设计报告占50%
五.参考书目
1.周耿烈,《微机原理与接口技术实验指导书》,兰州工专计算机工程系,2001年3月
2.雷丽文,《微机原理与接口技术》,电子工业出版社,1999年第一版
3.沈美明,《IBMPC机汇编语言程序设计》,清华大学出版社,1991年第一版
微机原理与接口技术课程设计
学校:
中北大学信息商务学院
专业:
通信工程
姓名:
一、设计题目:
温度采集系统软硬件设计
二、任务要求及分工
8088主控模块:
A/D转化模块:
并行接口模块:
显示模块:
三、系统总体方案
温度计电路原理图如下页图3-1所示,控制器用8088CPU,温度传感器用LM335系列电压输出型传感器,用3位共阴LED数码管以动态扫描法实现温度显示。
protel原理图(图3-1)
四、各个硬件模块设计和原理图
1、温度传感器的工作原理
本设计所选的温度传感器为LM335系列电压输出集成温度传感器,此传感器的工作温度范围为-10~100摄氏度,作为一个电压源,当工作电流在0.4~5mA范围内变化时,并不影响传感器的性能,因为它的动态电阻小于1欧姆,如果在25摄氏度下标定,在100度宽的温度范围内误差小于1摄氏度,具有良好的输出线性。
它的工作原理图如图4-1:
图4-1电压型集成温度传感器原理图
图4-2温度传感器电路图
2、A/D转换器的工作原理
图4-3ADC0809管脚图
8通道(8路)输入8位字长逐位逼近型转换时间100μs内置三态输出缓冲器
1)主要引脚功
D7~D0:
输出数据线(三态)
IN0~IN7:
8通道(路)模拟输入
ADDA、ADDB、ADDC:
通道地址
ALE:
通道地址锁存
START:
启动转换
EOC:
转换结束状态输出
OE:
输出允许(打开输出三态门)
CLK:
时钟输入(10KHz~1.2MHz)
2)ADC0809芯片介绍
ADC0809包括一个8位的逼近型的ADC部分,并提供一个8通道的模拟多路开关和联合寻址逻辑。
用它可直接输入8个单端的模拟信号,分时进行A/D转换,再多点巡回监测、过程控制等领域中使用非常广泛。
3)ADC0809的主要技术指标为:
·分辨率:
8位
·单电源:
+5V
·总的不可调误差:
±1LSB
·转换时间:
取决于时钟频率
·模拟输入范围:
单极性0~5V
·时钟频率范围:
10KHZ~1280KHZ
3、8088CPU的工作原理
8088CPU采用DIP40(双列直插40脚)封装
为了减少引脚数:
·部分引脚采用分时复用方式,即在不同时间传送不同的信息;
·还有一些引脚的功能因CPU的工作方式(最小方式/最大方式)的不同而不同。
地址总线和数据总线:
地址和数据分时使用引脚,共占20根引脚。
·20根地址总线,用于输出CPU要访问的内存单元(或I/O端口)的地址,为三态输出信号;(与数据和状态线复用)
·16根数据总线,用来在CPU与内存(或I/O端口)之间传送数据,为三态双向信号。
(与低16位地址线复用)
·AD15~AD0——地址/数据总线
A19/S6~A16/S3——地址/状态线
控制总线:
·MN/MX——工作方式选择控制线,用来控制8088的工作方式。
•MN/MX接+5V,最小方式,由8088提供系统所需要的全部控制信号,用来构成单处理机系统;MN/MX接地,最大方式,系统部分总线控制信号由专用的总线控制器8288提供,该方式用于多处理机系统。
与工作方式无关的控制线:
RD——读控制信号
READY——准备好信号
RESET——复位信号
INTR——可屏蔽中断请求
NMI——不可屏蔽中断请求
TEST——测试信号
BHE/S7——数据总线高8位允许/状态S7信号
MN/MX——工作方式选择
ALE——地址锁存允许
DEN——数据传送允许
DT/R——数据发送/接收信号
M/IO——存储器/输入输出选择信号
WR——写控制信号
INTA——中断响应信号
HOLD——总线请求信号
HLDA——总线响应信号
LOCK——总线锁定信号
RQ/GT1和RQ/GT0——总线请求响应
CLK——时钟信号
Vcc——电源(输入)接+5V电源。
GND——地线
4、8255的工作原理
图4-58255管脚图
图4-68255芯片功能图
1)8255引脚功能:
RESET:
复位输入线。
CS:
片选信号线。
WR:
写入信号。
D0~D7:
三态双向数据总线。
PA0~PA7:
端口A输入输出线。
PB0~PB7:
端口B输入输出线。
PC0~PC7:
端口C输入输出线。
A0A1:
口地址选择信号线。
2)、8255的工作方式
8255A有三种工作方式,用户可以通过编程来设置。
方式0——简单输入/输出――查询方式;A,B,C三个端口均可。
最为常用。
方式1——选通输入/输出――中断方式;A,B,两个端口均可。
方式2——双向输入/输出――中断方式。
只有A端口才有。
方式0:
为一种简单的输入/输出方式,没有规定固定的应答联络信号,可用A,B,C三个口的任一位充当查询信号,其余I/O口仍可作为独立的端口和外设相连。
即:
PA0—PA7,PB0—PB7,PC0—PC7均可作为I/O线使用,没有限制一定传送什么信号;口A、口B、口C高4位和口C低4位可以分别设定为输入口或输出口。
方式0的应用场合有两种:
一种是同步传送;一种是查询传送。
1>方式控制字:
方式控制字决定了8255的工作方式。
8255工作之前软件上必须初始化,即将方式控制字写入控制字寄存器中,以指定端口的工作方式。
2>口C的按位置/复位控制字:
只有C口才有,它是通过向控制口写入按指定位置位/复位的控制字来实现的。
C口的这个功能可用于设置方式1的中断允许,可以设置外设的启/停等
图4—78255方式控制字
图4—8按位操作控制字
5、LED数码管显示器工作原理
图4-8是7段LED数码管的器件外部形状图,它由名称为gfedcba的7个笔画段和一个圆点h组成,这7个笔画段在点亮时,可以显示数字和一些简单的西文字符。
图1b是7段LED数码管的原理图,它由8个发光二极管组成,这8个发光二极管的负极连接在一起,称为公共端(Com),而发光二极管的的正极则分别由引脚引出,便于控制哪一个发光二极管点亮。
在图4-9b所示的7段数码管中,由于将8个发光二极管的负极全部连接在一起,称为“共阴极”数码管。
在实际使用中,还有一种将8个发光二极管的正极全部连接在一起,而负极分别由引脚引出的数码管,称为“共阳极”数码管。
五、各个软件模块设计和流程图
1、程序的主要功能是负责温度的转化,读出处理并实现在LED上实时显示。
2、各程序流程图
1)总流程图(图5-1)
图5—1
2)数据采集系统流程图(图5-2)
3)温度显示子程序流程图(图5-3)
3、程度清单如下:
DATASEGMENT
BUF1DB?
BUF2DW?
BUF3DW?
LEDDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
DATAENDS
STACKSEGMENGT
STA1DW?
STACKENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,ES:
DATA,SS:
STACK
EN_8255PROCNEAR;以下是数据采集部分
MOVDX,37BH;37BH为8255控制端口的地址
MOVAL,91H;方式选择控制字,A口方式0输入,B口方式0输出,C口PC7——PC4输出,PC3——PC0输入
OUTDX,AL
RET
EN_8255ENDP
START:
MOVAX,DATA
MOVDS,AX
MOVES,AX
MOVAX,STACK
MOVSS,AX
LEASI,BUF1;LEA取有效地址指令
CALLEN_8255;调用初始化8255程序
MOVBL,0;通道号,初始指向第0路
MOVCX,1;共采集1次
AGAIN:
MOVAL,BL
MOVDX,379H;送通道地址379H为B端口地址
OUTAX,AL;8255B端口输出0,ADC0809中,ADDA-ADDC为0;通道0选中
ORAL,10H;AL:
10H
OUTDX,AL;送ALE信号(上升沿)
ANDAL,0EFH;AL:
0
OUTDX,AL;输出START信号(下降沿)
NOP;空操作等待转换
MOVDX,37AH;37AH为C端口地址
WAIT1:
INTAL,DX;读EOC状态
ANDAL,20H
JZWAIT1;若EOC为地电平则等待
MOVDX,379H
MOVAL,BL
ORAL,20H;OE=1,数据输出允许信号(ADC0809)
OUTDX,AL;EOC端为高电平则输出读允许信号OE=1
MOVDX,378H
INAL,DX;读入转换结果
MOV[SI],AL;把转换的数字量送存储器
MOVDX,379H
MOVAL,0
OUTDX,AL;若完成数据采集则回到初始状态
START2:
MOVAX,[SI];以下程序是把二进制转化为压缩BCD码,一次除以10,余数为BCD个位数,两次除以10,余数为BCD十位数,三次除以10,余数为BCD百位数
LEASI,BUF2
LEADI,BUF3
XORDX,DX;DX清0
MOVCX,OAH;基数10
DIVCX;DIV无符号数除法指令
CMPAL,0;商=0?
JNZNEXT1;不等则跳到NEXT1
MOV[DI],AL;等就存结果
NEXT1:
MOV[DI],DL
DIVCX
CMPAL,0
JNZNEXT2
INCDI
MOV[DI],AL
NEXT2:
MOVDL,O
DIVCX
INCDI
MOV[DI],DL
INCDI
MOV[DI],AL
DON:
MOVAX,[DI+1];这小段是把扩展二进制转化为压缩BCD码
MOVCF,0
MOVCL,4
ROLAX,[DI]
ADCAX,[DI]
ADDDI,2
MOVDX,[DI]
SALDX,CL
MULDX,10H
ADCDX,AX
MOV[DI],DX
RET
DISP1:
PROCNEAR;这段是显示子程序
LEABL,LED
MOVAL,[DI]
LEABX,TAB
XLATTAB;XLAT为换码指令
CMPAL,BL
JNZDISP3
OUT0FF01H
DISP3:
INCDI
JMPDISP1
TAB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,00H,40H
REP
START3:
MOVDX,0FF03H;以下是温度实时显示部分
MOVAL,91H
OUTDX,AL
DON:
MOVDX.,FF00H
INTAL,DX
JNZDON
MOVDX,0FF01H
CALLDISP1;调用显示子程序
OUTDX.,AL
CALLDELAY;调用延时子程序
EXIT:
MOCAH,4CH
INT21H
DELAY:
PROCNEAR;延时子程序
MOVCX,150000
DELAY1:
LOOPDELAY1
REP
CODEENDS
ENDSTART
六、心得体会和参考资料
1、心得体会:
在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。
在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。
学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。
课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。
更重要的是,通过这次课程设计我们增加了我们对微机原理的兴趣。
更深一步的理解了8088CPU,8255A,ADC0809的应用。
进一步熟悉了课本知识并提高运用理论知识去分析,解决实际问题的能力,熟悉了数据采集系统设计过程。
在设计过程中,我们共同努力,虽然分工不同,但我们取长补短,发挥各自的优势,共同突破难关,完成任务。
同时体现出自己单独设计的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。
更让我们体会了团队的力量是不可阻挡的。
与此同时,下定决心,对机原理知识的欠缺,一定会在接下来的时间里查缺补漏,迎头赶上!
2、参考书目:
1)周耿烈,《微机原理与接口技术实验指导书》,兰州工专计算机工程系,2001年3月;
2)雷丽文,《微机原理与接口技术》,电子工业出版社,1999年第一版;
3)沈美明,《IBMPC机汇编语言程序设计》,清华大学出版社,1991年第一版。