单片机课设陈思副本.docx
- 文档编号:24146948
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:23
- 大小:189.98KB
单片机课设陈思副本.docx
《单片机课设陈思副本.docx》由会员分享,可在线阅读,更多相关《单片机课设陈思副本.docx(23页珍藏版)》请在冰豆网上搜索。
单片机课设陈思副本
摘要
单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。
单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。
由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而51单片机是各单片机中最为典型和最有代表性的一种。
这次毕业设计通过对它的学习、应用,以AT89C51芯片为核心,辅以必要的电路,设计了一个简易的电子时钟,它由5V直流电源供电,通过数码管能够准确显示时间,调整时间,从而到达学习、设计、开发软、硬件的能力。
本文讨论了单片机技术的构思、设计方案、工作原理,主要组成部分包括:
键盘输入模块、单片机运算控制模块、显示模块。
该电子时钟由80C51,按键,六段数码管等构成,采用晶振电路作为驱动电路,配合复位电路。
由延时程序和循环程序产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小时为一天。
设置的四个控制键能满足电子表的基本设置要求。
关键词:
单片机;电子时钟;键盘控制
《单片机原理及应用》课程设计说明书
《单片机原理及应用》课程设计任务书
设计时间
11月14号——11月25号
设计题目
电子时钟
设计任务
完成给定设计条件下的系统设计,绘制相应硬件电路图和软件程序流程,编写软件程序,编写设计说明书。
设计要求
1.设计硬件电路图一张(A2),软件程序流程图一张(A2)。
2.设计说明书一份。
3.要求图面整洁,说明书书写工整、规范。
进度计划
时间(周.星期)
设计内容
1.1
布置设计任务,系统总体设计,
1.2—1.3
硬件系统设计
1.4—1.5
软件系统设计
2.1—2.2
绘制硬件电路图软件程序框图
2.3—2.4
编写设计说明书,准备答辩
2.5
答辩
成绩评定办法(评定考核项目、考核标准、所占比重)
按答疑(10%)、方案设计(图纸+程序设计+说明书)(60%)、
答辩(30%)给定设计成绩。
成绩分五档:
优、良、中、及格、不及格。
参考资料
(1)《单片机初级教程》,何立民,北京航空航天大学出版社,北京:
2004
(2)《单片机原理及接口技术》,余锡存等,西安电子科技大学出版社,西安:
2000
(3)《51系列单片机及C51程序设计》,王建校等,科学出版社,北京:
2002
(4)《单片机课程设计实例指导[M]》,李光才,北京航空航天大学出版社2004.
指导教师(签字)
年月日
2.1总体系统设计-------------------------------------3
2.1.1数码管显示方案----------------------------------3
2.1.2系统显示说明------------------------------------3
2.1.3系统结构框图------------------------------------4
2.2硬件系统设计-------------------------------------4
2.2.1AT89C51单片机芯片------------------------------4
2.2.2晶体振荡电路------------------------------------5
2.2.3复位电路----------------------------------------6
2.2.5数码管显示电路----------------------------------6
2.2.6按键控制电路------------------------------------7
2.2.7硬件原理图--------------------------------------8
2.3软件系统设计--------------------------------------9
2.3.1软件设计说明------------------------------------9
2.3.2主程序流程图------------------------------------10
2.3.3显示子程序流程图--------------------------------10
2.3.4TO中断计时流程图-------------------------------11
2.3.5按键调节流程图---------------------------------11
第三章结论-------------------------------------------------12
附录1参考文献----------------------------------------------13
2总设计图----------------------------------------------14
3软件程序----------------------------------------------15
第一章绪论
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。
从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。
怎样让时钟更好的为人民服务,怎样让我们的老朋友焕发青春呢?
这就要求人们不断设计出新型时钟。
现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。
时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。
在一个单片机应用系统中,时钟有两方面的含义:
一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:
一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:
DS1302,DS12887,X1203等都可以满足高精度的要求。
本文主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机AT89C51芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。
第二章系统设计
2.1总体系统设计
2.1.1数码管显示方案
方案一:
静态显示。
所谓静态显示,就是当显示器显示某一字符时,相应的发光二极管恒定的导通或截止。
该方式每一位都需要一个8位输出口控制。
静态显示时较小的电流能获得较高的亮度,且字符不闪烁。
但当所显示的位数较多时,静态显示所需的I/O口太多,造成了资源的浪费。
方案二:
动态显示。
所谓动态显示就是一位一位的轮流点亮各个位,对于显示器的每一位来说,每隔一段时间点亮一次。
利用人的视觉暂留功能可以看到整个显示,但必须保证扫描速度足够快,字符才不闪烁。
显示器的亮度既与导通电流有关,也于点亮时间与间隔时间的比例有关。
调整参数可以实现较高稳定度的显示。
动态显示节省了I/O口,降低了能耗。
从节省I/O口和降低能耗出发,本设计采用方案二。
2.1.2系统说明
利用单片机(AT89C51)制作简易电子时钟,由六个LED数码管分别显示小时十位、小时个位、分钟十位、分钟个位、秒钟十位、秒钟个位。
6个PNP管(9012)分别控制六个数码管的亮灭;四个按键用于时间调整:
K0功能多样,按一次实现秒调节,两次实现分调节,三次实现时调节,四次实现取消返回;K1、K2为对应时分秒的加、减;K3实现确定储存功能。
2.1.3系统结构框图
2.2硬件系统设计
系统的硬件主要包括单片机芯片,晶体振荡电路,复位电路,数码管显示,按键开关电路。
2.2.1AT89C51单片机芯片
AT89C51外形与引脚排列
引脚说明:
1)XTAL1/XTAL2:
接外部晶振,频率为0~33HZ。
2)PSEN:
拓展ROM时起作用(基本不用)。
3)ALE:
地址锁存允许输出/编程脉冲输入端。
4)EA:
内、外程序存储器/编程电源输入端。
现采用片内闪存作为程序存储器,直接与相连。
主要特性:
A、与MCS-51兼容
B、4K字节可编程Flash存储器
C、寿命:
1000写/擦循环
D、数据保留时间:
10年
E、全静态工作:
0Hz-24Hz
F、三级程序存储器锁定
G、128*8位内部RAM
H、32可编程I/O线
I、两个16位定时器/计数器
J、5个中断源
K、可编程串行通道
L、低功耗的闲置和掉电模式
M、片内振荡器和时钟电路
2.2.2晶体振荡电路
a.晶体振荡电路的作用用来稳定频率和选择频率,是一种可以以取代LC谐振电路的晶体谐振元件。
b.石英晶体振荡器有并联型晶体振荡器和串联型晶体振荡器两类。
并联型晶体振荡器中,石英晶体以并联谐振的形式出现,起电感作用。
串联型晶体振荡器中,石英晶体以串联谐振的形式出现,起电阻作用。
c.本设计所用的晶体振荡电路为12MHZ如图所示:
晶体振荡电路
2.2.3复位电路
a.复位电路的用途:
当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮,内部的程序自动从头开始。
b.复位电路的主要功能:
1.必须保证系统可靠的进行复位。
2.必须具有一定的抗干扰能力。
下为按键复位电路。
该电路除具有上电复位功能外,若要复位,只需按图中的RESET键,此时电源VCC经电阻R1、R2分压,在RESET端产生复位高电平。
与单片机相连的复位电路
2.2.4数码管显示电路
数码管的引脚图,每位的段码线(a,b,c,d,e,f,g,dp)分别与1个8位的锁存器输出相连,由AT89S51控制组合0-9十个数据,如令其显示1则b,c引脚(即2,3引脚)送高电平,此时数码管显示1。
由于各位的段码线并联,8位I/O口输出段码对各个显示位来说都是相同的。
P0.0~P0.7段选口
键码
0
1
2
3
4
5
6
7
8
9
=
字型码
3FH
06H
5BH
4FH
66H
6DH
7DH
D7H
7FH
6FH
48H
P2.0~P2.5位选口
表为共阴极LED显示字型码表:
2.2.5按键控制电路
四个按键用或门连接到外部中断INT0上,同时又相互独立,使两个显示子程序能得到很好地协调。
2.2.6硬件原理图
包括AT89C51附属电路——复位电路与晶振电路;数码管显示电路片选接P2,段选接P3;四个按键接P1口,用或门接于INT0。
2.3软件系统设计
2.3.1软件设计说明
使用单片机中的定时器中断,定时50ms,设定一计数单元53H为20,当53H减为0时(50×20=1000)时秒值加一,当秒值为60时,分值加一秒值清零。
分值为60时时值加一分值清零时值为24时时分秒全部清零。
为了使程序运行的更顺畅,按键是否按下用外部中断来判断,进入中断后再具体判断到底是哪个键,四个按键中:
K0按一次实现秒调节,两次实现分调节,三次实现时调节,四次实现取消返回;K1、K2为对应时分秒的加、减;K3实现确定储存功能为对应时分秒的加、减;K3实现确定储存功能。
2.3.2主程序流程图
2.3.3显示程序流程图
2.3.4T0计时中断流程图
(1)
\
图1图
(2)
2.3.5按键中断服务流程图
(2)
第三章课程设计总结
在设计过程中遇到了很多问题,值得探讨和今后更深的研究。
首先,对单片机知识的掌握还不够熟练,对于一些编程和芯片结构的问题不得不上网、查阅资料获取相关信息,这也是以后需要着重注意的地方。
第二,即使简化了这次设计的内容还是有一些难度,比如两种显示的交替,FLASH2的显示只希望在K0键按下后才起作用,一开始是在主程序中加一个判断,考虑到系统不能在每次扫描中都进行判断,这样十分不合理,因此利用中断,让FLASH2只在中断中起作用。
第三,为了使系统运行更顺畅,使主程序只负责初始化与显示时间,时分秒的自加一以及是否有按键按下都采用中断,并且让时分秒的自加一优先;第四,自己编写的程序并没有经过调试,不合理的成分应该会很多,比如子程序的名称、程序的标号,程序的地址,并且这次用到两个中断但是虽然用到中断保护但是难免会有考虑不周的地方,还需进一步完善。
附录
1参考文献
1、周坚。
单片机C语言轻松入门北京航空航天大学出版社
2、公茂法单片机人机接口实例北京航空航天大学出版社
3、杨欣等.电子设计从零开始[M].清华大学出版社.2005-10
4、谢嘉奎.电子线路[M].高等教育出版社.2003-2
5、夏路易,石宗义.电路原理图与电路设计教程Protel99SE[M].北京希望电子出版社.2002
6、王毓银.数字电路逻辑设计[M].高等教育出版社.2004-2
7、邱关源.电路[M].高等教育出版社
2总设计图
3软件程序
主程序
ORG0000H
LJMP0100H
ORG0100H
MOVTH0,#3CH
MOVTL0,#0B0H
MOVTH1,#06H
MOVTL1,#06H
MOV50H,#14H;初始化
MOV51H,#06H
MOV52H,#28H
MOVR0,#00H
MOVR2,#01H
MOVR3,#03H
MOVR4,#06H
SETBEA
SETBEX0
SETBET0;开定时器T0、外部INT0中断,并且T0优先
SETBIT0
SETBTR0
SETBPT0
L0:
LCALLFLASH1;显示时间
SJMPL0
T0中断子程序,实现时钟运转
ORG000BH
LJMP0060H
ORG0060H
PUSHACC
PUSHPSW
MOVTH0,#3CH
MOVTL0,#0B0H
DJNZ50H,LE
MOV50H,#14H
INCR2
CJNER2,#3CH,LE
INCR3
MOVR2,#00H
CJNER3,#3CH,LE
INCR4
MOVR3,#00H
CJNER4,#18H,LE
MOVR4,#00H
LE:
POPACC
POPPSW
NOP
RETI
显示子程序1,服务于正常显示
FLASH1:
MOVA,R2
MOVB,#0AH
DIVAB
MOV61H,A
MOVA,B
MOV60H,A
MOVA,R3
MOVB,#0AH;拆分十位与个位
DIVAB
MOV63H,A
MOVA,B
MOV62H,A
MOVA,R4
MOVB,#0AH
DIVAB
MOV65H,A
MOVA,B
MOV64H,A
MOVR1,#60H
MOVA,#FEH
L4:
MOVP2,A
MOVA,@R1
MOVDPTR,#TAB
MOVCA,@A+DPTR;送段选与位选
MOVP0,A
LCALLDELY10ms
INCR1
MOVA,P2
RLA
JBACC.6,L4
RET
显示子程序2,服务于调节时钟时的显示
FLASH2:
MOVA,R5
MOVB,#0AH
DIVAB
MOV67H,A
MOVA,B
MOV66H,A
MOVA,R6
MOVB,#0AH
DIVAB
MOV69H,A
MOVA,B
MOV68H,A
MOVA,R7
MOVB,#0AH
DIVAB
MOV6BH,A
MOVA,B
MOV6AH,A
MOVR1,#66H
MOVA,#FEH
L7:
MOVP2,A
MOVA,@R1
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP0,A
LCALLDELY10ms
INCR1
MOVA,P2
RLA
JBACC.6,L7
RET
DELY10ms:
SETBTR1
L6:
JBCTF1,L5
SJMPL6
L5:
DJNZ52H,L6
CLRTR1
RET
按键中断子程序
0RG0003H
PUSHACC
PUSHPSW
KEY:
JNBP1.0,K0
L1:
JNBP1.1,K1
L2:
JNBP1.2,K2;判断哪一个按键按下
L3:
JNBP1.3,K3
CJNER0,#00H,L16
SJMPNE
L16:
LCALLFLASH2
SJMPKEY
NE:
POPACC
POPPSW
NOP
RETI
K0功能程序段
K0:
LCALLDELY10ms;确定按键真的按下
JBP1.0,L1
MOVR5,R2
MOVR6,R3;将显示1的时分秒数值送入显示2的寄存器中
MOVR7,R4
L8:
LCALLFLASH2
JNBP1.0,L8
INCR0;标志寄存器值加一
CJNER0,#04H,KEY
MOVR0,#00H
SJMPNE;按四次则返回
K1:
LCALLDELY10ms
JBP1.1,L2
CJNER0,#01H,L10
MOVR5,#00H
SJMPKEY
L9:
LCALLFLASH2
JNBP1.1,L9
CJNER0,#01H,L10
MOVR5,#00H;K1功能程序段,实现对应位加一
SJMPKEY
L10:
CJNER0,#02H,L11
INCR6
CJNER6,#60H,KEY
MOVR6,#00H
SJMPKEY
L11:
CJNER0,#03H,KEY
INCR7
CJNER7,#24,KEY
MOVR7,#00H
SJMPKEY
K2:
LCALLDELE10ms
JBP1.2,L3
CJMER0,#00H,L12
SJMPNE
L12:
LCALLFLASH2
JNBP1.2,L13
MOVR5,#00H;K2功能程序段,实现对应位减一
SJMPKEY
L13:
CJNER0,#02H,L14
DECR6
CJNER6,#0FFA,KEY
MOVR6,#59
SJMPKEY
L14:
CJNER0,#03H,KEY
DECR7
CJNER7,#0FFH,KEY
MOVR7,#23
SJMPKEY
K3:
LCALLDELY10ms
JBP1.3,KEY
CJNER0,#00H,L15
SJMPNE;K3功能程序段实现储存所调数值
L15:
LCALLFLASH2
JNBP1.2,L15
MOVR0,#00H
MOVR4,R7
MOVR3,R6;将FLASH2寄存器中数放入FLASH1寄存器中
MOVR2,R5
SJMPNE
TAB:
DB3FH,06H,5BH,4FH,66H,6DH,7DH
DB07H,7FH,6FH
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机课设 陈思 副本 单片机