基于AVR单片机的电梯控制系统.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于AVR单片机的电梯控制系统

基于AVR Atmega128 设计的小型电梯控制系统 一 实验目的 本实验是一个综合性的实验,用到了实验箱上的大多数资源,能很好的检验学习的情况,对熟悉实验箱的应用和操作有很大的好处。 二 实验内容 本实验是基于AVR ATmegal128开发的电梯控制系统,由于本系统的硬件主要是依靠实验箱,所以所实现的功能没有实际的客运电梯的强大,但是本系统可以应用于运行条件不是特别严格的环境下,如小型货运电梯。 三 硬件原理 为了加强自己对硬件部分的了解,提高自己的编程水平,尽可能多的使用现有实验箱资源,在这个系统中,加入了以下硬件:1、4*4键盘 2、8*8 LED点阵(LDM) 3、TEXT LCD 4、7段led数码管 5、外部中断 6、音频输出 7、步进电机 下面是各部分的硬件PCB: ATmegal128 2、8*8 LED点阵(LDM) 3、TEXT LCD 4、外部中断 5、音频输出 7、步进电机 8、4*4键盘和7段led数码管 四 程序流程图 TEXT LCD初始化,其上显示欢迎字幕,并要求用户进行楼层选择 调用键扫描函数key_scan(); 通过扫描出来的键值来确定用户所要到的楼层数 将上次运行的楼层数保存到参数d中 并判断当前所选楼层bin与上次楼层之间的大小情况 If(bind) If(bin=1) If(bind) 调用print_message();TEXT LCD显示“THE LIFT IS RUNNING!” 调用initializemotor();初始化电机,电机开始正转 调用matrix(font_A);进行LDM显示,楼层数每变化一次,参数f自动加一(f用来存放当前电梯运行处的楼层数) 判断当前楼层数是否与目标楼层数相等 是 调用function();电机停转,TEXT LCD显示,提醒语音响起,点阵 静态现实当前已到楼层数 否ou 调用键扫描函数key_scan();扫描到关门键(数字'f') (bind) 调用initializemotor();初始化电机,电机开始反转 调用matrix(font_A);进行LDM显示,楼层数每变化一次,参数f自动减一(f用来存放当前电梯运行处的楼层数) (bin=1) 判断当前楼层数是否为1 否ou 调用function();电机停转,TEXT LCD显示,提醒语音响起,点阵 静态现实当前已到1层 是 系统主函数流程图 电机中断流程图 中断初始化 给定中断初值 内部计数器控制,中断初值自动加1,达到溢出值时触发中断 给电机送入相序,使电机旋转

您可能关注的文档

文档评论(0)

2017ll + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档