课程设计内容.docVIP

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设计内容

1 任务及要求 1.1设计任务 用3开关控制的两数码显示倒数计时器的Proteus仿真及汇编程序设计。 1.2 设计要求 利用AT89C51单片机的P0端口连接到电路图左边的数码管上,P2端口连接到电路图右边的数码管上, P3.1、P3.3、P3.5分别接三个开关。启动时,两数码管都显示为零,每按下P3.1开关时,给左边显示十位的数码管加一,每按下P3.3开关时,给右边显示个位的数码管加一。然后当按下P3.5开关时启动倒数计时,当左右数码管显示都为零时,LED红灯开始闪烁。 2 设计思想 2.1 硬件设计思想 硬件包括AT89C51芯片,两个数码管,LED和3个控制开关,在51芯片外部接一个震荡时钟频率。用的控制模块,具有按键等功能,并利用的P0口输出信号,使得在软件的控制下工作。.2 软件设计思想 采用汇编语言编写程序,程序由一个主函数,3个按键控制子程序和3个延时子程序构成。由主函数实现等待按键,控制左右数码管数字显示和启动倒数计时。当启动倒数计时程序后,程序按步进行让后当条件满足时调用红灯闪烁程序来结束程序。 3 电路原理与电路图 3.1 电路原理 单片机最小系统。一个AT89C51单片机做为控制电路,运用其P0、P2口来控制两数码管显示,通过P3.1、P3.3两按键控制给左右两数码管加数,通过P3.5按键来控制倒数计时。P1.0接LED显示。 3.2 电路原理图 4 流程图与算法描述 4.1 系统流程图 如图4.1所示 图4.1主函数流程图 4.2 置数子程序流程图 如图4.2所示 图4.2十位显示数码管置数子程序流程图 4.3 启动倒计时子程序流程图 如图4.3所示 图4.3 启动倒数计时子程序 4.4延时子程序流程图 如图4.4所示 图4.4 延时子程序 4.5 算法描述 1、设计一个延时子程序,延时1s。延时程序的代码段如下: DELAY2: MOV R3,#100 D4: MOV R4,#20 D5: MOV 20H,#248 D6: DJNZ 20H,D6 DJNZ R4,D5 DJNZ R3,D4 RET 2、十位显示数码管置数子程序代码如下: S2: MOV A,#00H MOV A,R1 MOVC A,@A+DPTR MOV P0,A LCALL DELAY1 INC R1 MOV 25H,R1 CJNE R1,#07H,S0 MOV 25H,R1 MOV R1,#00H LJMP S0 3、个位显示数码管置数子程序代码如下: S3: MOV A,#00H MOV A,R2 MOVC A,@A+DPTR MOV P2,A LCALL DELAY1 INC R2 MOV 26H,R2 CJNE R2,#0AH,S0 MOV 26H,R2 MOV R2,#00H LJMP S0 4、主函数,实现系统初始化和彩灯闪烁。代码段如下: START: MOV R0,#06H MOV DPTR,#TABLE MOV P0,#3FH MOV P2,#3FH MOV P3,#00H MOV R1,#01H MOV R2,#01H CLR P1.0 S0: JB P3.5,S1

文档评论(0)

haihang2017 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档