基于ARM的交通灯设计 精品
2012ARM课程设计指导-交通灯控制系统

计可以分为以下几个功能模块: ·主程序:初始化及键盘监控。 ·计时程序模块:为定时器的中断服务子程序,完
成0.1秒和1秒的时间定时。
回目录
·显示程序模块:完成12个发光二极管(实际上 只需驱动6个)和4个LED数码管的显示驱动。
回目录
课程设计的任务相对分散,每2名学生组成一 个小组,完成一个课题的设计。小组成员既有分工、 又要协作,同一小组的成员之间可以相互探讨、协 商,可以互相借鉴或参考别人的设计方法和经验。 但每个学生必须单独完成设计任务,要有完整的设 计资料,独立撰写设计报告,设计报告雷同率超过 50%的课程设计考核按不及格处理。
回目录
4、软件设计
根据设计要点,软件设计首先应对系统资源进行进 行分配和说明。
为了增加程序的可读性,理清程序的编写思路,建 议程序采用模块化结构,可按以下9个模块编写程序: ① 主程序模块:主要完成RAM清零,T0定时器的设置, 绿、黄灯的初值设定,键盘查询以及各子程序的调用。
回目录
② 定时中断服务程序模块:产生0.1秒和1秒 的定时信号,每到了1秒钟,使南北绿灯(20H), 南北黄灯(21H),东西绿灯(22H),东西黄灯 (23H)进行递减计数。 ③ 扫描显示子程序:为4位LED动态显示提供 驱动信号。PD口和PA2~5口为数码管提供驱动 信号,PD口为字段口,低电平有效,PA2~5口 为字位码输出口,高电平有效。
回目录
四、设计过程
1、设计要求
十字交叉路口的 交通灯控制系统的结 构如图1.1所示。
北 东
西 南
回目录
图1.1 十字路口交通灯控制示意图
往南和往北的信号一致,即红灯(绿灯或黄 灯)同时亮或同时熄灭。用两个数码管来显示被 点亮的指示灯还将点亮多久。
ARM交通灯

ARM交通灯实验报告实验要求:交通灯(采用定时器中断计秒)实验内容:交通灯设计可以分为三个部分:(1)采用定时器T0中断完成1秒的时钟(2)采用两位数码管显示时间(3)红绿灯部分下面详细分析三个部分如何工作的(1)采用定时器T0中断完成1秒的时钟初始化后计数器T0工作,每一秒钟计数器T0比配一次进入中断中断设置为向量中断。
(2)红绿灯部分这是预先设置的用于方向变化的变量进入中断后先判断time的值之后,逐次减一,sec_nb/sec_dx到达不同的值时通过控制I/O口的电平,控制红绿灯的亮灭。
通过改变sec_nb /sec_dx的值可以改变东西或者南北方向的放行时间(3)采用两位数码管显示时间十字路口放行和等待的时间是一致的,所以一个两位的数码管足以显示所有时间以上两个函数DelayNS 用以动态控制扫描的延迟Display 是显示函数采用动态扫描的方式,处理形参之后得到个位和十位的值,逐个送入数码管显示主函数中的while语句中先判断方向,之后将对应的通行时间放入显示函数不断显示在数码管上。
以上三个部分完成整个交通灯的设计,虽然很简陋但是基本功能都已经实现。
以下是仿真图:仿真结果与目标一致改进于提高:(1)数码管显示模块可以用SPI来完成,这样更加灵活同时节约了I/O资源。
(2)可以加入按键,以达到可以在外部控制增加或减少各方向通行时间的功能,以及可以加入零时插队功能,在东西通行时按键快速进入南北通行不需要等待。
以上按键可以用I/O口扫描完成,也可以使用外部中断。
附件:源程序#include "config.h"#define LED_NB 0x10000 /*南北方向绿灯,东西方向红灯*/#define LED_DX 0x20000 /*南北方向红灯,东西方向绿灯*/#define LED_Y 0x40000 /*四个方向的黄等*/uint32 sec_nb=10; /*东西默认值*/uint32 sec_dx=20; /*南北默认值*/uint32 time = 0; /*方向标志位0=南北1=东西*//************数码管显示代码和数码管位显示的代码*****************************************///unsigned intnum_code[]={0xff00003f,0xff000006,0xff00005b,0xff00004f,0xff000066,0xff00006d,0xff00007 d,0xff000007,0xff00007f,0xff00006f};uint32 wei[]={0xfff00200,0xfff00100};//定义位选的列表,32位的数值/****************************************************************************** *************** 函数名称:DelayNS()** 函数功能:长软件延时。
基于.ARM的交通灯设计说明书

\\\\\\\\\\\ 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本课题研究的背景及意义随着社会的发展.人们不断地从农村涌入城市.城市人口越来越多.现在中国的千万级人口的城市越来越多。
基于arm7的交通灯设计

信息工程系嵌入式系统设计题目:基于ARM嵌入式系统的交通灯设计专业:电气工程及其自动化班级:K0309414学号:K030941410学生姓名:蔡泉权指导教师:徐建摘要随着移动设备的流行和发展,嵌入式系统已经成为一个热点。
它并不是最近出现的新技术,只是随着微电子技术和计算机技术的发展,微控制芯片功能越来越大,而嵌入微控制芯片的设备和系统越来越多,从而使得这种技术越来越引人注目。
它对软硬件的体积大小、成本、功耗和可靠性都提出了严格的要求。
嵌入式系统的功能越来越强大,实现也越来越复杂,随之出现的就是可靠性大大降低。
最近的一种趋势是一个功能强大的嵌入式系统通常需要一种操作系统来给予支持,这种操作系统是已经成熟并且稳定的,可以是嵌入式的Linux,WINCE等等。
本文所要研究的就是基于ARM嵌入式系统的交通灯系统的设计与实现。
本设计采用了飞利浦的32位ARM微处理器LPC2138作为核心处理器。
关键词:嵌入式系统,ARM,LPC2138,交通灯AbstractWith the prevalence of mobile devices and development of embedded systems has become a hot spot. It is not a recent emergence of new technology, just as micro-electronics technology and the development of computer technology, micro-chip control functions more and more, and control of micro-chips embedded in the equipment and systems more and more, making the technology more Reply People attention. Hardware and software of its size, cost, power consumption and reliability have made stringent requirements. Embedded systems function more powerful, and more and more complicated, then there is the reliability greatly reduced. A recent trend is a powerful embedded systems usually need a operating system to support the operating system is already mature and stable, can be embedded Linux, WINCE, and so on. This paper is to study under the ARM embedded system’s the system of traffic lights design and implementation. This design uses Philips's 32 as the LPC2138 ARM microprocessor core processors. Keywords:Embedded Systems, ARM, LPC2138, raffic lights1 引言····················错误!未定义书签。
基于ARM嵌入式系统的交通灯方案设计书

摘要:随着移动设备的流行和发展,嵌入式系统已经成为一个热点。
它并不是最近出现的新技术,只是随着微电子技术和计算机技术的发展,微控制芯片功能越来越大,而嵌入微控制芯片的设备和系统越来越多,从而使得这种技术越来越引人注目。
它对软硬件的体积大小、成本、功耗和可靠性都提出了严格的要求。
嵌入式系统的功能越来越强大,实现也越来越复杂,随之出现的就是可靠性大大降低。
最近的一种趋势是一个功能强大的嵌入式系统通常需要一种操作系统来给予支持,这种操作系统是已经成熟并且稳定的,可以是嵌入式的Linux,WINCE等等。
本文所要研究的就是基于ARM嵌入式系统的交通灯系统的设计与实现。
本设计采用了飞利浦的32位ARM微处理器LPC2138作为核心处理器1引言交通信号灯指挥着人和各种车辆的安全运行,实现红、黄、绿灯的自动指挥是城乡交通管理现代化的重要课题.在城乡街道的十字交叉路口,为了保证交通秩序和行人安全,一般在每条道路上各有一组红、黄、绿交通信号灯,其中红灯亮,表示该条道路禁止通行。
黄灯亮,表示该条道路上未过停车线的车辆停止通行,已过停车线的车辆继续通行。
绿灯亮,表示该条道路允许通行.交通灯控制电路自动控制十字路口两组红、黄、绿交通灯的状态转换,指挥各种车辆和行人安全通行,实现十字路口城乡交通管理自动化.本文为了实现交通道路的管理,力求交通管理先进性、科学化. 分析应用了单片机实现智能交通灯管制的控制系统,以及该系统软、硬件设计方法,实验证明该系统实现简单、经济,能够有效地疏导交通,提高交通路口的通行能力。
2 相关内容及原理通过设计,培养自己综合运用所学知识、独立分析和解决实际问题的能力,培养创新意识和创新能力,并获得科学研究的基础训练,加深对ARM芯片的了解;熟悉ARM芯片各个引脚的功能,工作方式,计数/定时,I/O口,中断等相关原理,巩固学习嵌入式的相关内容知识。
利用ARM芯片模拟实现交通灯控制。
自行选择所需ARM芯片,查阅相关文献资料,熟悉所选ARM芯片,了解所选ARM芯片各个引脚功能,工作方式,计数/定时,I/O口,中断等相关原理,通过软硬件设计实现利用ARM芯片完成交通灯的模拟控制。
基于ARM智能交通灯控制系统的设计

【 l 】 柯瀚 , 刘骏 龙 , 等. 不 同压 力下 垃圾 降解 压 缩试 验 研 究…. 岩 土 工程 等, 该 装 置借 答 谢焰 等研 制 的城 市牛 活 垃 圾 降解 压 缩 试验 仪 ㈣ ,以满 学报 , 2 0 1 0 , 3 2 ( 1 0 ) : l 6 1 0 一 l 6 1 5 . 足 试验 的 受求 , 试 验 台 『 皋 1 3 f 2 降 晓东, 陆胜 勇, 等. 中国部 分城 市生活垃圾热值的分析…. 中国环 ( 2 ) 装 样 配制 新 鲜 垃圾 试样 . 分 别存 1 、 2 、 3 、 4 、 5 、 6六 个 试样 桶 境科 学 , 2 0 0 1 , 2 l ( 2 ) : 1 5 6 — 1 6 0 . 巾装 2 0 0 g的 试样 垃圾 . 他 6个试洋 的 组分 、 水率 等 物 理性 质指 标 【 3 】 谢 焰, 陈 云敏 , 等. 城 市 生 活 垃圾 降 解 压 缩试 验 仪研 制及 应 用I J I . 岩 尽量 一致 , 土 工程 学报 , 2 0 0 5 , 2 7 ( 5 ) : 5 7 1 - 5 7 6 . ( 3 ) 进 试 验 对 6个 试样 施 加 荷 载 , 试验开始当天晚上 7 : 胡建军, 李洪, 等. 美国 P A R R 6 3 0 0热值 仪 在 能 源 植 物 热 值 测 定 中 0 0 , 给J 、 2、 3 、 4 、 5 、 6 垃 圾 试样 , 『 州 时分别施加 0 、 0 . 5 、 1 . 0 、 1 . 5 、 2 . 0 、 2 . 5 的应 用…. 学术 园地 , 2 o o 9, 4: 1 3 一l 4 . k g / c m 的‘ 向压 力 , 共加 7火 每 天 在 晚 L 7 : 0 0取样 , 称 取 一定 【 5 】 何品晶, 范爱晶, 等. 城 市 垃圾 热值 计 算 方 法 的探 讨 【 J 1 . 环境 卫 生工 质 量垃圾 样 烘干 至恒 重 。测 定其 含水 率 , 记 录相 关 数据 。 程 , 1 9 9 4 , 3: 3 - 7 . ( 4 ) 埘 实 验 数据 进 行 处州 , 分 析 研 究 含 水 率 与 加 压 压 力 和 加 作者简介: 邹晓青( 1 9 9 4 一 ) , 女, 汉族 , 浙 江 嘉 兴人 , 浙 江农 林 大 时f n J 的火系, 网4 。 学环 境 与 资源 学 院 大学 本科 四 年级 在 读 , 专业方向: 环境工程 . . 4, } 活 垃圾 热 值 测 定及 分 析 东惠 惠( 1 9 9 4 一 ) , 女, 汉族 , 河 南 周 口人 , 浙 江农 林 大学 环 境 与 资 奉 研 究 利川 氧氮 式 热 汁测 定 垃 圾 r样 热 值 , 结 合 含 水 率 将 源 学院 大 学本 科 四年 级 在读 , 专 业方 向 : 环境 工程 、 1 = 基 热 值转 换 成 湿基 热 值I s I 。综合 考虑 各 种 素 , 做 曲线 模 型 分 析 , 鲁锦 海( 1 9 9 4 一 ) , 男, 汉 族, 浙 江绍 兴 人 , 浙 江 农林 大学 环 境 与 资 确定热f 『 I ‘ 加 压 压 力x H , j ' l ' t q 的关 系 。 见图 5 源 学 院大 学 本科 四 年级 在 读 , 专 业 方向 : 环境 工程 t - .  ̄ Y i J , L ' 圾J J 【 } 】 j i 『 后 水 牢变 化 及热 值 增 毓 表 1 . . 陈亚 非 : 指 导老 师 , 任 教 于浙 江农 林 大学环 境 与 资 源学 院 、
基于ARM的交通灯设计终极版
成绩 _______指导教师评定成绩:审定成绩:课程设计报告设计题目:基于ARM的交通灯设计学校:学生姓名:专业:自动化班级:学号:指导教师:《嵌入式系统》课程设计任务书——供11级自动化系学生用引言:嵌入式系统课程设计是自动化专业的一个重要教学环节,既有别于毕业设计,又不同于课堂教学。
它需要学生统筹运用所学各个专业的基本理论、基本方法对现实生活中的实际问题进行设计和调试。
一、设计题目:基于ARM的交通灯设计掌握嵌入式系统设计的基本方法,熟悉S3C24X0的开发环境及软硬件的调试过程,了解S3C24X0芯片各个引脚功能,工作方式,计时/定时,I/O口,中断等的相关原理,根据控制要求进行编程,解决十字路口交通灯控制的问题。
巩固和加深对理论课中知识的理解,提高对所学知识的综合运用能力。
二、系统工作过程说明车辆遇到红灯停绿灯行的行走情况,红绿灯时间均为60s,切换时间为10s,最后5s为黄灯闪烁。
利用S3C24X0 ARM芯片实现单路交通灯的控制:①实现红、绿、黄灯的循环控制。
使用红、黄、绿三种不同颜色的LED灯实现此功能,人行道用红、绿两个灯控制,用软件控制灯的亮与灭来控制车辆和行人的通行。
②用数码管显示倒计时。
可以利用动态显示或静态显示,串行并出或者并行并出实现。
③南北方向控制车辆的绿灯熄灭的同时,控制蜂鸣器响2秒来作为警报。
ARM9 2440芯片原理图:交通路口示意图如下图:(1)完成S3C24X0最小系统的硬件电路设计,并用Protel DXP设计电路原理图;(2)完成交通指示灯控制程序代码设计,在实验箱上调试并且能正常工作。
三、设计步骤:(1)对系统进行需求分析;(2)初始化配置(各种寄存器);(3)编写各种相关的中断程序并在主函数中调用这些程序;(4)编译程序;(5)使用仿真器进行调试。
摘要在高度信息化智能化的代,我们的生活中有很多使用到ARM嵌入式技术的地方,比如我们使用的手机操作系统,如Android OS、iOS等。
arm交通灯课程设计
arm交通灯课程设计一、课程目标知识目标:1. 学生能够理解并描述“ARM交通灯”的基本组成和工作原理;2. 学生能够掌握“ARM交通灯”控制程序的基本编写方法;3. 学生能够了解“ARM交通灯”在实际生活中的应用。
技能目标:1. 学生能够运用所学知识,设计并搭建简单的“ARM交通灯”电路;2. 学生能够编写并调试简单的“ARM交通灯”控制程序;3. 学生能够运用团队协作和问题解决的能力,完成课程任务。
情感态度价值观目标:1. 学生通过课程学习,培养对电子技术和编程的兴趣,提高学习的积极性和主动性;2. 学生在课程实践中,体会团队合作的重要性,培养团队协作精神和沟通能力;3. 学生了解“ARM交通灯”在交通安全中的作用,增强对社会责任的认识。
课程性质:本课程为实践性较强的课程,结合电子技术和编程知识,培养学生动手操作和问题解决能力。
学生特点:学生为初中生,具备一定的电子电路基础和编程基础,对新鲜事物充满好奇心。
教学要求:注重理论与实践相结合,充分调动学生的积极性,鼓励学生动手实践和团队协作,提高学生的综合能力。
在教学过程中,将课程目标分解为具体的学习成果,以便进行教学设计和评估。
二、教学内容1. “ARM交通灯”基础知识:- 交通灯系统的基本组成和工作原理;- ARM处理器的简单介绍。
2. “ARM交通灯”电路设计:- 电路元件的选择与连接;- 交通灯控制电路的搭建。
3. 编程控制“ARM交通灯”:- 编程环境及工具的使用;- 控制程序的编写与调试;- 常见编程问题的分析与解决。
4. 实践操作与团队协作:- 学生分组进行“ARM交通灯”电路搭建;- 团队协作编写并调试控制程序;- 课程任务的完成与展示。
教学大纲:第一课时:介绍交通灯系统的基本组成和工作原理,引导学生了解ARM处理器。
第二课时:讲解电路元件的选择与连接,指导学生搭建“ARM交通灯”电路。
第三课时:教授编程环境及工具的使用,指导学生编写控制程序。
基于ARM的交通灯控制系统
通信双方不能直接连接,而路由器的包过滤或防火墙的功能可被用来对不同虚拟网间用户的通信做逐项检查,通信可以按照网络管理人员的要求被允许或禁止,从而实现不同部门或不同应用系统间的访问控制,提高网络的安全性. 路由器上的访问列表使用Access list技术来实现,Access list选择路由器的端口作为控制点,检查每一个进出的数据包.Access list是基于网络层协议的,支持IP、IPX等多种协议.对于IP,Access list可检查IP包的源地址、目的地址、T CP和UDP上的端口号等深层信息,提供良好的控制能力. 在每个安全域内或多个安全域之间安装入侵检测系统(IDS),有效地防止来自网络内外的攻击.利用漏洞扫描器(Scanner),定期对系统进行安全性评估,及时发现安全隐患并实施修补,达到网络的相对持续安全.牡丹江大学校园网采用上述安全性设计后,实现了核心交换机之间的高带宽容错连接,控制了广播风暴的发生,网络设备VLAN仅允许同一子网内的访问,并且不定义网关接口,从而排除了对网络设备外来的恶意攻击,将不同权限的用户分别归类,并结合第三层交换的QOS定义,实现了授权用户仅使用授权服务,避免了来自校园网内部的非授权用户对重要资源的窃取和破坏.加强校园网的安全建设是当前各高校非常迫切的任务.各高校校园网应加强安全管理组织和技术培训,提高用户的安全意识,要具有完备的安全设施,使技术方面得到保障,高校之间应广泛交流管理经验,以做好校园网的安全管理工作,使之最终建设一个安全、可信的教育和科研网络环境.参考文献[1]谢希仁.计算机网络[M].大连:大连理工大学出版社,2007.[2]朱根宜.计算机网络[M].北京:清华大学出版社,2004.编辑:文心收稿日期:2007-04-02基于ARM的交通灯控制系统金玉苹(牡丹江师范学院数学系,黑龙江牡丹江157012)摘!要:利用AR M控制ZL G7289芯片,最终完成对交通灯的控制,ZL G7289芯片能够实现对L ED和8* 8矩阵键盘的控制,并对程序流程图进行了详细分析,实验证明,此系统能很好地提高市区车辆的通行能力.关键词:交通灯;A RM;Z LG7289芯片;矩阵键盘[中图分类法]T P399!!!![文献标识码]A!!!![文章编号]1003-6180(2008)01-0018-02!!交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制.红、黄、绿灯的转换要有一个准确的时间间隔和转换顺序.这就需要有一个安全、自动的系统对红、黄、绿灯的转换进行管理,本系统就是基于此目的而开发的.1!ZLG7289用到的指令格式1.1!复位该指令为单字节指令,当ZLG7289A收到该指令后,将所有的显示清除,所有设置的字符消隐、闪烁等属性也被一起清除.执行该指令后,芯片所处的状态与系统上电后所处的状态一样.输入指令如表1所示.表1!输入指令D7D6D5D4D3D2D1D0101001001.2!下载数据并以0方式译码该指令是双字节指令,其中X表示无影响.第一个字节(表2)前半部分为指令,ZLG7289下载数第二字节(表3)中数据并以方式0译码.其中A2,A1,A0为位地址,具体分配如表4所示. D3,D2,D1,D0为数据,译码方式按表5进行.小数点的显示由DP位控制,DP=1时,小数点显示,DP=0时,小数点不显示.表2!第一字节D7D6D5D4D3D2D1D0 10000A2A1A0表3!第二字节D7D6D5D4D3D2D1D0 DP X X X D3D2D1D0∀18∀表4!位地址表A200001111 A100110011 A001010101显示位12345678表5!译码表D3-D000000001001000110100010101100111 7段显示01234567D3-D010001001101010111100110111101111 7段显示89-E H L P DP 1.3!闪烁控制此命令为双字节指令,如表6、表7所示,控制各个数码管的消隐属性,L1 L8分别对应数码管1 8,0=闪烁,1=不闪烁.系统开启后,缺省的状态为各位均不闪烁.表6!双字节指令D7D6D5D4D3D2D1D010001000表7!双字节指令D7D6D5D4D3D2D1D0L8L7L6L5L4L3L2L1 1.4!消隐控制如表8、表9所示,此命令控制各个数码管的消隐属性.L1 L8分别对应数码管1 8,1=显示, 0=消隐.当某一位被赋予消隐属性后, ZLG7289A在扫描时将跳过该位.在这种情况下无论对该位写入何值,均不会被显示,但写入的值将被保留,在将该位重新设为显示状态后,最后一次写入的数据将被显示出来.表9!命令控制D7D6D5D4D3D2D1D0 10011000表10!命令控制D7D6D5D4D3D2D1D0 L8L7L6L5L4L3L2L12!具体实现方法首先在头文件ZLG7289定义ZLG7289寄存器,这样才能让ARM访问到它的寄存器内容,并根据需要读出或写入数据.#define ZLG7289_CS(0x20)//GPB5#define ZLG7289_KEY(0x10)//GPG4#define ZLG7289_ENABLE()Do{ZLG7289SIOBand=r SBRDR;ZLG7289SIOCtrl=rSIOCON;rSIOCON=0x31;!r SBRDR=0xff;rPDA TB&=(~ZLG7289_CS);!}w hile(0)#define ZLG7289_DISABLE()Do{r PDAT B|=ZLG7289_CS;rSBRDR=ZLG7289SIOBand;rSIOCON=ZLG7289SIOCtrl;}w hile(0)然后根据上述指令格式定义ZLG7289的指令:复位!#define ZLG7289_CM D_RST!0x A4译码!#define ZLG7289_CM D_DATA0!0x80闪烁!#define ZLG7289_CM D_FLASH!0x88消隐!#define ZLG7289_CM D_H IDE!0x98读入!#define ZLG7289_CM D_RDKEY!0x15并在ZGL7289.C中编写相应的驱动函数.接着在Keyboard16.c定义键盘映射表,通过查找键盘映射表来确定键盘扫描码对应的按键值,定义键盘读取函数U32GetKey();.unsig ned char KeyBoard_Map[]={4,8,11,0,0,0,0,0,5,9,12,15,1,0,0,0,6,10,13,16,2,3,0,0,7,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};其主要思想是把3000上的矩阵键盘看成是一个十字路口,6428键分别代表东西南北四个方向的路口的压力接收器,例如当46方向上为绿灯时28两个接收器没有压力,这就证明了在28方向上无车等待,这样计数器就停止工作,一直在46方向显示绿灯.直到28方向上有车等待,计数器继续计数直到28方向上显示绿灯.28方向上的绿灯过程和46方向上相一致.3!结论实验测试结果证明,用本系统能完成交通灯一般控制过程,但功能还不够完善,比如软件编写实现功能还不能很好控制硬件人工操作.本系统今后还有待于进一步完善.参考文献[1]段兴华,温慧敏.高速公路交通拥挤与智能交通系统[J].公路与汽运,2004,4(2):l8 20.[2]罗蕾.嵌入式实时操作系统及应用开发[M].北京:北京航空航天出版社,2005.[3]李驹光.ARM应用系统开发详解-基于$3C4510B的系统设计[M].北京:清华大学出版社,2004.[4]杜春雷.ARM体系结构与编程[M].北京:清华大学出版社,2005.编辑:李志敏∀19∀。
毕业设计论文利用芯片LPC2132设计的十字路口智能交通灯
目录引言..............................................................................................................错误!未定义书签。
1 ARM概述 ..............................................................................................错误!未定义书签。
1.1 ARM微处理器的应用领域及特点 (3)1.1.1应用领域 (3)1.1.2ARM微处理器特点 (3)1.2 ARM微处理器系列 (3)1.3 LPC2132芯片介绍 (4)2 交通灯系统分析 (4)2.1 软件系统启动过程 (5)2.2 方案确定 (5)2.3 交通灯工作原理 (5)3 主要函数分析及程序流程 (6)3.1 主要函数寄存器分析 (6)3.2 程序流程图 (7)4 调试步骤 (9)5 总结 (9)谢辞 (11)参考文献 ....................................................................................................错误!未定义书签。
附录.........................................................................................................错误!未定义书签。
引言更多资料请见论文最后。
纵观单片机的发展和应用, 51 单片机越来越无法满足用户的需求, ARM 高速 32位单片机的出现,缔造了嵌入式系统的新纪元.嵌入式系统是指以应用为中心,以计算机技术为基础,软件,硬件可裁减,适应应用系统对功能、可靠性、成本、体积、和功耗严格要求的专用计算机系统。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《嵌入式系统》课程设计报告(基于ARM的交通灯控制系统)院系:机电学院学生姓名:专业:应用电子教育班级:指导教师:田丰庆付广春完成时间:2013年3月28日1引言 (1)1.1设计主旨 (1)1.2设计原理 (1)1.3总体设计方案 (1)2 GPIO的简介 (4)2.1 GPIO口的应用 (4)2.2 GPIO端口的配置 (4)2.3 GPIO 的功能 (5)3 STM32最小系统电路 (5)3.1 STM32芯片管脚介绍 (5)3.2 STM32复位和时钟电路设计 (5)4总结 (8)5参考文献 (10)附录一 (11)附录二 (12)基于ARM的交通灯设计摘要:本设计选择STM32为核心控制元件,设计了一款基于ARM3的十字路臂交通灯控制系统,实现对行人、非机动车等的指示。
关键词:STM32 ARM 交通灯1引言近年来,城市人口与流动人口急剧增加,全国大中城市人口普遍存在着交通拥挤,道路阻塞,率速缓慢等现象。
如何解决城市交通问题成为全社会关注的焦点。
随着嵌入式系统的飞速发展,这一问题已经得到了解决,通过嵌入式的设计解决了交通的拥堵问题。
1.1设计主旨利用ARM芯片模拟实现交通灯控制。
自行选择所需ARM芯片,查阅相关文献资料,熟悉所选ARM芯片,了解所选ARM芯片各个引脚功能,工作方式,计数/定时,I/O口,中断等相关原理,通过软硬件设计实现利用ARM芯片完成交通灯的模拟控制。
本实验的目的是为了通过设计交通灯从而更好的了解关于STM32、FLASH 等芯片的工作作用。
并且对嵌入式有深刻的意识。
达到了解交通灯工作原理以及时间控制红蓝绿三灯的闪亮的技术问题。
1.2设计原理STM32系列微控器是以ARM Cortex_M3为内核开发生产的32位微控制器,专为高性能,低成本,低功耗的嵌入式应用专门设计。
本次实验就是基于ARM的十字路口交通灯设计,通过对现实路况交通灯的分析研究,理解交通控制系统的实现方法,并通过本次实习用开发版实现其功能。
通过设计,培养自己综合应用所学知识,独立分析和解决实际问题的能力,培养创新意识和创新能力,并获得科学研究的基础训练,加深对ARM芯片的了解;熟悉ARM芯片各个引脚的功能,工作方式,计数/定时,I/O口,中断等相关原理,巩固学习嵌入式的相关内容知识。
利用ARM芯片模拟实现交通灯控制。
1.3总体设计方案本设计采用STM32为主芯片,形成主控制电路。
通过程序控制整个电路的运转一级红黄绿三种信号的转换。
STM32系列单片机有包含若干定时器/计数器。
其中,TIM1和TIM8是高级控制定时器,TIM2~TIM5为通用定时器。
TIM6和TIM7为基本定时器。
在嵌入式系统中,定时器是依靠时钟源来完成定时功能的。
一个十字路口由东西,南北两干道构成,各有一组红,绿,黄三色指示灯。
红灯亮禁止通行,绿灯亮允许通行,黄灯亮警示人们注意红,绿灯即将切换且黄灯亮的时间为东西,南北两干道的公共停车时间。
当开发版和电脑连接好以后,将程序下载到开发板中可以看到外接电路的红,绿,黄灯的变化情况。
一通上电时南北方向上的直走和右转绿灯亮,延时20S后黄灯亮,黄灯延时5S后左转绿灯亮,(在绿灯亮的时候其余方向上的灯都为红灯),延时40S后黄灯亮,延时5S后都被切换成红灯。
延时80S再继续循环。
此次实习因为资源有限只演示南北方向上的红绿灯变化情况。
具体的工作流程如下。
图1 流程图2.1 GPIO口的应用函数GPIO口的具体实现在库文件“stm32f10x_gpio.c”中,其作用是定义各个通用IO端口的模式,对应到外设的输入/输出功能有以下三种情况:(1) 外设对应的引脚为输入:则根据外围电路的配置可以选择浮空输入.带上拉输入或带下拉输入。
(2) ADC对应的引脚:配置引脚为模拟输入。
(3) 外设对应的引脚为输出:需要根据外围电路的配置选择对应的引脚为复用功能的推挽输出或复用功能的开漏输出。
如果把端口配置成复用输出功能,则引脚和输出寄存器断开,并和片上外设的输出信号连接。
将引脚配置成复用输出功能后,如果外设没有被激活,它的输出将不确定。
2.2 GPIO端口的配置图2 端口配置电路(1)最基本的功能是可以驱动LED.产生PWM.驱动蜂鸣器等。
(2)具有单独的位设置或位清楚,编程简单。
(3)具有外部中断/唤醒能力,端口配置成输入模式时,具有外部中断能力。
(4)具有复用功能,复用功能的端口兼有I/O功能等。
(5)GPIO 口的配置具有锁定机制,当配置好GPIO口后,在一个端口位上执行了锁定,可以通过程序锁住配置组合,在下一次复位之前,将不能再更改端口位的配置。
3 STM32最小系统电路3.1 STM32芯片管脚介绍STM32F103R6T6管脚示意图,如图3所示。
图3 STM32F103R6T6管脚示意图3.2 STM32复位和时钟电路设计此电路主要是复位电路和时钟电路两部分,其中复位电路采用按键手动复位和上电自动复位组合,电路如图4(右)所示:其中7脚为STM32的复位端。
时钟电路如图4(左)所示:晶振采用的是8MHz和32.786KHz,8MKz分别接STM32的5脚和6脚,32.786KHz分别接STM32的3脚和4脚。
图4 STM32复位和时钟电路定时器程序如下。
#include "Time_test.h"/** 函数名:TIM2_NVIC_Configuration* 描述:TIM2中断优先级配置* 输入:无* 输出:无*/void TIM2_NVIC_Configuration(void){NVIC_InitTypeDef NVIC_InitStructure;NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;NVIC_Init(&NVIC_InitStructure);}/*TIM_Period--1000 TIM_Prescaler--71 -->中断周期为1ms*/void TIM2_Configuration(void){ TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2 , ENABLE);TIM_DeInit(TIM2);TIM_TimeBaseStructure.TIM_Period=1000;/* 自动重装载寄存器周期的值(计数值) *//* 累计 TIM_Period个频率后产生一个更新或者中断 */TIM_TimeBaseStructure.TIM_Prescaler= (72 - 1);/* 时钟预分频数 72M/72 */TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DIV1; /* 采样分频 */TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up; /* 向上计数模式 */TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);TIM_ClearFlag(TIM2, TIM_FLAG_Update);/* 清除溢出中断标志 */TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE);TIM_Cmd(TIM2, ENABLE);/* 开启时钟 */RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2 , DISABLE); /*先关闭等待使用*/ }#include "Time_test.h"/** 函数名:TIM2_NVIC_Configuration* 描述:TIM2中断优先级配置* 输入:无* 输出:无*/void TIM2_NVIC_Configuration(void){ NVIC_InitTypeDef NVIC_InitStructure;NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);NVIC_InitStructure.NVIC_IRQChannel = TIM2_IRQn;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;NVIC_Init(&NVIC_InitStructure);}/*TIM_Period--1000 TIM_Prescaler--71 -->中断周期为1ms*/void TIM2_Configuration(void){ TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2 , ENABLE);TIM_DeInit(TIM2);TIM_TimeBaseStructure.TIM_Period=1000;TIM_TimeBaseStructure.TIM_Prescaler= (72 - 1); /* 时钟预分频数72M/72 */TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DIV1;TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up;TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);TIM_ClearFlag(TIM2, TIM_FLAG_Update);/* 清除溢出中断标志 */TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE);TIM_Cmd(TIM2, ENABLE);/* 开启时钟 */RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2 , DISABLE); /*先关闭等待使用*/ }4.总结两周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。