嵌入式系统设计实验报告 下载本文

西安邮电大学

嵌入式系统设计实验报告

专 业 班 级 学 号 学生姓名 指导教师 学 期 完成日期

2013-2014学年第2学期

2014-06-25

基于lpc2131的模拟电梯控制实验

一、实验目的

1、熟悉ARM & ADS V1.2 的环境 2、理解LPC2131芯片引脚功能的选择 3、理解GPIO的使用设置、输入驱动方法

4、理解SPI全双工同步串行通信原理,学习ARM SPI资源的驱动编程 5、学习在LPC2131上移植ucosⅡ系统 二、实验内容及要求

1、通过键盘输入楼层,输入之后数码管从当前位置向上或向下运行,流水灯表示运动方向。

2、流水灯在运行中显示电梯正在运行的方向,并且在电梯到达时在该楼层闪烁3次。

3、电梯运行到对应楼层,数码管显示楼层号。 4、流水灯表示电梯运行楼层。

5、系统可同时满足多用户需求。达到该系统与现实电梯系统的一致性。

三、系统总体设计(总体方案及系统框图)

主要是创建了四个任务,分别为电梯总任务、按键检测任务、电梯方向改变任务及电梯向上或向下运行任务,然后启动多任务环境,通过事件标志组发送和接收消息,进而实现电梯的一些基本的功能。

数码管显 示模块 蜂鸣器模块 LPC2131 SPI 串口模块 LED显示与键盘模块 四、系统详细设计(模块详细设计及流程图)

开始系统初始化是否有按键按下?NY本层是否为目标层?YN确定方向运行电梯是否到达?是否有按键按下?NY开门Y确定方向Y是否和当前方向一致?NN之前方向的任务是否结束?Y

五、系统测试(数据测试结果及分析)

通过键盘按键输入楼层数,发送到开发板,数码管和LED灯初始化时会停留在电梯的第一层。接受到数据后数码管会自动变化到该楼层,并且LED灯在数码管变化的同时会显示电梯当前的运动状态,上或者下。在程序运行的任何期间都可以从键盘输入电梯的楼层数。而且程序会自动判断要满足的用户的优先级。

此次试验达到的效果基本与现实中电梯的运行模式达到了一致。 六、总结

在整个课程设计中,我们组员一起认真地查找相关资料,然后又对书中的相关内容仔细翻阅,通过虚心请教和不懈的努力,最终完成了整个设计,心中的喜悦实在无以言表。此刻,我非常感谢我们组长的鼓励和帮助,感谢同学们诸多的帮助!本次设计不仅让我收获了许多,也让我对以前所学习的ARM知识有了进一步的深化与巩固,最关键的是,它给了我一份自信。但我很明白,作品中还存在着比较多的不足,这些都需要进一步的改善,我会不骄傲,不气馁,用着自信与执着尽最大努力将其完善。 七、附录(代码+注释)

#include \#include \

#define KEY1 #define KEY2 #define KEY3 #define KEY4 #define KEY5 #define KEY6

1 << 16 // P0.16连接KEY1 1 << 17 // P0.17连接KEY2 1 << 18 // P0.18连接KEY3 1 << 19 // P0.19连接KEY4 1 << 20 // P0.20连接KEY5 1 << 21 // P0.21连接KEY6