ImageVerifierCode 换一换
格式:DOCX , 页数:93 ,大小:780.31KB ,
资源ID:1815704      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1815704.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电梯控制程序源代码带流程图功能分解源代码.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电梯控制程序源代码带流程图功能分解源代码.docx

1、电梯控制程序源代码带流程图功能分解源代码电梯控制程序源代码(带流程图-功能分解、源代码) 作者: 日期: 综合电子创新训练研究报告研究题目:CTS1600-1控制技术综合试验院系名称: 专业名称: 学生姓名:指导教师: xxxx年 xx月 xx日xxxxxxxxxx图目录第一章绪论1.1课题背景与目的现代社会中,电梯已经成为不可缺少的运输设备。电梯的存在使得每幢高层建筑的交通更为便利。电梯控制技术的发展主要经历了三个阶段:继电器控制阶段,微机控制阶段,现场总线控制阶段。随着经济的高速发展,微电子技术、计算机技术和自动控制技术也得到了迅速发展,交流变频调速技术已经进入一个崭新的时代,其应用越来越

2、广。电梯是现代高层建筑的垂直交通工具,其设计要求稳定性、安全性及高。随着人们生活水平的不断提高,对电梯的要求的也相应提高,电梯得到了快速发展。电梯模型将机械和电气两方面有机地结合起来,充分体现了机电结合的特点,同时微机控制即单片机控制的电梯在成本上较低,同时还有着较高的精度,非常适合在学生机电实验方面得到广泛的应用,可以提高大家的编程能力,加深对单片机的理解和应用,同时增强创新精神和团队合作精神。1.2课题研究方法参照凌阳SPCE061A开发的相关资料,加深对控制电梯模型的单片机的了解,进行61板的相关实验,掌握单片机实现基本功能的技术。对单片机编写程序,以达到控制电梯模型的目的。第二章电梯模

3、型硬件设备2.1 实验单片机模型与接口定义2.1.1 实验用单片机实验用单片机为凌阳SPCE061A微控制器(简称61板),是以凌阳16位单片机SPCE061A为核心的精简开发-仿真-电路板。61板除了具备单片机最小系统电路外,还包括有电源电路、音频电路、复位电路等,采用电池供电,方便携带。SPCE061A 是继unSP系列产品SPCE500A等之后凌阳科技推出的又一款16位结构的微控制器。跟市面上常见的avr、51等单片机相比,这款单片机具有一个绝招:语言功能。与SPCE500A不同的是,在存储器资源方面考虑到用户的较少资源的需求以及便于程序调试等功能,SPCE061A里只内嵌32K字的闪存

4、(FLASH)。较高的处理速度使unSP能够非常容易地、快速地处理复杂的数字信号。SPCE061A主要包括输入/输出端口、定时/计数器、数/模转换、模/数转换、串行设备输入/输出、通用异步串行接口、低电压检测和复位等部分,且内置在线仿真电路ICE接口,较高的处理速度使其能够快速地处理复杂的数字信号。本电梯模型就是采用此单片机进行程序编写和实现电梯的运行控制。Figure 1 凌阳单片机2.1.2 单片机接口定义实验用单片机接口定义如图,其中A口为输入,B口为输出。+ 去一层 三层下 去二层 四层下去三层 一层到达去四层 二层到达一层上 三层到达二层上 四层到达二层下 开门 三层上 关门 + +

5、电梯上下运行(1上0下) 三层下灯电梯运行选通(1行0停) 四层下灯开关门运行(1开0关) 开门到位开关门选通(1行0禁) 关门到位一层上灯 二层上灯 二层下灯 三层上灯 Figure 2 凌阳单片机接口定义2.1.3 I/O接口DATA控制命令表单片机A口DATA控制命令表A口(信号输入)*P_IOA_Data接口编号电梯动作0x0001A0去一层(内部按键)0x0002A1去二层(内部按键)0x0004A2去三层(内部按键)0x0008A3去四层(内部按键)0x0010A4一层上(外部按键)0x0020A5二层上(外部按键)0x0040A6二层下(外部按键)0x0080A7三层上(外部按键

6、)0x0100A8三层下(外部按键)0x0200A9四层下(外部按键)0x0400A10一层到达(外部按键)0x0800A11二层到达(外部按键)0x1000A12三层到达(外部按键)0x2000A13四层到达(外部按键)0x4000A14开门(内部按键)0x8000A15关门(内部按键)单片机A口DATA控制命令表A口(信号输入)*P_IOB_Data接口编号电梯动作0x0001B0电梯上下运行(1上0下)0x0002B1电梯运行选通(1行0停)0x0004B2开关门运行(1开0关)0x0008B3开关门选通(1行0禁)0x0010B4一层上灯0x0020B5二层上灯0x0040B6二层下灯

7、0x0080B7三层上灯0x0100B8三层下灯0x0200B9四层下灯0x0400B10开门到位0x0800B11关门到位0x1000B12数码管0x2000B13数码管0x4000B14数码管0x8000B15单片机接口属性设置: *P_IOA_Dir=0*P_IOA_Attrib=0*P_IOA_Data=0 (设A0-A15口为输入)*P_IOB_Dir=0xf3ff*P_IOB_Attrib=0xf3ff (设B0-B9口为输出,B10、B11口为输入)*P_IOB_Data=0;2.2 电梯控制命令说明1.一层上按钮按下,*P_IOA_Data输入值为0x0010;使一层上按键灯亮

8、起的命令为:*P_IOB_Data=0x0010,同时其它层按键灯熄灭;如果要使其它层按键灯不受此按键灯影响,保持原来的状态,则输入的命令应为:*P_IOB_Data=0x0010| P_IOB_Data;2.二层上按钮按下,*P_IOA_Data输入值为0x0020使二层上按键灯亮起的命令为:*P_IOB_Data=0x0020同时其它层按键灯熄灭;如果要使其它层按键灯不受此按键灯影响,保持原来的状态,则输入的命令应为:*P_IOB_Data=0x0020|P_IOB_Data;3.二层下按钮按下,*P_IOA_Data输入值为0x0040使二层下按键灯亮起的命令为:*P_IOB_Data=

9、0x0040时其它层按键灯熄灭;如果要使其它层按键灯不受此按键灯影响,保持原来的状态,则输入的命令应为:*P_IOB_Data=0x0040|P_IOB_Data;4.三层上按钮按下,*P_IOA_Data输入值为0x0080使三层上按键灯亮起的命令为:*P_IOB_Data=0x0080;同时其它层按键灯熄灭;如果要使其它层按键灯不受此按键灯影响,保持原来的状态,则输入的命令应为:*P_IOB_Data=0x0080| P_IOB_Data;5.三层下按钮按下,*P_IOA_Data输入值为0x0100,使三层下按键灯亮起的命令为:*P_IOB_Data=0x0100,同时其它层按键灯熄灭;

10、如果要使其它层按键灯不受此按键灯影响,保持原来的状态,则输入的命令应为:*P_IOB_Data=0x0100| P_IOB_Data;6.四层下按钮按下,*P_IOA_Data输入值为0x0200,使四层上按键灯亮起的命令为:*P_IOB_Data=0x0200,同时其它层按键灯熄灭;如果要使其它层按键灯不受此按键灯影响,保持原来的状态,则输入的命令应为:*P_IOB_Data=0x0200| P_IOB_Data;7.电梯内部开门按钮按下,*P_IOA_Data输入值为0x4000,使电梯开门的命令为:*P_IOB_Data=0x000c;8.电梯内部关门按钮按下,*P_IOA_Data输入

11、值为0x8000;使电梯关门的命令为:*P_IOB_Data=0x0008。我们为了能够简化我们的程序,我们在头文件define.h中定义了直观易懂的单词来表示数字指令,这样使得编程过程更加容易直观,并且使得程序的可读性更强,但是这种方法是在之前不断地尝试的基础上才逐渐摸索出来的,因而在后来编写的程序中普遍用到了这种方法,而在开始训练阶段编写的程序还往往是使用数字型的指令,具体的定义如下:#ifndef _DEFINE_h_#define _DEFINE_h_#define IOA *P_IOA_Data#define IOB *P_IOB_Data#define uint unsigned

12、int#define uchar unsigned char#define ulong unsigned long#define stop 0x0000#define down 0x0002#define up 0x0003#define bt1up 0x0010#define bt2up 0x0020#define bt2down 0x0040#define bt3up 0x0080#define bt3down 0x0100#define bt4down 0x0200#define btin1 0x0001#define btin2 0x0002#define btin3 0x0004#d

13、efine btin4 0x0008#define btopen 0x4000#define btclose 0x8000#define openok 0x0400#define closeok 0x0800#define down 0x0002#define up 0x0003#define close 0x0008#define open 0x000c#define L1 0x1000#define L2 0x2000#define L3 0x3000#define L4 0x4000#define L1up 0x0010#define L2up 0x0020#define L2down

14、0x0040#define L3up 0x0080#define L3down 0x0100#define L4down 0x0200#define at1 0x0400#define at2 0x0800#define at3 0x1000#define at4 0x2000#endif同时由于看门狗在程序中频繁出现,故定义看门狗函数dog方便使用:#include spce061A.h#include dingyi.hvoid dog() *P_Watchdog_Clear=0x0001;2.3 实验用电梯模型第三章 与电梯模型相关的实验程序3.1数码管连续显示3.1.1 程序流程图Figure 4 数码管连续显示流程图3.1.2 功能简介程序初始化完成后,数码管从0连续变化到7,再从7连续变化到1。3.1.3 功能实现过程通过定义一个指示当前数码管显示数值的变量,以该变量为循环条件,每次循环结束后变量自动加1,即指示下一个数码管显示数值,并且通过延时函数使得输出持续一段时间一边观察现象。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1