微机原理课程设计021210331曹娇娇.docx
《微机原理课程设计021210331曹娇娇.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计021210331曹娇娇.docx(21页珍藏版)》请在冰豆网上搜索。
微机原理课程设计021210331曹娇娇
《微机原理课程设计报告》
题目:
微机原理与接口技术课程设计
院 系:
电子电气工程学院
学号:
021210331
姓名:
曹娇娇
授课教师:
戎自强
微机原理课程设计
课程设计目的及基本要求
本课程设计时微机原理与接口技术课程的配套内容。
微型计算机在很多场合作为一个控制系统的控制部件或作为一个设备的智能化不兼容入系统中。
充分认识理论知识对应技术的指导作用,进一步加强理论知识与实践相结合,加深对专业知识和理论知识的认识和理解。
对于自动化专业的学生了解和认识危机的硬件和输入输出的接口技术是十分必要的。
课程设计有利于基础知识的理解和逻辑思维的锻炼。
一、设计题一
1.1、设计目的
熟练掌握8088汇编语言程序各种结构的设计及编程方法
熟练掌握DOS中断功能调用的方法。
1.2、设计内容
编制一个完整的程序,计算100个正整数(字数据)之和,如果不超过机器数的范围(65535),则计算其平均值并存于(RUSULT)中,否则显示“overflow”。
1.3、设计要求
设计源程序(设计流程图、编制源程序);
输入源程序、汇编、链接、在DOS下运行执行文件;
用DEBUG观看数据缓冲区的内容并与屏幕显示内容作比较,验证其统一性。
说明或分析结果。
1.4、源程序程序设计
DSEGSEGMENT
MEMDW100DUP(?
)
ERRDB'overflow!
',0DH,0AH,'$'
RESULTDW2DUP(?
)
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
LEASI,MEM
MOVAX,00H
MOVCX,100
LP1:
ADDAX,[SI]
JCLP2
ADDSI,2
LOOPLP1
MOVBX,100
DIVBX
MOVRESULT,AX
JMPLP3
LP2:
MOVDX,OFFSETERR
MOVAH,09H
INT21H
LP3:
MOVAH,4CH
INT21H
CODEENDS
ENDSTART
1.5流程图如下所示
1.6调试结果和程序结果分析
1)当输入的100个正整数全为880的时候。
调试结果如下图示:
2)当输入的一百个正整数全为64时,调试结果如下:
1.7分析:
1)当输入的100个正整数全是880的时候,计算结果超出了计算机本身的范围(65535),因此,结果显示溢出,即“overflow!
”
2)当输入的100个正整数全是64的时候,计算结果为6400,小于计算机本身范围(65535),因此计算机将计算平均值且将结果存于“result”中,由调试结果知,平均值为64。
二、设计题二
2.1、设计目的
掌握8088CPU及存储器硬件接口电路的设计连接,
掌握相关硬件驱动软件设计及信息处理软件的设计调试的方法。
2.2、设计内容
设计十字路口交通灯控制系统。
基本要求是完成双向红灯黄灯的配合控制。
附加内容为基本电路中加入必要的灯光闪动,人行定时显示等。
2.3、设计要求
设计电路图,说明部件与信号的意义与作用(工作原理);
在实验平台上链接构成系统
控制程序的设计并说明(包括流程图和源程序)
说明或分析结果
2.4、实验电路及连线
实验箱上,用于交通灯设计的模块有如图所示的接口式样,通过高低电平的测试,得知DG是指灯亮绿色,DR是指灯亮红色,如果两者同时驱动,则亮黄灯。
四个灯及其接口排列如右图所示
被控制的灯的位置
(相对于示意图)
8255输出接口
接入灯的接口
灯的颜色变化
附加变化
左方灯
PC0
DG1
绿灯
同时亮起,变为黄灯
PC4
DR1
红灯
上边灯
PC1
DG2
绿灯
PC5
DR2
红灯
下边灯
PC2
DG3
绿灯
PC6
DR3
红灯
右方灯
PC3
DG4
绿灯
PC7
DR4
红灯
2.5、程序如下:
DATASEGMENT
DATAENDS
STACKSEGMENTSTACK
STADW50DUP(?
)
TOPEQULENGTHSTA
STACKENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,ES:
DATA,SS:
STACK
START:
MOVAL,80H
MOVDX,203H
OUTDX,AL
MOVDX,202H
A:
MOVAL,096H
OUTDX,AL
CALLDELAY
MOVAL,09FH
OUTDX,AL
CALLDELAY
MOVAL,096H
OUTDX,AL
CALLDELAY
MOVAL,09FH
OUTDX,AL
CALLDELAY
MOVAL,096H
OUTDX,AL
CALLDELAY
MOVAL,09FH
OUTDX,AL
CALLDELAY
MOVAL,096H
OUTDX,AL
CALLDELAY
MOVAL,09FH
OUTDX,AL
CALLDELAY
MOVAL,096H
OUTDX,AL
CALLDELAY
MOVAL,06H
OUTDX,AL
CALLDELAY
MOVAL,069H
OUTDX,AL
CALLDELAY
MOVAL,06FH
OUTDX,AL
CALLDELAY
MOVAL,069H
OUTDX,AL
CALLDELAY
MOVAL,06FH
OUTDX,AL
CALLDELAY
MOVAL,069H
OUTDX,AL
CALLDELAY
MOVAL,06FH
OUTDX,AL
CALLDELAY
MOVAL,069H
OUTDX,AL
CALLDELAY
MOVAL,06FH
OUTDX,AL
CALLDELAY
MOVAL,069H
OUTDX,AL
CALLDELAY
MOVAL,09H
OUTDX,AL
CALLDELAY
JMPA
DELAYPROCNEAR
MOVBX,1CAH
CNT1:
MOVCX,0DFH
CNT2:
LOOPCNT2
DECBX
JNZCNT1
RET
DELAYENDP
CODEENDS
ENDSTART
2.6、拓展内容
在原有基础上,我们利用实验箱上的八个小灯,加入了倒计时系统。
程序如下:
DATASEGMENT
DATAENDS
STACKSEGMENTSTACK
STACKENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA,ES:
DATA,SS:
STACK
START:
MOVAL,82H
MOVDX,203H
OUTDX,AL
MOVBL,02H
MOVDX,201H
B:
INAL,DX
TESTAL,BL
JNZB
MOVDX,202H
A:
MOVAL,96H
OUTDX,AL
CALLDELAY
MOVAL,96H
OUTDX,AL
CALLDELAY
MOVAL,96H
OUTDX,AL
CALLDELAY2
MOVAL,06H
OUTDX,AL
CALLDELAY
MOVAL,06H
OUTDX,AL
CALLDELAY
MOVAL,69H
OUTDX,AL
CALLDELAY
MOVAL,69H
OUTDX,AL
CALLDELAY
MOVAL,69H
OUTDX,AL
CALLDELAY2
MOVAL,09H
OUTDX,AL
CALLDELAY
MOVAL,09H
OUTDX,AL
CALLDELAY
JMPA
DELAYPROCNEAR
MOVBX,1CAH
CNT1:
MOVCX,0DFH
CNT2:
LOOPCNT2
DECBX
JNZCNT1
RET
DELAYENDP
DELAY2PROCNEAR
OUTDX,AL
MOVDX,200H
MOVAL,0FFH
OUTDX,AL
CALLDELAY
MOVAL,000H
OUTDX,AL
CALLDELAY
MOVAL,081H
OUTDX,AL
CALLDELAY
MOVAL,0C3H
OUTDX,AL
CALLDELAY
MOVAL,0E7H
OUTDX,AL
CALLDELAY
MOVDX,202H
RET
DELAY2ENDP
CODEENDS
ENDSTART
2.7、实验框图
2.8电路内部结构及连线
2.9、8255结构框图
2.10、结果分析
程序开始后,从8255输出信号096H,二进制表示为10010110B,对应8个输入灯接口。
其中DG1是1,DR1是0,所以左方向灯为绿色,以此类推,右方向灯为绿色,上、下两个灯为红色。
接着8255输出信号09FH,对应二进制为10011111B,DG1和GR1都是1,则左方向灯为熄灭,同理右方向灯也熄灭。
这样反复输入096H和09FH几次,造成左、右方向灯闪烁。
然后输入06H,二进制表示为00000110B,左、右方向灯变为黄灯。
接着输入069H,二进制表示为01101001B,这样,左、右方向灯变为红灯,上、下方向灯变为绿灯,完成红绿灯转换。
8255输出信号06FH,二进制表示为01101111B,这样上、下方向灯熄灭,反复几次,造成闪烁效果。
最后输入09H,二进制表示为00001001B,上、下方向灯变为黄灯。
只要最后进行跳转,重新开始输入信号即可。
前半部分程序,和原来的不变,后面添加了延时程序。
每当绿灯闪烁的的时候,延时开始,八个灯从两边开始往里改变、每次两边各灭个。
当绿灯再次开始闪烁时再进入新的倒计时。
除此之外,我们组还想了许多其他的拓展内容,比如在箱子左上方有个数字记数器,如果有他来做倒记时的记数器那会显得更加直观。
三、实验总结
以前从来没有学过关于汇编语言的知识,到学习VB,C语言等汇编语言,再到这次的微型计算机原理与接口技术,做课程设计充满着挑战和趣味。
微型计算机原理起初学起来就觉得很难。
当要进行课程设计时心里面感觉多少有些害怕和担心。
但是后面听了老师和同学的讲解之后,担心变少了很多,倒是跃跃欲试的冲动多了很多。
所以一直想尽自己最大的努力,做好这次的课程设计。
此次微机课程设计让我懂得了实践的重要性。
一方面,它加深与巩固了所学的各章节的理论,并将其综合运用,提高了我们综合运用知识;另一方面,培养了我们对专业知识学习的兴趣。
通过设计交通灯数字控制系统将软硬充分相结合,学会了很多有用的知识锻炼了软硬相互协调的能力。
同时也增强了全面系统考虑问题的能力,以及硬件设计能力。
这对以后的学习和工作具有重要的指导意义!
即使课本知识掌握了,如果不会综合运用,也是一些支离破碎的无用的知识,而如果能够运用而实际动手能力很差,理论与实践结合不起来,学得再好也没用。
这次课程设计恰好是将课本知识与的巩固与综合运用结合起来,再加上实际动手能力的培养三者结合起来的。
这次设计让我明白了一个道理,做任何事前之前,不管完成它的时间有多么充裕,开始的态度都要摆好,都要认真去对待,到最后才不会后悔。
最后谢谢老师这个学期的指导和帮助!
四、参考文献
[1]宋杰等主编.微机原理与接口技术课程设计——高等院校计算机课程设计指导丛书.北京:
机械工业出版社.2005
[2]李国栋主编.微机原理与接口技术课程设计(高等院校计算机技术与应用系列规划教材).浙江:
浙江大学出版社.2007
[3]陆红伟主编.微机原理实验与课程设计指导书(普通高等教育十一五规划教材).北京:
中国电力出版社.2006
[4]郑家声主编.微型计算机原理与接口技术.北京:
机械工业出版社.2004
[5]顾滨主编.80X86微型计算机组成/原理及接口.北京:
机械工业出版社.2001
[6]周明德.《微型计算机系统原理及应用》[M],北京:
清华大学出版社,1998;[7]徐慧民主编,《微机原理与接口技术》,高等教育出版社,2007.第一版
[8]《微机原理与接口技术实验指导书》,上海海事大学电工电子实验中心,2011
[9]郑学坚编著《微型计算机原理及应用》,清华大学出版社2001,第三版
[10]刘红玲,赵梅主编,《微机原理与接口技术实用教程》电子工业出版社,2008.1
学号:
021210331
姓名:
曹娇娇
学院:
电子电气工程学院
专业:
自动化