单片机课程设计30s倒计时.docx
《单片机课程设计30s倒计时.docx》由会员分享,可在线阅读,更多相关《单片机课程设计30s倒计时.docx(12页珍藏版)》请在冰豆网上搜索。
单片机课程设计30s倒计时
课程设计:
30S倒计时
专业班级12级电信3班
姓名:
吕尹红查俊逸彭祝凡
学号:
***************************
指导教师:
***
物理与电气工程学院
2014年6月2日
1.程设计的目的和任务.......................................3
1.1单片机秒表课程设计的概述.....................3
1.2课程设计思路及描述.................................4
1.3课程设计要求...................................4
2系统硬件方案设计............................................4
2.1系统方框图..............................................4
2.2电路原理图.................................................4
2.3软件设计....................................................6
3程序流程图................................................6
4心得与体会....................................................7
5参考文献..........................................................8
6附录..............................................................8
1.1单片机秒表课程设计的概述
题目:
用STCC52RC设计一个3位LED数码显示“秒表”,显示时间为30.0秒,定义了三个键,其功能分别是复位,暂停,切换20S或30S。
意义:
1)通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程应用进一步了解。
2)掌握定时器,外部中断的设置和编程原理
3)通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。
4)该课程设计通过单片机的定时器/计数器和计数原理,设计简单的计时器系统,拥有正确的计时,暂停,换30S或20S定时并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义。
仪器:
集成电路芯片STCC52RC,八段数码管,Tx-1C单片机开发版,STC-51系列单片机软件Keiluvision3.
1.2课程设计思路及描述
该课程设计要求进行计时并在数码管上显示时间,则可利用STC-51系列单片机的芯片AT89C52的P3.0,P3.2,P3.3作为按键的入口;定时器T1作为每1秒减一的定时器,
P3.0口是复位键,
P3.2口是转换20s,30s倒计时键,
P3.3口是暂停/开始键,
本来T0作为定时器,由于考虑到优先级所以用了T1.
1.3课程设计要求
要求:
画出电路原理图,软件编程与调试。
2系统硬件方案设计
2.1系统方框图
2.
2晶振原理图
晶振电路:
为单片机提供时钟信号
复位电路:
分
为上电复位和按键复位
上为按键模块,数码管显示模块;
2.3软件设计
定时器T1:
用于程序倒计时;
外部中断INT1:
用于停止,开始功能;
外部中断INT0:
用于切换20S或30S倒计时;
P3.0复位键
3程序流程图
T1中断程序
YY
INT1中断
INT0中断
Y
4心得体会
通过这次课程设计,我们对单片机的相关知识有了更深的了解。
首先亲自焊接单片机开发版提高了我们的动手能力,其次学会了Keil汇编软件,最后对单片机的内部资源及汇编语言有了更深一步的了解。
此外对单片机组成电路有一定了解,如晶振电路,复位电路,共阳数码管,LED等。
虽然这次设计并不一定是最好的,但是我们仍然会继续努力学习的。
另外很希望多做一些有光单片机的课题设计,从设计中提高动手能力。
5参考文献
李全利:
单片机接口及技术
李广弟:
单片机基础
6附录
LJMPINTTORG0000H
LJMPSTART
ORG0003H
ORG0013H
LJMPINTW
ORG001BH
LJMPINTI
ORG0100H
START:
MOVTMOD,#10H
MOVTH1,#0D8H
MOVTL1,#0F0H
MOVR7,#10
SETBIT1
SETBEA
CLRTR1
SETBET1
SETBEA
SETBEX1
SETBET0
SETBEA
SETBEX0
MOVR1,#0
MOVR2,#0
MOVR3,#0
MOVR0,#3
LL:
MOVP1,#0FEH
MOVA,R0
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP0,A
LCALLDELAY
MOVP1,#0FDH
MOVA,R2
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP0,A
CLRP0.7
LCALLDELAY
MOVP1,#0FBH
MOVA,R1
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP0,A
LCALLDELAY
JMPLL
SJMP$
INTI:
DJNZR7,NT0
MOVR7,#10
CJNER1,#0,L1
MOVR1,#10
CJNER2,#0,L2
MOVR2,#10
CJNER0,#0,L5
JBP3.0,$
MOVTH1,#0D8H
MOVTL1,#0F0H
SETBTR1
MOVR2,#0
MOVR1,#0
MOVR0,#3
RETI
L5:
DECR0
L2:
DECR2
L1:
DECR1
NT0:
MOVTH1,#0D8H
MOVTL1,#0F0H
SETBTR1
RETI
INTT:
MOVA,R3
MOVB,#2
DIVAB
MOVA,B
INCR3
JZL8
MOVR0,#2
SJMPL9
L8:
MOVR0,#3
L9:
MOVR1,#0
MOVR2,#0
RETI
INTW:
CPLTR1
RETI
DELAY:
MOVR4,#249
DL:
NOP
NOP
DJNZR4,DL
RET
TAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END