基于单片机的智能电子钟系统设计毕业设计论文

发布时间 : 星期一 文章基于单片机的智能电子钟系统设计毕业设计论文更新完毕开始阅读

(五)报警模块

连线P1.7引脚连接到三极管 元器件:蜂鸣器、三极管2N2907

原理:由单片机芯片中引脚输出的信号来控制蜂鸣器的开和关 在报警子程序里要求不断调用显示子程序,这样数码管可以在时间到达之后稳定显示00:00:00.

(六)温度测量模块

元器件:数字温度传感器DS18B20(测温范围-55度~125度) 原理:利用温度传感器测量到温度值通过引脚传递到芯片中

利用DS18B20温度芯片来实现温度测量的功能,并将其显示在数码管上。 测量的温度范围是零下55至零上125摄氏度。 DS18B20的六条控制命令如下表:

指 令 温度转换 读暂存器 写暂存器 复制暂存器 重新调ERAM 读电源供电方式 2约定代码 44H BEH 4EH 48H B8H B4H 操 作 说 明 启动DS18B20进行温度转换 读暂存器9个字节内容 将数据写入暂存器的TH、TL字节 把暂存器的TH、TL字节写到E2RAM中 把E2RAM中的TH、TL字节写到暂存器TH、TL字节 启动DS18B20发送电源供电方式的信号给主CPU 五、结论

本次项目利用单片机STC89C52控制串行口与时钟芯片DS1302构成数字时钟

电路,实现计时功能,同时具有定时闹钟的功能,并且可以显示温度,定时和调时的功能仅用四个键控制,更加方便。本设计没有实现上下午提示和半秒提示的功能,但是智能电子钟的基本功能已经实现,所以算是比较成功的。蜡變黲癟報伥铉锚鈰赘。 六、不足和改进

(1)当定闹结束之后不能够通过按键来重新启动,这个可以通过在报警子程序里跳转到主程序重新开始执行来实现。

(2)在调时和定闹的过程中,相应模块不能闪烁,这个可以通过调用一个新的显示子程序,实现相应数码管间歇性亮灭。買鲷鴯譖昙膚遙闫撷凄。 (3)时间紧迫,没有对减或者加的单元设定上限和下限值,所以只能实现一天内的功能。这个可以通过在相应程序段中与限值比较来实现。綾镝鯛駕櫬鹕踪韦辚糴。 (4)温度显示模块是一大遗憾,没有足够的时间来做。

(5)在设计过程中另外有一个关于按键的想法,没有能够编程实现。它是利用两级中断来实现。加一或者减一是通过外部中断的中断服务程序实现。这里可能与按键延时有关,同时这样的设计可能会涉及到从引脚读入信号,这在实际设计中不可取。此处不再赘述。驅踬髏彦浃绥譎饴憂锦。 七、感想

经历过这么多不间断的讨论课和三级项目,我们有挺多感触的,从最基本上来说我们看到了,也意识到了自己的不足,对于不断克服的各种阻碍也让我们体会到了讨论课、三级项目的意义所在。 猫虿驢绘燈鮒诛髅貺庑。 对于只接触课本只动笔杆的我们,面临实际的设计,让我们很是尴尬,都说理论联系实际,真正到联系的时候才发现挺困难的,不过正是理论知识的各种补充才让我们能最终完成任务,然后深深地体会到理论对现实的指导作用。我们现在最缺乏的就是实践动手的经验,而理论联系实践并不像我们想象的那么简单,它需要坚实的理论基础和实际工作经验。坚实的理论基础决定了我必须坚持学习新的知识新的理论,完善了自己的知识结构,才能在以后的实际中轻松面对。 锹籁饗迳琐筆襖鸥娅薔。 在这个一边忙着复习忙着考试又要准备讨论课三级项目的日子里,真真正正的体会到了时间的宝贵,有点像高中忙忙碌碌的生活,不过能按时完成三级项目对我们来说也是一个莫大的安慰。 構氽頑黉碩饨荠龈话骛。 严谨和细心是做项目的必要态度,要想做好一件事,就必须一丝不苟、态度认真。俗话说:“失之毫厘,谬之千里。”在设计上尤其应该注意。再者就是设计中要严谨和细心,任何的微小误差都达不到预计的结果,当然对于我们来说就是设计中要走一些弯路,而且在这个严重缺少时间又惦记回家问题的我们来说也是一个很严重的打击。 輒峄陽檉簖疖網儂號泶。 不过,困难虽是难免的,但我们有信心就能并且已经战胜了困难,完成了这个无比揪心的三级项目。

因为时间等各种关系设计中难免有些不足还请老师助教给予批评和帮助。

程序: ORG 0000H LJMP MAIN ORG 000BH LJMP IT0P ORG 001BH LJMP IT1P ORG 0100H

DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;0-9的共阳极显示段码尧侧閆繭絳闕绚勵蜆贅。 ORG 1000H

MAIN: SETB P3.0 ;6亮,绿灯 CLR P3.1 MOV TMOD, #01H ;设T0方式1,定时,T1为方式1,计数 ;SETB IT0 ;外部中断0为跳沿方式有效 ;SETB IT1 ;外部中断1为跳沿方式有效 ;SETB PX0 ;外部中断0为高优先级中断 ;SETB PX1 ;外部中断1为高优先级中断 ;CLR PT0 ;定时器0为低优先级中断 ;CLR PT1 ;计数器1为低优先级中断 MOV 20H, #0AH ;中断10次为1s,中断计数单元为20H MOV 19H, #05H MOV 29H, #55H ;01010101B,不断左移位,相当于最高两位的0和1转换 MOV 18H, #05H ;DISPLAY子程序执行这么多次后结束 CLR A ;A清零 MOV 30H, A ;“时”单元清零 MOV 31H, A ;“分”单元清零 MOV 32H, A ;“秒”单元清零 SETB ET0 ;允许中断 SETB ET1 ;SETB EX0 ;SETB EX1

SETB EA ;CPU开中断 MOV TH0, #3CH ;给T0装入计数初值,可计时100ms MOV TL0, #0B0H ; MOV TH1, #3CH ;给T1装入计数初值 MOV TL1, #0B0H SETB TR0 ;启动计数 ;SETB TR1 MOV R1, #31H HERE: NOP ;允许被中断 LCALL ADJUST

联系合同范文客服:xxxxx#qq.com(#替换为@)