




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、重庆科技学院课程设计报告院(系):电子信息工程学院 班 级:学生姓名:学号:设计地点(单位)设计题目:_ 电压报警系统_ _完成日期:2010年7月16日指导教师评语:成绩(五级记分制):教师签名:课程设计任务书设计题目:电压报警系统设计学生姓名课程名称微机原理与接口技术课程设计专业班级地 点起止时间7月5日7月16日设设计内容:采集实验箱提供的05v的电压;当输入电压在额定值以内,用数计 内码管显示实际电压值;当输入电压超过额定值 音,并将此电压限制到额定值后输出。3v,数码管显示“ e.o”,并发出报警容设计要求:及 要(1)控制系统硬件用 8086系统构成:cpu 8086,定时器/计数
2、器芯片,并行接 片,4位7段数码管单元,模数转换单元,蜂鸣器。求(2)设计控制系统应用软件。(3)系统功能:显示电压,报警,修正电压等功能。(1)以十进制形式显示电压值并保留小数位:1位;设(2)用硬件实现定时功能;计(3)报告正文字数约 4000字以上(不包含程序清单),内容主要用思体设计方参案,工作和组成原理(框图)或设计说明,米用的技术路线,接口电路设计,程序设计数(程序框图和程序清单及注释 ),对设计中所存在的问题和不足进行分析和总结,提出解决的方法、措施、建议 。进 度 要 求7月5日-7月6日明确设计任务,学习相关知识;7月7日-7月9日查阅相关资料,进行基础练习;7月8日-7月1
3、4日根据题 ek进行设计和实现;7月15日-7月16日撰写课程设计报告,进行答辩。1赵树升,赵雪梅.现代微机原理及接碇术m,北京:清华大学出版社,2008参 考年8月2戴梅萼.微型计算机技术及应用一一从16位到32位(第2版)m,北京:清华资 料大学出版社,2003年2月3西安瘩都科教仪器公司.32位微机原理与接e支术实验教程.2005年4西安唐都科教仪器公司.32位微机原理与接出术用户手册.2005年其 它说1 .本表应在每次实施前一周由负责教师填写二份,院系审批后交院系办备案,一份由负责教师留用。2 .若填写内容较多可另纸附后。3.一题多名学生共用的,在设计明内容、参数、要求等方面应有所区
4、别。教研室主任:指导教师:年 月 日摘要当代计算机是微电子学与计算数学相结合的产物。微电子学的基本元件及 其集成电路构成了它的硬件基础;计算数学的方法与数据结构则构成了计算机的 软件基础。世界上第一台计算机于1946年在美国宾夕法尼亚大学诞生,自1981年ibm 公司推出旧mpc后,计算机的发展进入了微机时代。微型计算机的迅速普及, 使得计算机广泛运用于工业、农业、科学技术和社会生活的各个领域, 极大的改 变了生产和生活的方式,并成为推动社会发展的巨大生产力。数据采集系统是计算机在工业控制中最为普遍的应用系统。它的任务是采集生产过程中的工况参数并经过 a/d转换器送入内存,cpu将对这些参数,
5、数据 进行分析、运算和处理。如数字显示、越界报警等功能。若配上输出通道就可以 组成计算机控制系统。此设计是一个电压报警系统的模拟实验,采集箱提供 05v的电压,当输入 电压在额定值以内,用数码管显示实际的电压值;当输入的电压超过额定值3v, 数码管显示“e.o”,并发出警告音,并将电压限制到额定的值后输出。该系统具 有显示电压,报警,修正电压的功能。关键词:接口 a/d转换 修正电压 发声警告ii摘要ii1系统需求分析1.1.1 设计内容1.1.2 设计要求1.1.3 芯片选择1.2芯片及数码管介绍2.2.1 cpu 80862.2.2 8254可编程定时/计数器芯片22.3 8255 并 口
6、芯片4.2.4 a/d转换接口芯片4.2.5 数码管显示单元5.3硬件连线6.3.1 8254可编程定时/计数器芯片接线图63.2 8255并行接口芯片接线图 63.3 a/d 转换接口芯片接线图 7.3.4 数码管连线图8.4软件实现9.4.1 模块流程图 9.4.1.1 主程序流程图 9.4.1.2 电压转换模块流程图1.04.1.3 电压显示模块流程图 1.14.1.4 电压报警模块流程图124.2 代码设计1.34.2.1 主程序代码1.34.2.2 电压转换模块代码144.2.3 数码管显示模块代码1.44.2.4 电压报警模块代码15总结1.7.致谢18参考文献1.9附录2qiii
7、重庆科技学院微机原理与接口技术课程设计报告1系统需求分析1.1 设计内容电压报警系统是一个对超过额定电压就会产生蜂鸣效果,进行报警的系统。 它主要是通过采集实验箱提供的 05v的电压;当输入电压在额定值以内,用 数码管显示实际电压值;当输入电压超过额定值 3v,数码管显示“e.o”,并发 出报警音,并将此电压限制到额定值后输出。1.2 设计要求(1)控制系统硬件用8086系统构成:cpu 8086,定时器/计数器芯片,并 行接口芯片,4位7段数码管单元,模数转换单元,蜂鸣器。(2)设计控制系统应用软件。(3)系统功能:显示电压,报警,修正电压等功能。1.3 芯片选择在本系统中,主要采用的芯片有
8、 cpu8086 8254可编程定时/计数器芯片、 8255并行接口芯片、a/d转换接口芯片 adc0809。cpu8086fc要是电压报警系统的核心芯片,协调着 8254芯片,8255芯片, adc0809k片相互间的工作。8254是可编程定时/计数器芯片,用来控制蜂鸣器。8255是并行接口芯片,用来连接数码管显示单元和8254adc0809是a/d转换单元,用来模拟电压,将模拟信号转换为数字信号。2芯片及数码管介绍在整个电压报警系统中,所用到的元器件有了cpu8086 8254可编程定时/计数器、8255并行接口芯片、a/d转换接口芯片、数码管以及蜂鸣器。2.1 cpu 8086微处理器c
9、pu1微机的核心芯片,是整个系统运算和指挥控制中心。在电压 报警系统中用到的cpu1字长为16位的,一次能处理16位数据的cpu 8086cpu 808凯有运算器,控制器和寄存器组三大主要部件。其功能部件包括 指令执行部件elffi总线部件biu,其寄存器结构由八个通用寄存器,四个段寄存 器和二个控制寄存器组成。在电压报警系统中,用到了 xd0-xd地址总线,xior,xio似写信号引脚, ioy0,ioy1,ioy2三个端口号,用来控制825斯行接口芯片,8254可编程定时/计 数器芯片,a/d转换接口芯片。2.2 8254可编程定时/计数器芯片8254是intel公司生产的可编程间隔定时器
10、。它具有以下基本功能:1、有三个独立的16位计数器;2、每个计数器可按二进制或十进制(bcd计数;3、每个计数器可编程工作于六种不同的工作方式;4、8254每个计数器允许的最高计数频率为10mhz5、8254有读回命令,可以读出状态寄存器的内容;6、计数脉冲可以是有规律的时钟信号,也可以是随机信号。8254的工作方式如下述:1、方式0:计数到0结束输出正跃变信号方式。2、方式1:硬件可重触发单稳方式。3、方式2:频率发生器方式。4、方式3:方波发生器。5、方式4:软件触发选通方式。6、方式5:硬件触发选通方式。8254的控制享有两个:一个是用来设置计数器的工作方式,称为方式控制 字;另一个用来
11、设置读回命令,称为读回控制字。这两个控制字共用一个地 址,由标志位来区分。控制字格式和读回控制字格式分别如图2-1和如图2-2当读回控制字的d附为0时,由该读回控制字d1-d2&指定的计数器的状态寄存 器内容将被锁存到状态寄存器中。状态字格式如图 2-2所示。d7d6d5d4d3d2d1do计数器选择读写格式选择工作方式选择计数码制选择00计数器001一计数器110 一计数器211 一读出控制字标志00 锁存计数值0读写低s位10 一读,写高8位11 一先读,写低8位再读写高8位000 -方式0 口 01 方式1010一方式2 。11 一方式3100一方式4101-方式5。一二进制数1 十进制
12、数图2-1 8254方式控制字d7d6d5d4d3d2d1do110-锁存计赘值0-锁林态信息计教器选择(同方式控制字)0图2-2 8254读出控制字d7d6d5d4d3d2d1doout引脚现行状态1一高电平0 低电平计数初值是否装入1 一无效计数0一计甄有效计数器方式(同方式控制字)图2-3 8254状态字格式在电压报警系统中,8254采用的是定时器0,方式3来进行控制的,输入时钟频率为00502h门控信号输入引脚gate018255ipa0ffipa11s, out0i蜂鸣器相连,当门控信号接收到从 8255白pa0ffipa1f专来的高电平,则蜂鸣器会发出报警声,否则蜂鸣器停止工作。2
13、.3 8255弁口芯片8255可编程外围接口芯片是intel公司生产的通用并行i/o接口芯片,它 具有a, b, c三个并行接口,用+5v单电源供电,能在以下三种方式下工作:方 式0,方式1,方式2。方式0是基本输入输出方式,方式1是选通输入输出方 式,方式2是双向选通工作方式。其工作方式控制字如图2-1 o在电压报警系统中,8255起到是一个桥梁作用,在本系统中,8255采用方 式0基本输入输出方式,a口,b 口,c 口均为输出。8255的d0-d7连接系统总线的 xd0-xd7 rd wd cs分别连接系统总线的 xior, xiovy ioy0。8255的a 口低两位paq pa1控制8
14、254可编程定时/计数器芯片。8255的b 口的pb0-pb7和c 口的低四位 pc0-pc冰控制数码的显示。24b r_jo w*田1专病入alo h-|1钿入图2-48255工作方式控制字2.4 a/d转换接口芯片adc0809包括一个8位的逐次逼近型的ad4b分,并提供一个8通道的模拟多 路开关和联合寻址逻辑。用它可直接输入 8个单端的模拟信号,分时进行 a/d转 换,在多点巡回检测、过程控制等应用领域中使用非常广泛。在电压报警系统中,adc08089cst选信号连接系统总线的ioy洲口 , clk 连接系统总线clk wr,r降别连接系统总线的xiowdxior,它将模拟信号转换 为数
15、字信号存储在al中,其输出范围为0-255。2.5 数码管显示单元本系统中所用到的数码管显示单元是由 4个7段数码管组成,其每个数码管 结构图如图2-5所示。bgd图2-5 数码管结构图数码管的显示数字的原理其实是根据每个数码管发光来组成一个数字,在本系中给数码管给以低电平,则数码管发光,否则数码管熄灭。其具体数字显示编码表表2-1如下:dpgfedcba不带小数点带小数点00/101111113fhbfh10/1000011006h86h20/110110115bhdbh30/110011114fhcfh40/1110011066he6h50/111011016dhedh60/1111110
16、17dhfdh70/1000011107h87h80/111111117fhffh90/111011116fhefhe0/1111100179hf9h表2-1数码管数字显示编码表3硬件连线3.1 8254可编程定时/计数器芯片接线图在本系统中,8254门控信号/入引脚gate的8255白patf口pa价目连,时钟输 入信号clk0t系统总线的clkf连,out0t蜂鸣器相连,当门控信号接收到从 8255的pa0ffipam专来的高电平,则蜂鸣器会发出报警声,否则蜂鸣器停止工 作,具体接线图如下:系统总线xd7 xd6xd5xd4xd3xd2xd1xd0xa2xa3xiowxiorioy1mm7
17、6543210 dd dd ddddclko8254单元a1a0wr gatgate0csouto系 统clk总 线pa0pa18255spk电子发送单元图3-1 8254可编程定时/计数器芯片接线图3.2 8255弁行接口芯片接线图8255的d0-d7连接系统总线的 xd0-xd7 rd wd cs分别连接系统总线的 xior, xiow ioy0。8255的a 口低两位paq pa1控制8254可编程定时/计数器芯片。8255的b 口的pb0-pb7?口 c口的低四位pc0-pc冰控制数码的显示。8255除了连接系统总线之外,还要连接数码管,数码管显示引脚是a,b,c,d,e,f,g,dp
18、分别连接8255的pb0-pb7;数码管选择引脚 x1,x2,x3,x4分 别连接8255的pc0-pc4具体接线图如下:xd7xrowxiorlovnxd6xdoxa3xa2xd5xd2 xdt76 s- 43210 1 ozrds ddddddd 口 aa mrjc5 -.l5 /2 ,z-8 foc0-0cwdpbopbipb2pb3pb4pb5pb6pb7pc0pc1pc2pc3pc4pc5pc6pc7abcd 数码管efgdpx1x2x3x4图3-2 8255并行接口芯片接线图3.3 a/d转换接口芯片接线图在电压报警系统中,adc08089cst选信号连接系统总线的ioy洲口 ,
19、clk 连接系统总线clk wr,r降别连接系统总线的xiowpxior,具体接线图如下:系统总线xd7xd6xd5xd4xd3xd2xd1xd0xiowxiorioy2clk76 54 32 10tfdsl 口 ddddddd 5rjcca b cadc 单元ino图3-3 ad转换接口芯片接线图3.4 数码管连线图数码管显示引脚是 a,b,c,d,e,f,g,dp分别连接8255的pb0-pb7数码管选择引脚x1,x2,x3,x4分别连接8255的pc0-pc4具体接线图如下+5v4.7kx8pb0pb1pb28255 pb3pb4pb5pb6pb7旦 岂d 旦 f. gdppc0pc1p
20、c2pc3x1x2x3x4图3-4数码管接线图4软件实现4.1 模块流程图4.1.1 主程序流程图图4-1主程序流程图4.1.2电压转换模块流程图图4-2电压转换程序流程图4.1.3电压显示模块流程图图4-3电压显示模块流程图4.1.4电压报警模块流程图图4-4电压报警模块流程图4.2代码设计4.2.1 主程序代码主程序主要由电压转换模块和电压报警模块组成,首先给 8255写方式控制 字,然后在初始化8255,再启动a/d转换,将转换后的值读入 al中,最后再 在电压转换模块中处理转换后的数据, 然后检测数据的大小看是否需要报警, 具 体代码如下:start: mov ax,data;初始化寄
21、存器mov ds,axmov dx,my8255_mode;8255初始化moval,80hout dx,almov dx,offset str0;工作方式为0, a口,b 口都为输出mov ah,09h;int 21h显示str0的内容start1:mov dx,adc0809;mov al,0启动a/d转换out dx,al;通过adc0809俞出mov cl,al;将a/d转换后的值送到cl当中去call delay;软件延时call delaycall delaymov dx,adc0809;in al,dx读出转换结果mov cl,alcall delay;软件延时call tran
22、sformcall delay;调用电压转换mov dx,my8255_amov al,00hout dx,al;让报警器停止工作call alarm;call delay调用电压报警mov ah,01hint 16h;判断是否启按键按下jne quitjmp start14.2.2 电压转换模块代码在电压转换模块中,主要是对 a/d转换后的数据进行处理,a/d转换后的 数据范围是0-255,但是电压要求范围是0-5v,所以这里需要对转换后的数据进 行缩小,缩小后,还需要精确到小数点,于是这里需要将除后的余数保留,并且 将余数扩大10倍,在一次除以33h,则可以获得小数点后面的数字,具体代码
23、如下:transform proc change: movl,cl mov bl,33h div bl mov cl,al mov al,ah mov ah,00h mov bl,10 mul bl mov bl,33h div bl mov ch,al rettransform endp电压转换的子程序将刚才送到cl的ad转换值有送到al当中去 将0-255的值转换为0-5v的电压值将除的商送到cl中去将除后的余数送到al中去对余数扩大10倍 再除以刚才的除数将获得商送到ch中去4.2.3 数码管显示模块代码8255并行接口芯片连接数码管, 码如下:display0 procshow: mo
24、v dx,my8255_cmov al,0111bout dx,almov al,clmov bx,offset dtable1xlatmov dx,my8255_bout dx,alcall dally用高低电平来控制数码管的显示,具体代;数码管显示子程序;写cd让第一个数码管亮;通过偏移地址寻地址;读b口mov dx,my8255_cmov al,1011bout dx,almov al,chmov bx,offset dtable0xlatmov dx,my8255_bout dx,alcall dallyretdisplay。endp4.2.4电压报警模块代码写cd让第二个数码管亮结束
25、子程序电压报警模块中,主要是对电压值的大小进行判断,若大于 3.0v,则蜂鸣器工作,发出一定频率的声音,并在数码管显示e.0,若小于3.0v,则显示当前电压值,具体代码如下:alarm proccmp cl,3jb show2 cmp cl,3 jz show3 jmp show1show3: cmp ch,0 jz show2jmp show1调用报警子程序判断整数部分是否小于3 小于3则跳转到show2 断整数部分是否等于3 等于3则跳转到show3 否则跳转到show1判断小数部分是否等于3 等于则跳转到show2 否则跳转到show1show1: mov dx,offset str1m
26、ov ah,09h;显示str1的内容int 21h;报警call xiangcall delaymov ah,01hint 16h;判断是否有按键按下jne quitjmp start1show2: mov dx,offset str2mov ah,09h;显示str2的内容,不报警int 21h call display。调用电压显示判断是否有按键按下;mov ah,01h int 16h jne quit jmp start1alarm endp总结本系统是一个电压报警系统,是对超过额定电压值3.0后进行报警,并显示 e.o,若没有超过则显示当前电压值。在课程设计的开始,我在试验箱上模拟
27、出 该功能的实现,最开始只要一打开电源开关就会产生刺耳的蜂鸣音。要么就是数 码管显示不出应该有的数据,而是乱码,或者位数显示不全,这让我非常着急。 本系统有需要改进的地方,在报警的时候,数码管上的e会随着报警声的频率变 化而不断闪烁。在整个电压报警系统设计过程中,如何显示一个小数。如何对额定电压值 3.0v的判断。本系统还可以如何设计提高系统总线的利用率问题,这样大大的 提高了系统的运行效率。要完善本系统的设计需要开发者有一定的硬件知识和过 硬的编程基础。致谢本次课程设计几乎困难重重,对汇编语言的不熟悉导致分析问题不到位, 影 响了课程设计的进度。在本次课程设计指导老师很细心的给同学们以启发,
28、 而不 只是解决问题本身。同时感谢学校给我们提供了丰富的教育资源,先进的实验设 备。这给我们的学习提供了丰富的物资条件。 同时要表达对同学的谢意,他们的 细心讲解对我的课程设计帮助很大。参考文献1赵树升,赵雪梅.现代微机原理及接口技术m,北京:清华大学出版社,2008 年8月2戴梅萼.微型计算机技术及应用一一从16位到32位(第2版)m,北京:清华大学出版社,2003年2月3西安唐都科教仪器公司.32位微机原理与接口技术实验教程.2005年4西安唐都科教仪器公司.32位微机原理与接口技术用户手册.2005年电压报警系统程序代码:.*8254芯片端 口资源 *ioy1equ 0da40hmy82
29、54_c0 equ ioy1+00h*4my8254_c1 equ ioy1+01h*4my8254_c2 equ ioy1+02h*4my8254_mode equ ioy1+03h*4*;* 8255a 芯片端 口 资源ioy0 equ 0da00hmy8255_a equ ioy0+00h*4my8255_b equ ioy0+01h*4my8255_c equ ioy0+02h*4*my8255_mode equ ioy0+03h*4;* adc0809芯片端 口 资源ioy2 equ 0da80h ;0809片选地址adc0809 equ ioy2+00hdata segmentdt
30、able0 db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh; 键值表,09对应的7段数码管白段位值,不带小数点dtable1 db 0bfh,86h,0dbh,0cfh,0e6h,0edh,0fdh,87h,0ffh,0efh 键值表,09对应的7段数码管白段位值,带小数点str0 db *warning system start!* $str1 db str1 warning! $str2 db str2 normal!$data endsstack1 segment stackdw 256 dupstack1 endscode segmentstart
31、: mov ax,datamov ds,axmov dx,my8255_modemov al,80h;out dx,almov dx,offset str0mov ah,09hint 21hassume cs:code,ds:data初始化寄存器;8255 初始化工作方式为0, a口,b 口都为输出显示str0的内容重庆科技学院微机原理与接口技术课程设计报告start1:mov dx,adc0809mov al,0out dx,al mov cl,al call delay call delay call delaymov dx,adc0809 in al,dxmov cl,alcall de
32、laycall transformcall delaymov dx,my8255_amov al,00h out dx,alcall alarm call delaymov ah,01hint 16hjne quitjmp start1quit: mov ah,4chint 21h启动ad转换通过adc0809俞出将ad转换后的值送到cl当中去软件延时读出转换结果软件延时调用电压转换让报警器停止工作调用电压报警判断是否有按键按下主程序结束transform proc;转换为电压的子程序change: movl,cl mov bl,33h div bl mov cl,al mov al,ah m
33、ov ah,00h mov bl,10 mul bl mov bl,33h;将刚才送到cl的ad转换值后送到al当中去;将0-255的值转换为0-5v的电压值;将除的商送到cl中去;将除后的余数送到al中去;对余数扩大10倍;再除以刚才的除数21重庆科技学院微机原理与接口技术课程设计报告将获得商送到ch中去调用报警子程序判断整数部分是否小于3 小于3则跳转到show2 断整数部分是否等于3等于3则跳转到show3 否则跳转到show1判断小数部分是否等于3 等于则跳转到show2 否则跳转到show1显示str1的内容报警判断是否有按键按下显示str2的内容,不报警调用电压显示判断是否有按键按
34、下定义一个功能模块进行报警初始化8254工作方式定时器0、方式3div blmov ch,alrettransform endpalarm proccmp cl,3jb show2cmp cl,3jz show3jmp show1show3: cmp ch,0jz show2jmp show1show1: mov dx,offset str1mov ah,09h;int 21h;call xiangcall delaymov ah,01hint 16h;jne quitjmp start1show2: mov dx,offset str2mov ah,09h;int 21hcall display0 ;mov ah,01hint 16h;jne quitjmp start1alarm endpxiang proc 的发声控制mov dx,my8254_modemov al
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 时尚设计师工作室行业深度调研及发展战略咨询报告
- 高效油气开采方案设计服务行业跨境出海战略研究报告
- 抗病毒创新药物行业跨境出海战略研究报告
- 2025-2030中国卫生巾行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国单背带行业市场运营模式及未来发展动向研究报告
- 2025-2030中国半封闭式屏蔽门行业市场发展趋势与前景展望战略分析研究报告
- 2025-2030中国千斤顶行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国医用床椅市场运营状况分析与投资策略深度研究报告
- 2025-2030中国动力平板运输车行业市场发展分析及竞争格局与投资前景研究报告
- 2025-2030中国办公用品行业十四五发展分析及投资前景与战略规划研究报告
- 人教版七年级历史《第7课 辽、西夏与北宋的并立》课件
- 重症肺炎的护理
- JJF1030-2023温度校准用恒温槽技术性能测试规范
- YYT 1849-2022 重组胶原蛋白
- 幼儿园小班教案《彩灯》
- 2023年财政部部属单位招聘考试真题及答案
- 网约车公司运营细则
- 2022年四川省绵阳市中考语文真题
- 环境民事公益诉讼法律制度研究的开题报告
- 成人癌性疼痛指南解读护理课件
- 医疗纠纷预防和处理条例通用课件
评论
0/150
提交评论