单片机课程设计对两个外中断引脚上的中断计数.docx
《单片机课程设计对两个外中断引脚上的中断计数.docx》由会员分享,可在线阅读,更多相关《单片机课程设计对两个外中断引脚上的中断计数.docx(17页珍藏版)》请在冰豆网上搜索。
单片机课程设计对两个外中断引脚上的中断计数
科技学院
课程设计报告
(2011--2012年度第2学期)
名称:
单片机原理及应用
题目:
对两个外中断引脚上的中断计数
院系:
班级:
学号:
学生:
指导教师:
设计周数:
一周
成绩:
日期:
2012年6月6日
1、课程设计任务书…………………………………………………………3
1.目的与要求…………………………………………………………………3
2.主要容………………………………………………………………3
3.进度计划………………………………………………………………………3
4.程设计成果要求………………………………………………………………3
5.考核方式…………………………………………………………………3
2、课程设计的目的与要求……………………………………………………4
1.原器件清单…………………………………………………………………4
2.程序设计及说明……………………………………………………………4
3.软硬件调试……………………………………………………………………5
3、课程设计分析总结、结论……………………………………………………5
4、参考文献………………………………………………………………………6
五、附件
1.硬件电路图…………………………………………………………………6
2.程序流程图………………………………………………………………6
1>.主程序流程图…………………………………………………………7
2>.子程序流程图……………………………………………………………8
3.程序清单………………………………………………………………9
《单片机基础》课程设计
任务书
1、目的与要求
本次课程设计是使学生们加深对单片机课程容的理解。
通过对两个外中断引脚上的中断计数的设计,并led显示,使学生掌握单片机的设计步骤及软/硬件实现手段,为以后的工作和科学研究打下坚实的基础。
在keilIDE(μvision3)中完成应用程序设计、并编译;在PROTEUS下的ISISprofessional中完成电路设计、调试与仿真通过。
2、主要容
1)熟练掌握单片机汇编指令的使用方法;能够利用汇编语言设计出具有一定功能的数字频率计
2)熟练掌握LED显示器的控制与管理方法;
3)掌握单片机应用系统设计方法、软硬件调试方法;
3、进度计划
序号
设计(实验)容
完成时间
备注
1
选题、准备
1天
2
编制程序、上机调试
2天
3
答辩
1天
4、设计(实验)成果要求
设计报告
5、考核方式
答辩
学生:
程丹,邹闯
指导教师:
冰
2012年06月6日
二、课程设计的目的与要求
通过本实验加深对8051单片机中断系统的理解,学习外部中断的使用方法及相关编程,学习8段LED数码显示器的工作原理,掌握显示器的接口方法。
要求:
本设计同时允许两个外中断引脚
和
中断,连接
和
脚上的两个按键触发这两个中断时,在两个中断服务程序中则分别会对这两个中断计数,并显示在左右各3只LED数码管上,再设有两个按键,分别用于两组计数的清零操作。
三、设计正文
本实验程序利用AT89C51中外部中断引脚的
和
,
1.元器件清单
单片机80C51、led数码管,开关
2.设计说明
通过p3.2,p3.3外部的开关进行计数控制,通过通过中断服务子程序的控制,将所记的数通过led数码管显示,通过p2口进行led数码管的位控,通过p0口进行led数码管的段控,通过p1.0和p1.1外的开关分别对led左右两侧的数码管进行清零操作。
Led的工作原理:
数码显示器是由7段条形的LED组成,在右下角带有一个园形的LED作小数点用,这样一共有8段,恰好适用于8位的并行系统。
点亮适当的字段,就可显示出不同的数字。
数码显示器有共阴极和共阳极两种,共阴极显示器的公共阴极接地,当各段阳极上的电平为“1”时,该段点亮,电平为“0”时,段就熄灭;共阳极显示器的公共阳极接+5V电源,当各段阴极上的电平为“0”时,该段就点亮,电平为“1”时,段就熄灭。
3、程序框图
四、课程设计(综合实验)总结或结论
通过我们的这个课题,我们发现理论与实际真的差的很远,就比如说你明明看着这个程序没有问题,但是实际效果就是不能达到预期效果。
“知识不是力量,把知识转换为东西才是力量”不过这句话的前提当然是你得掌握知识才行,所以学好理论仍然很重要。
另外,给我们的另一体会就是做事的时候一定马虎不得,一点点的马虎就有可能导致整个项目的失败,可谓千里之堤毁于蚁穴,任何的疏忽都应该尽量避免。
开始的时候感觉困难重重,后来慢慢也就习惯了这种困难,或许说可以重这种困难中获得一种乐趣,比如说当你找到一个程序中的错误然后调试成功之后的那种感觉真的很舒服,很享受,过程感觉很辛苦,但是却很值得,回想一下,感觉还不错。
这次试验让我们将一些理论知识与实践相结合,一方面更加深刻了我们对这门课的认识,巩固了我们的理论知识。
另一方面也提高了实验操作能力。
经过这么长时间的努力,我们终于完成了本次设计项目的基本要求,完成了本次设计。
五、参考文献
[1]马忠梅.单片机的C语言应用设计.航空航天大学,2007
[2]夏季强、邢春香.单片机应用设计培训教程.航空航天大学2008.01
[3]马潮.AVR单片机嵌入式系统原理与应用实践.航空航天大学2007.10
[4]欧伟明、何静、凌云、剑.单片机原理与应用系统设计2009.07
六、附录(设计流程图、程序、表格、数据等)
1、硬件电路图
2、程序清单
ORG0000H
AJMPMAIN
ORG0003H
AJMPAA
ORG0013H
AJMPBB
MAIN:
MOVSP,#30H
SETBIT0
SETBIT1
SETBEA
SETBEX0
SETBEX1
MOV40H,#0C0H
MOV41H,#0C0H
MOV42H,#0C0H
MOV43H,#0C0H
MOV44H,#0C0H
MOV45H,#0C0H
MOVR0,#50H
MOVR1,#56H
MOVR2,#06H
FZ:
MOVR0,#00H
INCR0
MOVR0,#0AH
INCR0
DJNZR2,FZ
H:
CLRA
MOVP2,A
SETBP2.0
MOVA,42H
MOVP0,A
LCALLDELAY
CLRA
MOVP2,A
SETBP2.1
MOVA,41H
MOVP0,A
LCALLDELAY
CLRA
MOVP2,A
SETBP2.2
MOVA,40H
MOVP0,A
LCALLDELAY
CLRA
MOVP2,A
SETBP2.3
MOVA,45H
MOVP0,A
LCALLDELAY
CLRA
MOVP2,A
SETBP2.4
MOVA,44H
MOVP0,A
LCALLDELAY
CLRA
MOVP2,A
SETBP2.5
MOVA,43H
MOVP0,A
LCALLDELAY
MOVA,#0FFH
MOVP1,A
JNBP1.0,LOOP
JNBP1.1,LOP
LJMPH
LOOP:
MOV40H,#0C0H
MOV41H,#0C0H
MOV42H,#0C0H
MOVR2,#03H
MOV50H,#00H
MOV51H,#0AH
MOV52H,#00H
MOV53H,#0AH
MOV54H,#00H
MOV55H,#0AH
LJMPH
LOP:
MOV43H,#0C0H
MOV44H,#0C0H
MOV45H,#0C0H
MOVR2,#03H
MOV56H,#00H
MOV57H,#0AH
MOV58H,#00H
MOV59H,#0AH
MOV60H,#00H
MOV61H,#0AH
LJMPH
AA:
MOVR0,#50H
MOVA,R0
MOVDPTR,#NTAB
MOVCA,A+DPTR
MOV40H,A
INCR0
INCR0
MOVA,R0
MOVR2,A
DJNZR2,SHIWEI
MOVR0,#0AH
MOV50H,#00H
INCR0
INCR0
AJMPSHIWEIJIA
SHIWEI:
MOVA,R2
MOVR0,A
INCR0
MOVA,R0
MOVDPTR,#TABLE
MOVCA,A+DPTR
MOV41H,A
INCR0
MOVA,R0
MOVR2,A
BAIWEI:
MOVA,R2
MOVR0,A
INCR0
MOVA,R0
MOVDPTR,#TABLE
MOVCA,A+DPTR
MOV42H,A
RETI
SHIWEIJIA:
MOVA,R0
MOVDPTR,#TABLE
MOVCA,A+DPTR
MOV41H,A
INCR0
MOVA,R0
MOVR2,A
DJNZR2,BAIWEI
MOVR0,#0AH
MOV52H,#00H
INCR0
INCR0
AJMPBAIWEIJIA
BAIWEIJIA:
MOVA,R0
MOVDPTR,#TABLE
MOVCA,A+DPTR
MOV42H,A
RETI
BB:
MOVR1,#56H
MOVA,R1
MOVDPTR,#NTAB
MOVCA,A+DPTR
MOV43H,A
INCR1
INCR1
MOVA,R1
MOVR3,A
DJNZR3,BSHIWEI
MOVR1,#0AH
MOV56H,#00H
INCR1
INCR1
AJMPBSHIWEIJIA
BSHIWEI:
MOVA,R3
MOVR1,A
INCR1
MOVA,R1
MOVDPTR,#TABLE
MOVCA,A+DPTR
MOV44H,A
INCR1
MOVA,R1
MOVR3,A
BBAIWEI:
MOVA,R3
MOVR1,A
INCR1
MOVA,R1
MOVDPTR,#TABLE
MOVCA,A+DPTR
MOV45H,A
RETI
BSHIWEIJIA:
MOVA,R1
MOVDPTR,#TABLE
MOVCA,A+DPTR
MOV44H,A
INCR1
MOVA,R1
MOVR3,A
DJNZR3,BBAIWEI
MOVR1,#0AH
MOV58H,#00H
INCR1
INCR1
AJMPBBAIWEIJIA
BBAIWEIJIA:
MOVA,R1
MOVDPTR,#TABLE
MOVCA,A+DPTR
MOV45H,A
RETI
DELAY:
MOVR5,#20
D1:
MOVR6,#20
D2:
MOVR7,#10
DJNZR7,$
DJNZR6,D2
DJNZR5,D1
RET
NTAB:
db0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,0C0H
table:
db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,0C0H
END