微机原理课程设计电压报警器实验报告Word文档格式.docx
《微机原理课程设计电压报警器实验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计电压报警器实验报告Word文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
3.设计要求.........................................................2
4.设计原理.........................................................3
5.硬件电路图.....................................................3
6.程序代码.........................................................5
7.程序及硬件系统调试情况.............19
8.设计总结与体会...........................................19
一、设计目的
课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。
它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。
通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。
让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。
通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。
通过课程设计实践,不仅要培养学生事实和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。
二、设计容
设计一个电压报警器,要求采集实验箱提供的0~5V的电压,当输入电压在3V以,显示电压值,如2.42。
当输入电压超过3V,显示ERR,并报警。
电压值可在七段数码管显示,点阵广告屏显示或液晶屏显示。
报警形式自行设计,可用灯光闪烁表示,蜂鸣器鸣响报警等形式。
(电压值以一种方式正确显示,无报警◆)(电压值以一种方式正确显示,且有一种形式的报警◆)(电压值以2种方式正确显示,且有2种形式的报警★)(电压值以3种方式正确显示,且有2种形式的报警★☆)
三、设计要求
在课程设计时,2~4人一组,在教师指导下,各组可以集体讨论,但设计报告由学生独立完成,不得互相抄袭。
教师的主导作用主要在于指明设计思路,启发学生独立设计的思路,解答疑难问题和按设计进度进行阶段审查。
学生必须发挥自身学习的主动性和能动性,主动思考问题、分析问题和解决问题,而不应处处被动地依赖指导老师。
同组同学要发扬团队协作精神,积极主动的提出问题、解决问题、讨论问题,互相帮助和启发。
学生在设计中可以引用所需的参考资料,避免重复工作,加快设计进程,但必须和题目的要求相符合,保证设计的正确。
指导教师要引导学生学会掌握和使用各种已有的技术资料,不能盲目地、机械地抄袭资料,必须具体分析,使设计质量和设计能力都获得提高。
学生要在老师的指导下制定好自己各环节的详细设计进程计划,按给定的时间计划保质保量的完成个阶段的设计任务。
设计中可边设计,边修改,软件设计与硬件设计可交替进行,问题答疑与调试和方案修改相结合,提高设计的效率,保证按时完成设计工作并交出合格的设计报告。
四、设计原理
通过滑动变阻器来模拟外界的电压,电压值通过0808A/D转换器将模拟量变为数字量,并将信号输入给8086,8086获得电压值后,将该电压值与3V进行比较。
当电压小于3V时,数码管显示相应的电压值,同时8行8列的点阵显示“OK”。
如果电压值大于3V,数码管循环显示“ERROR”、点阵显示“!
”,同时,工作在方式3的8253定器会产生一个不可中断屏蔽信号来控制灯的闪烁和喇叭的鸣笛来报警。
五、硬件电路图
8086CPU以及译码部分电路图及外设控制电路
六、程序代码
.MODELSMALL
.8086
.data
buffdb4dup(?
)
tabdb3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
ledaequ800H
ledbequ802h
adc1equ902H
ledcequ804H
.code
movdx,806h
moval,10000000b
outdx,al
movdx,306h
moval,36h
movax,1000
movdx,300h
moval,ah
moval,76h
start:
movax,data
movds,ax
moval,00h
movdx,ledb
movdx,600h
moval,01000000b
movdx,500h
moval,00000000b
movcx,0fh
lop1:
looplop1
movdx,adc1
nop
inal,dx
movbl,al
cmpal,99h
jbnext
moval,01h
moval,00100000b
lop0:
looplop0
next:
moval,bl
notal
movah,0
movbx,5000d
mulbx
movbx,255d
divbx
movbx,ax
movax,5000d
subax,bx
jmpbin2dec
con:
moval,00000111b
movdx,ledc
moval,buff[0]
movsi,ax
moval,tab[si]
addal,80h
movdx,leda
movcx,10d
loop$
moval,00001011b
moval,buff[1]
moval,00001101b
moval,buff[2]
moval,00001110b
moval,buff[3]
deccx
jmpstart
bin2dec:
pushbx
pushdx
pushcx
xordx,dx
movbx,1000
movcl,al
movbyteptrbuff[0],cl
movax,dx
movbx,100
movbyteptrbuff[1],cl
movbx,10
movbyteptrbuff[2],cl
movcl,dl
movbyteptrbuff[3],cl
popcx
popdx
popbx
jmpcon
END
七、程序及硬件系统调试情况
当电压值大于3V时,警示灯会闪烁且会鸣笛,同时数码管显示电压值、点阵显示“!
”。
报警器报警,警示灯闪烁。
电压值没有超过3V时,改变滑动变阻器阻值后,数码管会显示相应的电压值,报警器不报警,闪烁灯不闪。
八、设计总结与体会
通过本次课程设计使大家更加熟练的掌握了微机系统与接口扩展电路的设计方法,能够熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。
在课程设计过程中,我们组相互协助,集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,通过不断的修改完善,完成了相关的课题。
实验中,大家对微机相关方面的知识有了更进一步的认识和掌握。
学会了运用理论知识来解决实际问题,锻炼了我们在学完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力。
通过这次的微机原理课程设计实验,使我们更好的掌握8086微机系统中各种芯片的连接方式,以及在8255作为并行接口芯片的情况下,0809和数码管等一些应用部件在系统中的应用。
不仅如此,在编程的同时也让我们对微机原理课程的理论知识也有了更深刻的巩固和理解,实验技能也有了进一步的提高,作为利用所学理论来解决实际问题方面,我们掌握了分析相对复杂的电路,以及进行对应的程序编程。
在课程设计中,我们也遇到了许多的问题,其中一个比较困难的问题就是:
如何将直接采集来的模拟量转化为数字量?
经过思考和讨论,设定为电压的5V,数字量的255,这样,对应到下面的3伏即为数字量的153,即为十六进制的99H,这样就把问题圆满解决了。
就这样大家通过仔细的查找排除了错误,实现的预期的功能。
总之,通过这次实验,我们认识到了每一个细节都是很重要的,我们要做到认真仔细,真正做到理论联系实际,提高自身分析问题、解决问题的能力。