基于单片机的智能窗帘控制系统软件设计.docVIP

基于单片机的智能窗帘控制系统软件设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于单片机的智能窗帘控制系统软件设计 智能窗帘控制系统的程序分析与设计包括主程序设计,步进电机程序设计,显示程序设计,键盘程序设计,定时程序设计几部分。本章节系统的介绍了智能窗帘控制系统的主程序和各主要功能子程序的设计流程。 4.1 软件主程序设计 主程序主要完成单片机初始化,关中断,菜单显示内容初始化,按键扫描,电机运行,计时等功能。主程序的流程 所示。4.1图如图 开关中断设置堆复位初始设定键电机控制显设定时有键操作电机工开始计键码分工作完成到点了电机停命令键数码键处理 图4.1 主程序流程图 主程序流程说明:电路主要分为以下几个部分,分别是电源部分、显示部分、按键部分、步进电机控制部分、A\D转换部分、单片机主控器件部分,各部分具有不同的子程序。 启动主程序,先关中断并且设置堆栈,接着初始化寄存器,初始化显示内容;然后执行按键查询,执行相应的操作。如果是设定键,则设定时间,开始计时;到时间后步进电机 开始相应的工作,工作完成后停机。如果是电机控制键,则也执行相应的工作。如果都不是,则是复位键,采取复位操作。 4.2 软件子程序设计 4.2.1 步进电机程序设计 步进电机是操控窗帘开闭的主要执行器件,其设计主要是按照单片机指令以及按键指令进行正转或者反转。图4.2是步进电机工作流程图。 开步进电是正转吗传送正传送反脉冲序脉冲序传送步数是传送步数是完完成返回 图4.2 步进电机工作流程图 步进电机程序设计的主要任务是: (1)判断旋转方向; (2)按顺序传送控制脉冲; (3)判断所要求的控制步数是否传送完毕。 总之,只要按一定的顺序改变 P2.0-P2.3 四位通电的状况,即可控制步进电机依选定的方向步进。而对于节拍比 较多的控制程序,通常采用循环程序进行设计。. 开显示子程R显示器缓冲起始地60R显示位代0189C5R位代取显示数据查表转89C5成显示代码延R指位显示完吗左移一R返回 图4.3 显示部分子程序流程图 4.2.2 显示程序设计 显示程序开始后,起始地址60H发送到R0,01H发送至显示位代码R2,再将位代码发送到单片机A口,单片机取显示数据查表转换成显示代码发送至单片机B口,延时2ms,指针R0加1,然后判断6位显示是否完成。如果完成则返回,没完成则位代码R2左移一位,继续显示查表,一直到6位 所示。4.3显示完成后返回。显示部分子程序流程图如图 4.2.3 键盘程序设计 在操作按键时,无论是按下还是松开,触点在闭合和断开时均会产生抖动,此时逻辑电平是不稳的,如果得不到正确处理,可能会引起单片机对按键命令的错误执行。解决这个问题的简单方法是利用软件延时。在单片机处理按键操作后都延时6ms,如果确定是按键后再延时12ms,这样基本可以避免键盘的抖动。然后由单片机进行键码分析,并执行相应的命令,显示并且返回。图4.4是键盘程序设计流程图。 4.2.4 定时程序设计 定时程序的主要作用是在用户设定的时间后能够使单片机收到一个中断信号,从而发出相应的指令,控制窗帘的开关。时钟芯片发出50ms的信号给单片机后,计数器开始工作,计数器记到20,时间即为1秒,秒单元加1,当秒单元计数到60,分单元加1,此时秒单元清零。当时单元计数 是定时程序流程图。4.5时单元清零。图24到. 开有按键两次调用显示子12m合序延调用显示子程序延有按键6m合键码分执行相应的模显返回 4.4 键盘程序流程图图 开始,秒单分单元加1元清零,分写入分个位和分十位现场保护,重置初值,启动下一个50msN50ms,计数器加1分单元=60?Y时单元加1,分单N元清零,时写入计数器=20?时个位和时十位Y秒单元加1,50ms计N时单元=24数器清零,秒写入?Y秒个位和秒十位Y时单元清零N秒单元=60?返回Y 图4.5 定时程序流程图

文档评论(0)

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

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

1亿VIP精品文档

相关文档