电子万年历单片机及接口技术课程设计.docx
- 文档编号:9795472
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:14
- 大小:248.49KB
电子万年历单片机及接口技术课程设计.docx
《电子万年历单片机及接口技术课程设计.docx》由会员分享,可在线阅读,更多相关《电子万年历单片机及接口技术课程设计.docx(14页珍藏版)》请在冰豆网上搜索。
电子万年历单片机及接口技术课程设计
第1章设计方案论证
1.1设计的应用意义
二十一世纪是数字化技术高速发展的时代,而单片机在数字化高速发展的时代扮演着极为重要的角色。
电子万年历的开发与研究在信息化时代的今天亦是当务之急,因为它应用在学校、机关、企业、部队等单位礼堂、训练场地、教学室、公共场地等场合,可以说遍及人们生活的每一个角落。
所以说电子万年历的开发是国家之所需,社会之所需,人民之所需。
由于社会对信息交换不断提高的要求及高新技术的逐步发展,促使电子万年历发展并且投入市场得到广泛应用。
1.2设计方案选择
1.2.1单片机芯片的选择方案和论证:
方案一:
采用89C51芯片作为硬件核心,采用FlashROM,内部具有4KBROM存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。
方案二:
采用AT89S52,片内ROM全都采用FlashROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KBROM存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。
但由于课程学习是主要以AT89C51为主,因此选择AT89C51。
1.2.2显示模块选择方案和论证:
方案一:
采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.
方案二:
采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。
所以采用了LED数码管作为显示。
1.2.3时钟芯片的选择方案和论证:
方案一:
直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。
采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。
所以不采用此方案。
方案二:
采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V~5.5V范围内,2.5V时耗电小于300nA.
1.3总体设计方案框图及分析
第2章硬件电路设计
2.1单片机主控制模块的设计
8031单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3,MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。
图-1主控制系统
2.2时钟电路模块的设计
图-2示出DS1302的引脚排列,其中Vcc1为后备电源,Vcc2为主电源。
在主电源关闭的情况下,也能保持时钟的连续运行。
DS1302由Vcc1或Vcc2两者中的较大者供电。
当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。
当Vcc2小于Vcc1时,DS1302由Vcc1供电。
X1和X2是振荡源,外接32.768KHz晶振。
RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。
RST输入有两种功能:
首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。
当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。
如果在传送过程中RSTS置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。
上电动行时,在Vcc大于等于2.5V之前,RST必须保持低电平。
中有在SCLK为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向)。
SCLK始终是输入端。
图-2DS1302的引脚图
2.3显示模块的设计
如图-5所示,采用动态扫描显示,由8个数码管,3-8译码器74LS138接1K限流电阻,再接8550三极管接到共阳数码管的CoM端作为选通位码,每位选择相应的列。
74ls47接240Ω限流电阻,再接共行的LED数码管的断码。
第3章程序设计
3.1程序流程图
主程序流程图
计算阳历程序流程图
阴历程序流程图
时间调整程序流程图
3.2部分源程序清单
SCLKEQUP3.2
IOEQUP3.3
RSTEQUP3.4
YEARDATA66H
MONTHDATA65H
WEEKDATA64H
DAYDATA63H
HOURDATA62H
MINTUEDATA61H
SECONDDATA60H
DS1302_ADDRDATA32H
DS1302_DATADATA31H
ORG0000H
AJMPSTART
ORG0003H
RETI
ORG000BH
RETI
ORG0013H
RETI
ORG001BH
LJMPINTT1
ORG0023H
RETI
START:
SETBEA
MOVSCON,#00H
MOVTMOD,#10H
MOVTL1,#00H
MOVTH1,#00H
MOVDS1302_ADDR,#8EH
MOVDS1302_DATA,#00H
LCALLWRITE
MOVDS1302_ADDR,#90H
MOVDS1302_DATA,#0A6H
LCALLWRITE
ORG002BH
RETI
PLAY1:
MOVA,#0FFH
MOVP2,A
MOVA,@R0
MOVDPTR,#TAB1
MOVCA,@A+DPTR
MOVSBUF,A
JNBTI,$
CLRTI
MOVA,@R1
MOVDPTR,#TAB1
MOVCA,@A+DPTR
MOVSBUF,A
JNBTI,$
CLRTI
MOVA,R2
MOVDPTR,#TAB1
MOVCA,@A+DPTR
MOVSBUF,A
JNBTI,$
CLRTI
INCR0
INCR1
INCR3
MOVA,R3
SETBPSW.4
MOVR0,A
MOVA,@R0
CLRPSW.4
MOVR2,A
MOVA,R0
CJNEA,#78H,PLAY2
MOVR0,#50H
PLAY2:
CJNEA,#54H,PLAY3
MOVR0,#78H
PLAY3:
MOVA,R5
MOVP2,A
LCALLDL1MS
MOVA,R5
JNBACC.6,PLAYOUT
RLA
MOVR5,A
LJMPPLAY1
PLAYOUT:
SETBP2.6
RET
DL1MS:
MOVR6,#02H
DL1:
MOVR7,#08H
DL2:
DJNZR7,DL2
DJNZR6,DL1
RET
TAB1:
DB03H,9FH,25H,0DH,99H
DB49H,41H,1FH,01H,09H,0FFH
TAB:
DB35,15H,51H,00H,23,11H,52H,41H,42,12H,65H,00H
DB31,11H,32H,00H,21,42H,52H,21H,39,52H,25H,00H
DB28,25H,04H,71H,48,66H,42H,00H,37,33H,22H,00H
DB25,15H,24H,51H,44,05H,52H,00H,33,22H,65H,00H
DB22,21H,25H,41H,40,24H,52H,00H,30,52H,42H,91H
DB49,55H,05H,00H,38,26H,44H,00H,27,53H,50H,60H
DB46,53H,24H,00H,35,25H,54H,00H,24,41H,52H,41H
DB42,45H,25H,00H,31,24H,52H,00H,21,51H,12H,21H
DB40,55H,11H,00H,28,26H,21H,61H,47,26H,61H,00H
DB36,13H,31H,00H,25,05H,31H,51H,43,12H,54H,00H
DB33,51H,25H,00H,22,42H,25H,31H,41,32H,22H,00H
DB30,55H,02H,71H,49,55H,22H,00H,38,26H,62H,00H
DB27,13H,64H,60H,45,13H,32H,00H,34,12H,55H,00H
DB23,10H,53H,51H,42,22H,45H,00H,31,52H,22H,00H
DB21,52H,44H,21H,40,55H,44H,00H,29,26H,50H,71H
DB47,26H,64H,00H,36,25H,32H,00H,25,23H,32H,50H
DB44,44H,55H,00H,32,24H,45H,00H,22,55H,11H,30H
END
第4章设计总结
通过这一周的课程设计,我学到了不少的知识。
把以前没有学好的模拟电路的知识进行了补充和加强。
这使我受益很大。
加深了我对于单片机和数字电路的认识,相信在以后的学习和工作中碰到这些基础的元器件我会更加得心应手。
通过查阅大量的资料,我获得了以前在课堂上学不到的东西,我想这对于以后的毕业设计,或者工作也好,都是很有帮助的。
我很认真地对待这个过程中的每一个细节,希望自己能做得更好。
希望今后还有这样的机会,能够让我学到更多的知识。
在此次的数字钟设计过程中,更进一步地熟悉了芯片的结构及掌握了各芯片的工作原理和其具体的使用方法。
在连接六进制,十进制,六十进制的进位及十二进制的接法中,要求熟悉逻辑电路及其芯片各引脚的功能,那么在电路出错时便能准确地找出错误所在并及时纠正了。
通过这次难得的实践机会给了我很大收获,不仅巩固了原有的知识,并增强了动手能力,培养了面对问题的分析能力以及遇到困难如何应对。
参考文献
[1]张毅刚,彭喜元.单片机原理与应用设计,北京:
电子工业出版社;
[2]何立民.单片机应用文集,北京:
北京航空航天大学出版社,1991,53-72.
[3]何立明.单片机高级教程——应用与设计,北京:
北京航天航空大学出版社,2000.4,149-173.
[4]李广弟,朱月秀.单片机基础,北京:
北京航空航天大学出版社,2001.8,36-85.
[5]楼然苗,李光飞.MCS-51系列单片机设计实例,北京:
北京航天航空大学出版社,2001.3,75-83.
[6]李华.单片机原理与接口技术,北京:
清华大学出版社,33-80.
附录1:
整体电路原理图
附录2:
元器件清单
序号
名称
数量
1
8031
1
2
DS1032
1
3
LED液晶显示数码管
8
4
74LS138
1
5
74LS47
1
6
晶体管8550
8
7
电阻
若干
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 万年历 单片机 接口 技术 课程设计