微机原理课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、设计内容
设计一个投票统计器,完成投票、计票统计和票数显示等功能。
二、设计原理及方案
在8086最小工作模式下,连接一块8255A芯片。在 8255A的C端口连接8个开关,开关按下表示支持,灯亮,开关不按便是反对,灯不亮,从8255A的C端口输入投票结果,经8086运算统计出结果;在 8255A的A端口连接一块7段LED数码管,将输出结果通过数码管显示出来。
电路图:
程序代码:
A_PROT EQU 200H ;可通过计算获得,连接的是IO1 B_PROT EQU 202H
C_PROT EQU 204H
CT_PROT EQU 206H
DATA SEGMENT
TAB1 DB 7FH,07H,7DH,6DH,66H,4FH,5BH,06H,3FH
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DX,AX
MOV AL,10001001B ;A端口输出,C端口输入
MOV DX,CT_PROT
OUT DX,AL ;控制字写入
MOV DX,C_PROT ;C端口清零
MOV AL,0
OUT DX,AL
AGAIN: MOV DX,C_PROT
IN AL,DX
接口技术课程设计TJ: XOR AH,AH ;统计1个数
MOV CX,8
LOOP1: SAL AL,1
ADC AH,0 ;进位加CF,以统计出C端口中1的个数
LOOP LOOP1
MOV AL,AH
PUSH BX
LEA BX,TAB1
XLAT
MOV DX,A_PROT
OUT DX,AL
PUSH CX ;延时10ms
MOV CX,2801
WAIT1: LOOP WAIT1
POP CX
JMP AGAIN
MOV AH,4CH
INT 21H
CODE ENDS
END START
三、运行结果
程序结果图:
四、设计总结与体会
为期一周的微机原理课程实践终于结束了,回过头来,感慨万千。过了一个多月,
书本上的好些知识已然忘却,刚开始拿到课题时,看到一大堆传说中的神器,霎时凌乱了,选来选去,从仅剩的课题中挑了“投票统计器”,上网搜索了一下,大体上把设计
的方向搞清了,接下来,便是开始设计了。
画模拟图对于我们来说,还是比较困难的,特别是8086那一块儿,大家参考网上
的资料,反复讨论,着实花了不少时间。接下来的画图连线就比较简单了,为了节省时间,在做模拟图的同时,其他两个人便开始编写程序了。将设计流程图简略写下来,对
照流程图,分块儿编写程序,显得很有条理,简单轻松些。
就这样,三次课之后,设计的图和程序都好了,只剩下调试程序,查看模拟结果了。这是检错和纠错的过程,轻松但也不轻松,因为那么多东西,如果看不仔细了,你就找
不到错误,也就没法儿解决问题了,费事费力还一无所获,这是最伤脑筋的事情。还好,运气不错,只是程序出现了小小的问题,改好之后,得到了很满意的结果。
最后的验收,是对书本与实践知识的融汇总结,本以为毫无问题的我们,没想到被
程序中的一个问题给秒杀了,大家四处找资料,和别的组的同学讨论,反复演算了半天,终于会了。当然,就算是会了,我们也只是懂得了微机原理中的一点皮毛而已,学的扎
实很重要,因为这样才能把理论知识运用到实践中去,不断地提高自己。
五、参考文献
1.周明德.微型计算机系统原理及应用.北京:清华大学出版社
2.张弥左,王兆月,邢立军等.微型计算机接口技术.北京:机械工业出版社
3.戴梅萼,史嘉权.微型计算机技术及应用.北京:清华大学出版社
4.沈美明,温冬婵.IBM-PC汇编语言程序设计.北京:清华大学出版社