基于.ARM的交通灯设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
\\
\\\\\\\\\ sfe
攀枝花学院本科课程设计
基于ARM的交通灯设计
学生姓名:
学生学号:
院(系):电气信息工程学院
年级专业:
指导教师:
二〇一四年十二月
摘要
本设计是基于STM32微控制器进行的交通灯设计.STM32是意法半导体以ARM 为核心的微控制器。
交通灯通常指由红、黄、绿三种颜色灯组成用来指挥交通的信号灯。绿灯亮时.准许车辆通行.黄灯亮时.已越过停止线的车辆可以继续通行;红灯亮时.禁止车辆通行。
交通灯的硬件设计主要由三部分组成:微控制器最小系统.交通灯的信号灯.显示时间的数码管。软件部分由三部分组成:数码管显示函数.交通灯切换函数.时间计时函数。交通灯工作的流程是计数器每秒钟减一.减到零时切换信号灯.在主函数中调用数码管显示函数.以便快速扫描显示。
交通灯设计的关键问题是实现信号灯切换、计数器自减、数码管扫描显示等功能。同时该设计具有设计方法合理.简单易行.成本低.安全实用等特点.具有推广价值。
关键词微控制器.交通灯.数码管.STM32.ARM
目录
摘要 (1)
1 绪论 (3)
1.1本课题研究的背景及意义 (3)
1.2国内外研究现状、水平 (3)
1.3本课题的发展趋势 (3)
1.4本课题的研究内容 (3)
2 方案设计 (5)
2.1微控制器选择 (5)
2.2显示设备的选择 (5)
2.3信号灯的选择 (5)
2.4系统设计思路 (5)
2.5方案框图 (6)
2.6方案论证 (6)
3 硬件设计与实现 (6)
3.1电路设计框图 (6)
3.2最小系统设计 (7)
3.3 LED模块 (7)
3.4数码管模块 (7)
3.5系统总电路图 (8)
4 软件设计 (9)
4.1软件的设计架构 (9)
4.2软件设计过程 (9)
4.3 MDK工程建立及配置 (10)
4.4主要函数代码 (11)
5 系统仿真与调试 (13)
体会 (14)
参考文献 (15)
1 绪论
1.1本课题研究的背景及意义
随着社会的发展.人们不断地从农村涌入城市.城市人口越来越多.现在中国的千万级人口的城市越来越多。人口多伴随的是车辆越来越多.而且我们的生活越来越好.私家车越来越多.如果没有一个良好的交通规则.那么城市的交通系统必然会瘫痪。交通警察是有限的.这种情况下永不下岗的“交通警察”交通灯就派上大用场了。现在的交通灯已经是城市中不可缺少的基础设施。
交通灯通常指由红、黄、绿三种颜色灯组成用来指挥交通的信号灯。绿灯亮时.准许车辆通行.黄灯亮时.已越过停止线的车辆可以继续通行;红灯亮时.禁止车辆通行。
1.2国内外研究现状、水平
目前设计交通灯的方案有很多.西方国家已经有应用CPLD设计实现交通信号灯控制器方法;有应用PLC实现对交通灯控制系统的设计;有应用单片机实现对交通信号灯设计的方法。目前.国内的交通灯一般设在十字路门.在醒目位置用红、绿、黄三种颜色的指示灯。加上一个倒计时的显示计时器来控制行车。对于一般情况下的安全行车.车辆分流尚能发挥作用.但根据实际行车过程中出现的情况.还存在以下缺点:
1.两车道的车辆轮流放行时间相同.在十字路口.经常一个车道为主干道.车辆较多.放行时间应该长些;另一车道为副干道.车辆较少.放行时间应该短些。
2.两条干道的红绿时间不能随时间的改变而修改。
1.3本课题的发展趋势
随着智能时代的到来.让交通灯也智能的想法已经不是难事.智能的表现方式主要是拥有自动调整亮灯时间长短的功能。譬如说.它能自动感应该地区的交通情况.如果塞车的话该交通灯能自行控制红、黄与绿等的亮灯时间长短。而这个检测道路车辆数量的方案有很多种.技术上比较难施工上比较容易的是在交通的上加上摄像头.运用数字图像处理技术来识别车辆的数量。另一种方法是可以在公路下面埋上压力传感器.这种方法技术上没什么难度.但施工比较麻烦。
1.4本课题的研究内容
本设计是基于STM32F407的交通灯设计.交通灯的硬件设计主要由三部分组成:微控制器最小系统.最小系统的构建有主控芯片STM32.晶振.滤波电容.
复位电路;交通灯的信号灯.信号灯由超低功耗的LED组成.LED的正极接电源正极.负极连接STM32I/O口.并且要串联一个限流电阻;显示时间的数码管数码管用以显示倒计时.倒计时只有几十秒.所以只用2个数码管就够了.数码管采用动态扫描显示方式.所以在程序中需要不断的刷新显示.给程序增加了难度。
软件部分由三部分组成:数码管显示函数.函数输入一个数字.数码管就可以显示该数字;交通灯切换函数.倒计时为0时.就要执行该函数.实现红绿灯的切换;时间计时函数.该函数实现倒计时.是本设计的核心。
交通灯工作的流程是计数器每秒钟减一.减到零时切换信号灯.在主函数中调用数码管显示函数.以便快速扫描显示。
ARM处理器是Acorn计算机有限公司面向低预算市场设计的第一款RISC微处理器。更早称作Acorn RISC Machine。ARM处理器本身是32位设计.但也配备16位指令集.一般来讲比等价32位代码节省达35%.却能保留32位系统的所有优势。早期的ARM以ARM7、ARM9等命名.在推出了ARM11之后的ARM核心采用了不同的命名方式.这就是新型的Cortex内核.分为三个系列.A系主打高端市场.R系用于实时性要求很高的领域.M系是面向控制的内核.与单片机一样.Cortex-M核目前有M0、M3、M4.前不久ARM推出了最新的ARM7.为可穿戴设备设计。
STM32是意法半导体基于ARM核心加上外围模块构成的新型微控制器。STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核.STM32F1等基于Cortex-M3.STM32F4等基于Cortex-M4。
STM32F407采用了90 纳米的NVM 工艺和ART.ART技术使得程序零等待执行.提升了程序执行的效率.将Cortex-M4的性能发挥到了极致.该芯片最高工作频率可达到168MHz.运行速度接近低端微处理器.STM32F407集成了单周期DSP指令和FPU(浮点单元).提升了计算能力.可以进行一些复杂的计算和控制。