- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机国培成果单片机国培成果
2009辽宁机电职业技术学院国家级骨干教师第三期
机电技术应用专业培训班教学成
吉林机电工程学校 魏永生
单片机智能控制培训成果:
项目成果名称:由单片机控制的数字时钟
项目要求:要求数字时钟能精确的对时、分、秒进行计时,采用24小时制,由单片机完成。
硬件电路设计:
单片机芯片:采用ATMEAL公司的AT87C51 EPROM的单片机,内部ROM为4K。晶振设计为12M。
显示电路:采用6个LED显示数码管,为共阴极。显示驱动电路为74LS1 64串口转并口驱动芯片。
仿真器为伟福S95仿真器。
编程软件:伟福W6000编程软件。
程序设计思想:
计时的实现:采用定时器中断方式1,完成功50mS定时,由表及37H单元计20次,完成秒加1操作,同时37H单元清零;秒单元进行测试到60,过行分加1,同时秒单元清零;分到60后,再对时加1,分清零,时到24,对时清零。
显示的实现:由单片机通过串行通迅方式向LED传送数据。用P3.2 做数据位,P3.3为时钟位,分别接74LS164的7脚,和13脚.
按建功能的实现:当按键示按下不计时,当按键按下开始计时,再按键则对秒加1,秒到60则对分加1,同时秒清零.
六、程序流程图(MAIN)
主程序流程图
1.定时器1中断子程序流程图 (DS1):
2.拆字子程序(CZ)
入口条件:30H,31H,32H为显示数据
出口信息:40H,41H,42H,43H,44H,45H为拆字后的显示数据。
3.显示子程序(DISPLAY)
入口信息:40H,41H,42H,43H,44H,45H为拆字后的显示数据。
4.按键子程序(KEY)
5.串行发送子程序(TXDBYTE)
入口条件:累加器A
程序清单:
SDA BIT P1.2
CLK BIT P1.3
ORG 0000H
AJMP MAIN
ORG 000BH
SJMP DS1
ORG 0030H
main:
MOV SP,#5FH
MOV TMOD ,#10H;选定时器1为方式1
MOV TH1,#3CH ;置初值
MOV TL1,#0B0H
SETB EA
SETB ET1
CLR TR1
MOV 30H,#23H ;置时钟数据初值
MOV 31H,#59H
MOV 32H,#58H
mov 37h,#00h
LOOP: LCALL KEY
LCALL CZ
LCALL DISPLAY
SJMP LOOP ;主程序结束
KEY: JB P3.2, GOO ;按键子程序
CPL TR0
K0: LCALL DISPLAY
JNB P3.2,K0
GOO: JB p3.3,T01
LCALL ADJ
GO: LCALL DISPLAY
JNB P3.3,GO
T01: RET
DS1:
MOV TH1,#3CH ;置定时器1初值
MOV TL1,#0B0H
inc 37h
mov a,37h
cjne A,#20,EXIT
MOV 37H,#00H
MOV A,32H
inc A
DA A
mov 32H,A
cjne A,#60H,EXIT
mov 32H ,#00h
MOV A,31H
inc A
DA A
mov 31H,A
CJNE A,#60H, EXIT
mov 31h ,#00h
MOV A,30H
inc A
文档评论(0)