微机原理-电压报警器的设计..pdf

上传人:tbuqq 文档编号:5224453 上传时间:2020-02-26 格式:PDF 页数:13 大小:781.43KB
返回 下载 相关 举报
微机原理-电压报警器的设计..pdf_第1页
第1页 / 共13页
微机原理-电压报警器的设计..pdf_第2页
第2页 / 共13页
微机原理-电压报警器的设计..pdf_第3页
第3页 / 共13页
微机原理-电压报警器的设计..pdf_第4页
第4页 / 共13页
微机原理-电压报警器的设计..pdf_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《微机原理-电压报警器的设计..pdf》由会员分享,可在线阅读,更多相关《微机原理-电压报警器的设计..pdf(13页珍藏版)》请在三一文库上搜索。

1、上海电力学院课程设计报告 课名:计算机硬件课程设计 题目:电压报警器的设计 院系:自动化工程学院 专业:自动化 班级: 姓名: 学号: 时间: 2015年 1 月 27 日 电压报警器的设计 一、开发目的 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决 实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系 实际的特点, 是培养在校工科大学生理论联系实际、敢于动手、 善于动手和独立 自主解决设计实践中遇到的各种问题能力的一个重要教学环节。 通过课程设计, 要求学生熟悉和掌握微机系统的软件、硬件设计的方法、 设 计步骤,使学生得到微机开发应用方面的初步训练。让

2、学生独立或集体讨论设计 题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理 论联系实际, 提高动手能力和分析问题、 解决问题的能力, 实现由学习知识到应 用知识的初步过渡。 通过本次课程设计使学生熟练掌握微机系统与接口扩展电路 的设计方法,熟练应用8086 汇编语言编写应用程序和实际设计中的硬软件调试 方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 通过课程设计实践, 不仅要培养学生事实求是和严肃认真的工作态度,培养 学生的实际动手能力, 检验学生对本门课学习的情况, 更要培养学生在实际的工 程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。 二、设计方案以及原

3、理 (一)设计方案 采集 05V的电压,当输入电压在3V以内,显示电压值,如2.42。当输入 电压超过 3V,显示 ERR ,并报警。电压值可在七段数码管显示,点阵广告屏显示 或液晶屏显示。报警形式自行设计, 可用灯光闪烁表示, 蜂鸣器鸣响报警等形式。 (二)设计原理 首先,用滑动变阻器来模拟外界电压的变化。滑动变阻器处于不同的阻值将 会有不同的电压输入。 电压值通过 0808A/D转换器将模拟量变为数字量, 并将信 号输入给 8086 微机。 8086 获得电压值后,将该电压值与3V进行比较。如果小 于 3V,8086 会产生控制信号使数码管显示相应的电压值,同时 8 行 8 列的点阵显 示

4、“OK ”。如果电压值大于3V,8086 会控制使得数码管显示“ERROR” 、点阵显 示“! ” 。再者,工作在方式3 的 8253 定器会产生一个不可中断屏蔽信号来控制 灯的闪烁和喇叭的鸣笛。 三、硬件原理图 (一)芯片选型 在本系统中,主要采用的芯片有CPU8086 、74154 译码器、 8254可编程定时 / 计数器芯片、 8255并行接口芯片、 A/D 转换接口芯片 ADC0809 。 CPU8086 主要是电压报警系统的核心芯片,协调着8253芯片, 8255 芯片, ADC0809 芯片相互间的工作; 8253 是可编程定时 / 计数器芯片, 用来控制蜂鸣器; 8255是并行接

5、口芯片,用来连接数码管显示单元和8253芯片; ADC0809 是 A/D 转换单元,用来模拟电压,将模拟信号转换为数字信号。 (二)硬件原理图 1、CPU8086 和 74154译码器模块 2、ADC0809 模块 3、8255和 8253模块 4、点阵显示模块 四、程序流程图 (一)主程序流图 (二)电压报警流图 五、汇编程序 .MODEL SMALL .8086 .data buff db 4 dup(0) tab db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh leda equ 800H ledb equ 802h adc1 equ 902H le

6、dc equ 804H .code mov dx,806h ; 8255 mov al,10000000b out dx,al mov dx,306h ;8253 mov al,36h out dx,al mov ax,1000 mov dx,300h out dx,al mov al,ah out dx,al mov dx,306h mov al,76h out dx,al mov ax,1000 mov dx,302h out dx,al mov al,ah out dx,al start: mov ax,data mov ds,ax mov al,00h mov dx,ledb out

7、dx,al mov dx,600h mov al,00000000b out dx,al mov dx,500h mov al,00000000b out dx,al mov cx,0fh lop1:loop lop1 mov al,00h mov dx,adc1 out dx,al nop in al,dx ;8 位电压 mov bl,al cmp al,99h jb next mov al,01h mov dx,ledb out dx,al mov dx,600h ;点阵锁存! mov al,00011000b out dx,al mov dx,500h mov al,00100000b

8、out dx,al mov cx,0fh lop0:loop lop0 mov cx,04fh lop5:loop lop5 mov al,00000111b mov dx,ledc ;8255 out dx,al mov al,79h mov dx,leda out dx,al mov cx,10d loop $ mov al,00001011b mov dx,ledc out dx,al mov al,50h mov dx,leda out dx,al mov cx,10d loop $ mov al,00001101b mov dx,ledc out dx,al mov al,50h m

9、ov dx,leda out dx,al mov cx,10d loop $ mov al,00001110b mov dx,ledc out dx,al mov al,buff3 mov ah,0 mov si,ax mov al,tabsi mov dx,leda out dx,al mov cx,10d loop $ dec cx jmp start next: ;计算 mov al,bl not al mov ah,0 mov bx,5000d mul bx mov bx,255d div bx mov bx,ax mov ax,5000d sub ax,bx jmp bin2dec

10、con: ;led 输出 mov al,00000111b mov dx,ledc out dx,al mov al,buff0 mov ah,0 mov si,ax mov al,tabsi add al,80h mov dx,leda out dx,al mov cx,10d loop $ mov al,00001011b mov dx,ledc out dx,al mov al,buff1 mov ah,0 mov si,ax mov al,tabsi mov dx,leda out dx,al mov cx,10d loop $ mov al,00001101b mov dx,ledc

11、 out dx,al mov al,buff2 mov ah,0 mov si,ax mov al,tabsi mov dx,leda out dx,al mov cx,10d loop $ mov al,00001110b mov dx,ledc out dx,al mov al,buff3 mov ah,0 mov si,ax mov al,tabsi mov dx,leda out dx,al mov cx,10d loop $ dec cx jmp start bin2dec: ;转为十进制 push bx push dx push cx xor dx,dx mov bx,1000 d

12、iv bx mov cl,al mov byte ptr buff0,cl mov ax,dx mov bx,100 xor dx,dx div bx mov cl,al mov byte ptr buff1,cl mov ax,dx mov bx,10 xor dx,dx div bx mov cl,al mov byte ptr buff2,cl mov cl,dl mov byte ptr buff3,cl pop cx pop dx pop bx jmp con END 六、程序运行结果分析与预测 连好硬件电路图、 载入程序后, 点击运行键, 程序的运行与预期的结果很相 近,能很好的完

13、成电压报警功能。当电压值大于 3V时,警示灯会闪烁且会鸣笛。 同时数码管显示“ ERROR” 、点阵显示“!” 。在没有超过 3V时,改变滑动变阻器 阻值后,数码管会显示相应的电压值。 实验过程中遇到的问题有:1、数码管显示的值与实际电压值之间存在微弱 的误差。解决办法:将滑动变阻器换成更灵敏的电压感应设备。2、数码管显示 数字时不太稳定。解决的办法是:在电路间加入锁存器和缓冲器等相关器件。 七、总结 在这次课程设计中也令我们学到了许多知识,从开始拿到题目无从下手到通 过查找各种资料并通过资料能够完成系统的整体设计,并通过参考其他资料理解 了系统程序运行流程。 通过这次的设计使我们认识到本人对单片机方面的知识知道的太少了,对于 书本上的很多知识还不能灵活运用,尤其是对程序设计语句的理解和运用,不能 够充分理解每个语句的具体含义,导致编程的程序过于复杂。 本次的设计使我们从中学到了一些很重要的东西,那就是如何从理论到实践 的转化,怎样将我们所学到的知识运用到我以后的实践中去。在大学的课堂的学 习只是在给我们灌输专业知识, 而我们应把所学的用到我们现实的中去,此次的 电压报警设计给我奠定了一个实践基础,我会在以后的学习、生活中磨练自己, 使自己适应于以后的竞争,同时在查找资料的过程中我也学到了许多新的知识, 对微机的概念和接口有了更加充分的理解。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1