基于51单片机电子万年历论文内容摘要:

返回 定时闹铃子程序 11 图 C 时间调整程序流程图 12 图 D 阴历程序流程图 子程序的设计 DS18B20温度子程序 CONFIG12 EQU 7FH TEMPH EQU 21H TEMPL EQU 20H REG2 EQU 22H REG3 EQU 23H REG4 EQU 24H DAT EQU TOUTOU: LCALL CHUSHI LCALL RDTEMP MOV A,TEMPL ANL A,11110000B MOV TEMPL,A MOV A,TEMPH ANL A,00000111B ORL A,TEMPL SWAP A MOV 25H,A MOV A,25H MOV B,64H DIV AB MOV A,B MOV B,0AH DIV AB SWAP A ORL A,B MOV 10H,A RET CHUSHI: LCALL RESET MOV A,0CCH LCALL WRITE111 MOV A,4EH LCALL WRITE111 MOV A,CONFIG12 LCALL WRITE111 RET RDTEMP: LCALL RESET MOV A,0CCH LCALL WRITE111 MOV A,44H LCALL WRITE111 LCALL DL1MS LCALL RESET MOV A,0CCH LCALL WRITE111 MOV A,0BEH LCALL WRITE111 LCALL ERAD111 MOV TEMPL,A LCALL ERAD111 MOV TEMPH,A RET RESET: LA: SETB DAT MOV 52H,200 LB: CLR DAT 13 DJNZ 52H,LB SETB DAT MOV 52H,30 LC: DJNZ 52H,LC CLR C ORL C,DAT JC LB MOV 58H,80 LD: ORL C,DAT JC LP DJNZ 58H,LD SJMP LA LP: MOV 52H,250 LF: DJNZ 52H,LF RET WRITE111: MOV 53H,8 W51HA: SETB DAT MOV 54H,8 RRC A CLR DAT W52HA: DJNZ 54H,W52HA MOV DAT,C MOV 54H,30 W53HA: DJNZ 54H,W53HA DJNZ 53H,W51HA SETB DAT RET ERAD111: CLR EA MOV 58H,8 RD1A: CLR DAT MOV 54H,6 NOP SETB DAT RD2A: DJNZ 54H,RD2A MOV C,DAT RRC A MOV 55H,30 RD3A: DJNZ 55H,RD3A DJNZ 58H,RD1A SETB DAT RET 读、写 DS1302 子程序。 写 1302 程序 WRITE: CLR SCLK NOP SETB RST NOP MOV A,32H MOV R4,8 WRITE1: RRC A。 送地址给 1302 NOP NOP CLR SCLK NOP NOP NOP MOV IO,C NOP NOP NOP SETB SCLK NOP NOP DJNZ R4,WRITE1 CLR SCLK NOP MOV A,31H MOV R4,8 WRITE2: RRC A NOP。 送数据给 1302 CLR SCLK NOP NOP MOV IO,C NOP NOP NOP SETB SCLK NOP NOP DJNZ R4,WRITE2 CLR RST RET。 读 1302 程序 READ: CLR SCLK NOP NOP SETB RST NOP MOV A,32H MOV R4,8 READ1: RRC A。 送地址给 1302 NOP MOV IO,C NOP NOP NOP SETB SCLK NOP NOP NOP CLR SCLK NOP NOP DJNZ R4,READ1 MOV R4,8 14 READ2: CLR SCLK NOP。 从 1302 中读出数据 NOP NOP MOV C,IO NOP NOP NOP NOP NOP RRC A NOP NOP NOP NOP SETB SCLK NOP DJNZ R4,READ2 MOV 31H,A CLR RST RET 四 . 指标测 测试仪器 序号 名称 型号 1 PC 机 LXBHF769A 2 双路直流稳压电源 CA17303D 3 V8 通用单片机仿真器 V8/L 4 数字万用表 DT9208 5 ISP 在线编程器 电子万年历的电路系统较大,对于焊接方面更是不可轻视,庞大的电路系统中只要出于一处的错误,则会对检测造成很大的不便,而且电路的交线较多,对于各种锋利的引脚要注意处理,否则会刺被带有包皮的导线,则会对电路造成短路现象。 在本成电子万年历的设计调试中遇到了很多的问题。 回想这些问题只要认真多思考都是可以避免的,以下为主要的问题: (1) LED 数码管的断码错乱 ,原因出于没有认真看清 a、 b 、 c 等引脚信息。 解决:重新排列 74LS47 的输出端,相应接入 LED 数码管,即可解决出现在的断码或乱码。 ( 2)对万年历修改时间或日期时,有时 LED 数码管被屏蔽掉,造成不亮现象。 解决:根据仪器的测试,发现电路的驱动能力不足,最后在 DS1302 时钟芯片的 /CS、SCLK、 RET 端接入 的上拉电阻后 ,电路的驱动能力才能满足,即可解决不亮现象。 电子成年历是多功能的数字型,可以看当前日期(阴、阳历) ,时间,还有温度的仪器。 电子成年历功能很 多,所以对于它的程序也较为复杂 ,所以在编写程序和调试时出现了相对较多的问题。 最后经过多次的模块子程序的修改,一步一步的完成,最终解决了软件。 在软件的调试过程中主要遇到的问题如下: 1.烧入程序后, LED 数码管显示闪动 ,而且亮度不均匀。 解决:首先对调用的延时进行逐渐修改,可以解决显示闪动问题。 其次,由于本作品使 15 作动态扫描方式显示的数字,动态扫描很快,人的肉眼是无法看出 ,但是调用的显示程序时,如果不在反回时屏蔽掉最后的附值,则会出现很亮的现象,所以在显示的后面加了屏蔽子令,最后解决了此问题。 2.修改时间、日 期时没有农历没有自动对应上。 解决:把不相关的程序暂时屏蔽,地农历的子程序独立调试,发现在调用农历自动更新时,对十进制和十六进制处理不好,所以会造成错乱。 最后把相应的十进制进行修改,使得可以与十六进制对应,最后解决了此问题 . 3.加入温度的程序后,进行修改时间、日期时相应的数码管位没有按要求闪动。 解决:由于 DS18B20 是串行通信数据,只用一个口线传输,在处理采集的模拟信号时需要一定的时间,当把万年历的程序相接入时,会对延时有很大的影响。 所以在调用温度子程序时,先关闭定时器 1 中断允许,在温度子程 序反回时再打开定时器 1 中断允许。 最终解决了此问题。 .1 测试结果分析 ( 1).在测试中遇到发光二极管、 LED 数码管为不显示时 ,首先使用试测仪对电路进行测试 ,观察是否存在漏焊 ,虚焊 ,或者元件损坏 . ( 2). LED 数码管显示不正常,还有亮度不够,首先使用试测仪对电路进行测试 ,观察电路是否存在短路现象。 查看烧写的程序是否正确无误,对程序进行认真修改。 测试结论 经过多次的反复测试与分析 ,可以对电路的原理及功能更加熟悉 ,同时提高了设计能力与及对电路的分析能力 .同时在软 件的编程方面得到更到的提高 ,对编程能力得到加强 .同时对所学的知识得到很大的提高与巩固 . 五、作品总结 在整个设计过程中,发挥团队精神,分工合作,充分发挥人的主观能动性,自主学习,学到了许多没学到的知识。 较好的完成了作品。 达到了预期的目的,在最初的设计中,发挥“三个臭皮匠,顶个诸葛亮”的作用。 相互学习、相互讨论、研究。 完了最初的设想。 在电路焊接时虽然没什么大问题,但从中也知道了焊接在整个作品中的重要性,电路工程量大,不能心急,一个个慢慢来不能急于求成。 反而达到事半功倍的效果。 对电路的设计、布局要先有一个好 的构思,才显得电路板美观、大方。 程序编写中,由于思路不清晰,开始时遇到了很多的问题,经过静下心来思考,和同组员的讨论,理清了思路,反而得心应手。 在此次设计中,知道了做凡事要有一颗平常的心,不要想着走捷径,一步一脚印。 也练就了我们的耐心,做什么事都在有耐心。 此次比赛中 学到了很多很多东西,这是最重要的。 总之,参加电子竞赛我们的能力得到了全方位的提高。 16 致谢词 感谢学院给我们提供了一个展现自己的舞台,给我们一次难得煅炼的机会,使得我们的动手能力和专业技能都有了很大的提高。 在做作品的日子里得到了万老师的 悉心指导,在此向我们的指导教师致以诚挚的谢意。 感谢提供相关技术帮助的老师和同学,你们的支持和鼓励使我们对这次的作品完成有了信心和动力,也给了我们很多无私的帮助和支持,我们在此深表谢意。 参考文献 1 刘勇 编 数字电路 电子工业出版社 2020 2 陈正振 编 电子电路设计与制作 广西交通职业技术学院信息工程系 2020 3 杨子文 编 单片机原理及应用 西安电子科技大学出版社 2020 4 王法 能 编 单片机原理及应用 科学出版社 2020 17 附录一:系统电路图 18 19 附录二:系统程序清单 CONFIG12 EQU 7FH TEMPH EQU 21H TEMPL EQU 20H REG2 EQU 22H REG3 EQU 23H REG4 EQU 24H DAT EQU SCLK EQU IO EQU RST EQU year DATA 66H month DATA 65H week DATA 64H day DATA 63H hour DATA 62H mintue DATA 61H second DATA 60H ORG 0000H LJMP START ORG 001BH LJMP INTT1 START:。 初值 LCALL ZJ SETB EA MOV SCON,00H。 串行输出,方式 0 MOV TMOD,10H。 计数器 1,方式 1 MOV TL1,00H MOV TH1,00H MOV 32H,8EH MOV 31H,00H。 允许写 1302 LCALL WRITE MOV 32H,90H MOV 31H,0A6H。 1302 充电,充电电流 LCALL WRITE。 主程序 ~~~~~~~~~~~~~~~~~~~~~ MAIN1: MOV 32H,8DH。 读出年 LCALL READ MOV year,31H MOV 32H,8BH。 读出星期 LCALL READ MOV week,31H MOV 32H,89H。 读出月 LCALL READ。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。