《嵌入式系统开发-基于ZigBee技术智能交通灯的设计与实现》课程设计_第1页
《嵌入式系统开发-基于ZigBee技术智能交通灯的设计与实现》课程设计_第2页
《嵌入式系统开发-基于ZigBee技术智能交通灯的设计与实现》课程设计_第3页
《嵌入式系统开发-基于ZigBee技术智能交通灯的设计与实现》课程设计_第4页
《嵌入式系统开发-基于ZigBee技术智能交通灯的设计与实现》课程设计_第5页
已阅读5页,还剩48页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 ? ?嵌入式系统开发嵌入式系统开发? ?课程设计课程设计 题目:基于题目:基于 ZigBeeZigBee 技术智能交通灯的设计与实技术智能交通灯的设计与实现现 院 系 信息工程学院 专 业 班 级 学 生 姓 名 学 号 设 计 地 点 13 号楼 605 指 导 教 师 起止时间:2014 年 11 月 3 日至 2014 年 11 月 14 日基于基于 ZigBeeZigBee 技术智能交通灯的设计与实现技术智能交通灯的设计与实现摘 要 本文基于嵌入式系统和 ZigBee 技术的智能交通灯系统的设计并实现了功能。主要是通过 LED 矩阵显示东西方向及南北方向导通,蜂鸣器的间断发声作为通行

2、提示音,数码管的倒计时标志着通行时间。通过该系统实现车辆的直线通行和转弯、方向变换的提醒、车辆注意时间是否足够通行。通过传感器检测车流量实现合理的红灯时间,缓解交通压力,确保为十字路口的交通平安提供了保障。关键词:嵌入式系统 ; ZigBee ; 智能交通灯;传感器Based on the embedded system and the design and implementation of intelligent traffic light of ZigBee AbstractIn this paper, based on the embedded system and ZigBee te

3、chnology of intelligent traffic system was designed and implemented. Mainly by dot matrix display straight arrow arrow and curve, use the arrow to indicate traffic direction, buzzer of discontinuous voice prompt as impassable, digital tube countdown marks the passage of time. Through the system to r

4、ealize the linear passage of vehicles and alert, vehicle time, direction turning transform enough traffic. Has provided the safeguard for intersection traffic safety. Key words: embedded system ZigBee intelligent traffic lights目目 录录1 综述综述.11.1 嵌入式系统简介 .11.1.1 嵌入式开发环境.11.1.2 嵌入式 Linux 操作系统的应用.21.2 ZI

5、GBEE技术简介.31.2.1 ZigBee 技术介绍.31.2.2 ZigBee 的应用现状.51.2.3 ZigBee 技术的应用前景.61.2.4 ZigBee 技术的优点与缺乏.72 搭建平台搭建平台.92.1 虚拟机概述.92.2 LINUX系统.9虚拟机安装 LINUX系统.102.4 超级终端的设定 .113 硬件设计硬件设计.133.1 ARM 实验箱简介 .13数码管倒计时显示硬件设计.153.3 点阵显示硬件设计.15蜂鸣器设计.164 功能实现功能实现 .174.1 ZIGBEE模块 LED 矩阵的功能 .174.2 ZIGBEE模块上数码管功能实现.194.3 ZIGB

6、EE模块上蜂鸣器功能实现.215 测试结果与分析测试结果与分析.235.1 代码的测试与分析 .23优化代码的功能.235.1.2 虚拟机上程序的挂载.245.1.3 超级终端上程序挂载.24测试结果与分析.256 实验总结实验总结 .26致致 谢谢.27参考文献参考文献.28附件附件 1 1.29附件附件 2 2.431 1 综述综述嵌入式系统一般指非 PC 系统,有计算机功能但又不称之为计算机的设备或器材。它是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、本钱、体积、功耗等综合性严格要求的专用计算机系统。嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用

7、程序等 4 个局部组成,它是集软硬件于一体的可独立工作的器件。1.1 嵌入式系统简介随着计算机技术和微电子技术的迅速开展,嵌入式系统应用 领域越来越广泛。当今,嵌入式系统已成为一个时髦的名词,就像当初的计算机热潮,似乎比当初的计算机热潮涉及的领域更广泛,应用技术人员更多,相关国民经济产值也更庞大。报纸、杂志、网络都把嵌入式系统当作讨论的热门话题1。嵌入式系统的软件局部包括操作系统软件(要求实时和多任务操作)和应用程序编程。操作系统控制着应用程序编程与硬件的交互作用,而应用程序控制着系统的运作和行为。嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统(包括硬、软件系统)极为重要

8、的组成局部,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协 议、图形界面、标准化浏览器等。嵌入式操作系统具有通用操作系统的根本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及应用程序。与通用操作系统相比较,嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。 嵌入式开发环境一个嵌入式系统的开发环境一般包括嵌入式目标板、开发用的宿主 PC 机和硬件调试器,他们之间通过串口、JTAG 或 BDM 等调试接口和网络等接口互相连接。其中,

9、嵌入式软件系统运行于嵌入式目标板上,这些软件所对应的程序开发和编译在宿主机上运行,程序的调试那么由宿主机通过硬件调试器控制目标机执行相应的操作实现。在运行嵌入式 Linux 的系统时,硬件调试器只在Bootloader 程序开发以及 Linux 内核移植时有可能需要使用。应用程序的开发通常是 Linux 操作系统在嵌入式目标机上运行起来之后进行2。此时,更多的是在宿主机上使用 GDB 通过网络与目标板通信,进行程序的调试。也就是硬件调试器多在底层软件开发调试时使用,对于应用程序的开发调试通常使用其他手段。嵌入式 Linux 操作系统开发的第一步就是在宿主机上建立交叉开发所需的交叉编译环境。交叉

10、编译环境的建立主要是在宿主机上安装交叉编译工具Cross-gcc。Cross-gcc 工具链通常是使用别人已经编译好的交叉编译的 GCC 工具链。在交叉编译环境建立好之后,就可以在宿主机上利用交叉编译环境构造一个嵌入式 Linux 系统。Linux 操作系统是由 Linux 内核和应用程序两大局部组成。Linux 内核的开发主要是根据实际的需要进行内核裁剪和配置,然后用交叉编译器编译生成内核的二进制文件映像。对于许多自行设计的嵌入式系统,内核的开发还包括根据实际的硬件系统进行内核和外设驱动程序的移植开发。应用程序 通常都放在 Linux 的根文件系统中。根文件系统主要存放了嵌入式的配置文件、设

11、备文件、应用程序、动态链接库以及其他一些相关的程序和文件。通常最初的根文件系统只是一个根本的根文件系统,只包含了一些必要的系统支撑程序。 在宿主机 PC 机上完成嵌入式 Linux 软件系统的构建之后,就在嵌入式硬件系统上测试、运行构造好的嵌入式 Linux 软件系统。其中,测试工作需要在宿主机上通过远程终端操控嵌入式开发板完成。通常在嵌入式开发板上存在一个内核的引导加载程序,它用于硬件的初始化,给用户提供一个操作界面,将嵌入式 Linux 加载到内存中运行。除此之外,它对于嵌入式Linux 系统的开发调试也起到很大的作用。一个根本的嵌入式 Linux 系统在目标板上运行起来之后,就要进行程序

12、移植开发和调试。 嵌入式 Linux 操作系统的应用由于 Linux 具有对各种设备的广泛支持性,因此,能方便地应用在机顶盒、IA 设备、PDA、掌上电脑、WAP 、寻呼机、车载 盒以及工业控制等智能信息产品中。 ZigBee 技术简介ZigBee 技术是一种具有统一技术标准的短距离无线通信技术,其物理层和数据链路层协议为 IEEE 802.15.4 协议标准,网络层和平安层由 ZigBee 联盟制定,应用层的开发应用根据用户的应用需要,对其进行开发利用,因此该技术能够为用户提供机动、灵活的组网方式。 ZigBee 技术介绍ZigBee 技术主要用于低数据传输速率并且传输距离要求不是很远的各种

13、通信设备之间。ZigBee 的名字主要来源于蜜蜂通过跳 ZigZag 形状的舞蹈来传递所发现的食物的位置、距离和方向等信息一只一只的传递下去此种技术与蜜蜂的这种通信方式相类似。ZigBee 联盟那么于 2001 年成立而在 2002 年下半年以及四大半导体公司共同宣布加盟 ZigBee 技术联盟以研发名为“ZigBee的新一代无线通信标准而在 2006 年作为中国通信行业龙头的华为公司亦参加了此联盟。截至目前该联盟大约已有约 27 家成员企业所有这些公司都参加了负责开发ZigBee 协议物理层和媒体控制层技术标准的工作组。ZigBee 联盟负责开发网络层及以上的协议。ZigBee 协议那么比蓝

14、牙技术、高速率个人区域网或 802.11x无线局域网等技术更简单而实用。ZigBee 使用的是波段采用了跳频技术这和蓝牙技术相似可以说是同族兄弟了。但相比之下 ZigBee 协议比蓝牙更简单、速率更慢、功率及费用也更低。ZigBee 的根本速率是传输半径可扩大到 400 米并可得到更低的功耗和更高的可靠性。此外单个 ZigBee 无线模块就可与 254 个节点互联假设网络中参加路由节点那么网络最大承载量可支持 65535 个节点设备互联。由于它的低延迟和低功耗性能优越性所以在支持鼠标、键盘等电脑周边产品和家庭自动化仪器等低速率应用时可以比蓝牙做地更好人们更希望能在无线玩具、传感器网络、家庭监控

15、、工业监控和平安系统等众多领域拓展 ZigBee 的应用。ZigBee 网络采用的是无线自组织网络技术与蜜蜂的通信类似网络中的各个节点间通信以一跳或多跳的形式自动建立网络。网络节点那么以 ZigBee 协议为根底进行通信与各种传统无线网络相比其主要优点有以下几个方面。1. 网络稳定性好。其设计的网络自己组织性能使网络各个节点在无需人工干预的情况下自己组网并实现数据传输的任务,当添加或去除网络中某个节点时其余节点可以自行寻找其他节点替代中转信息具有较强网络自愈能力。 2. 本钱低。由于 ZigBee 联盟已经有二十多家他们的研发实力都很强,好多公司均已在 2003 年正式推出自己的 ZigBee

16、 芯片,竞争较大近年来应用于主机端的芯片本钱将会比蓝牙等模块更具价格上的优势。 3. 功耗低。它的超低功耗也使得在应用中两节普通 AAA 干电池即可使用 6个月至 2 年的时间这也是 ZigBee 的最大的一个优势 4 网络容量大。每个 ZigBee 设备可以与另外 254 台节点设备相连接而参加路由节点的 ZigBee 网络最多可容纳多达 65000 多个节点的网络 5. 数据传输速率低。只有 10kb/s250kb/s 符合本设计需求 6. 全世界通用欧洲使用 868MHz,美国那么使用 915MHz 频段,但这些均是免申请频段可以直接使用 7. 网络延迟时间短。活动设备信道接入延时和休眠

17、激活延时均仅为 15ms而搜索设备延时时间到达 30ms 根据 ZigBee 联盟所设定的技术标准按功能分其网络设备划分为三种 ZigBee 协调器、ZigBee 路由器、ZigBee 终端设备。他们的功能分别如下: (1)ZigBee 协调器它是个全功能的设备包含所有的网络功能是 3 种设备中功能最全面亦最复杂的一种特点是计算能力强、存储量大。它的作用是发送网络信标、建立并且管理一个网络及网络节点、存储节点信息并且不断地接收下级节点所发来的信息。 (2)ZigBee 路由器它也是全功能设备在参加网络后协调器就会分配给它一定量的十六位地址空间再由其分别分配给下级节点使用方便每个节点接入或离开网

18、络具有数据转发及路由之功能。 (3)ZigBee 终端设备其一般的简化的功能设备。只能自己的与上一级如协调器或路由器之间通信包括获取网络地址等。在 ZigBee 协议标准中组网时有三种网络拓扑结构可供选择星型结构、网状结构和簇树型结构如图 1.1 所示:PC控制器保护控制传感器节点传感器节点传感器节点调节控制图 1.1 ZigBee 网络拓扑结构图在星状结构中无论是路由器或终端设备都是直接与协调器进行通信,在ZigBee 协调器那么负责运作与维护着整个网络在簇状和网状网络结构中协调器负责初始化和建立网络的操作,而路由器那么对网络进行扩展,终端设备的信息由路由器进行转发,只不过在簇状结构中终端间

19、的信息交换只能通过一级级向上传递到协调器再由协调器将信息分发下去。 ZigBee 的应用现状ZigBee 的出发点是希望能开展出一种易布建的低本钱无线网络,同时期低耗电性将使产品的电池能维持 6 个月到数年的时间。ZigBee 技术弥补了低本钱,低功耗和低速率无线通信市场的空缺,其成功的关键在于丰富而便捷的应用,而不是技术本身。随着正式版本协议的公布,更多的注意力和研发力量将转到应用的设计和实现,互联互通测试和市场推广等方面。我们有理由相信在不远的将来,将有越来越多的内置 ZigBee 功能的设备进入生活,并极大地改善我们的生活方式和体验。在国内,目前 ZigBee 网络的应用范围非常广泛,很

20、多我们想象不到的地方也在使用 ZigBee 技术。例如,在工业领域,ZigBee 技术不仅用来控制照明灯的开关,它还有一个用途是检查高速路上照明灯的工作情况。以前工程师要开车到高速路 上检查哪些照片灯已经坏掉了,需要维修,但因为车速较快,不能记下所有要检修灯的编号,但通过 ZigBee 网络,工程师只需坐在计算机,就可以很清楚地监测到整个高速路上照明灯的工作情况,这是目前的一个热点应用。再如,ZigBee 技术用于进出的控制,可以记录汽车的进出,也可以在人员进出时用于传输相关指纹来识别数据,进行身份认证。此外,通过 ZigBee 网络的路由器功能,它还可以用来实时监控煤矿内各点的平安状况,防止

21、事故的发生。在加油站,一些客户不希望布线,他们正在考虑采用 ZigBee无线技术来传输相关数据。在消费类电子方面,ZigBee 技术可以替现在的红外遥控,于红外遥控相比,ZigBee 的优势在于每一个操作都会有反响信息,告诉他们是否实现了相关操作。现今我们也可以看到 ZigBee 用于家庭保安,消费者在家中的门和窗上都安装了 ZigBee 网络,当有人闯入时,ZigBee 可以控制开启室内摄像装置,这些数据再通过 Internet 或 WLAN 网络反响给主人,从而实现报警。当在家电产品如空调,热水器等安装 ZigBee 模块后,用户可以通过ZigBee 无线网络来控制这些产品的开启。 在建筑

22、智能化领域,各种灯光的控制,气体的感应与监测,如煤气泄漏的感应和报警都可以应用 ZigBee 技术。三表电表,气表和水表上采用 ZigBee 技术,相关管理部门不但可以实现自动抄表功能,还可以监控仪表如电表的状态,防止偷电事件的发生. ZigBee 技术的应用前景ZigBee 技术的应用前景被非常看好。ZigBee 在未来的几年里将在工业控制,工业无线定位,家庭网络,汽车自动化,楼宇自动化,消费电子,医用设备控制等多个领域具有广泛的应用前景,特别是家庭自动化和工业控制,将成为今后 ZigBee 芯片的主要应用领域。在工业领域,利用传感器和 ZigBee 网络,使得数据的自动采集,分析和处理变得

23、更加容易,可以作为决策辅助系统的重要组成局部。在汽车领域,主要是传递信息的通用传感器。由于很多传感器只能内置在飞转的车轮或者发动机中,比方轮胎压力监测系统,这就要求内置无线通信设备使用的电池有较长的寿命,同时应该克服嘈杂的环境和金属结构对电磁波的屏蔽效应。在精确农业领域,传统农业主要使用孤立的,没有通信能力的机械设备,主要是依靠人力监测作物的生产状况,采用了传感器和 ZigBee 网络后,农业将可以逐渐地转向以信息和软件为中心的生产模式,使用更多的自动化,网络化,职能化和远程控制的设备来耕种。在家庭和楼宇自动化领域,家庭自动化系统作为电子技术的集成得以迅速扩展,易于进入,简单明了和廉价的安装本

24、钱等成了驱动自动化居家,建筑开发和应用无线技术的主要动因。在医学领域,将借助于各种传感器和 ZigBee 网络准确而且实时地监测病人的血压,体温和心跳速度等信息,从而减轻医生的查房的工作负担,有助于医生做出快速的反响,特别是对重病和病危患者的监护和治疗。在消费和家用自动化市场,可以联网的家用设备有电视,录像机,无线耳机,PC 外设,运动与休闲器械,儿童玩具,游戏机,窗户和窗帘,照明设备,空调系统和其它家用电器。 ZigBee 技术的优点与缺乏ZigBeeZigBee 在室内通常能到达 30-50m 作用距离,在室外如果障碍物少,甚至可以到达 100m 作用距离。ZigBee 技术的优势:1功耗

25、低。在低耗电待机模式下,两节普通 5 号干电池可使用 6 个月以上。这也是 ZigBee 的支持者所一直引以为豪的独特优势。2本钱低。因为 ZigBee 数据传输速率低,协议简单,所以大大降低了本钱。3网络容量大。每个 ZigBee 网络最多可支持65535 个设备,也就是说每个 ZigBee 设备可以与另外 254 台设备相连接。4时延短。针对时延敏感的应用做了优化,通信时延和从休眠状态激活的时延都非常短。5可靠。采用了碰撞防止机制,同时为需要固定带宽的通信业务预留了专用时隙,防止了发送数据时的竞争和冲突。6平安。ZigBee 提供了数据完整性检查和鉴权功能,加密算法采用 AES-128,同

26、时各个应用可以灵活确定其平安属性。ZigBee 技术的缺乏:ZigBee 技术本身是一种为低速通信而设计的标准,它的最高通信速度只有 250kb/s,对一些大数据量通信的场合它并不适宜,但是这一特点会逐渐改变,一些 厂商生产的 ZigBee 芯片目前也突破了这个限制,如 CEL 公司的 ZICM2410,已经 到达 1MHz 的传输速率。三、各种短距离通信技术从结构上来说,WLAN 主要是一种效劳器-客户端的结构,移动设备扮演的是客户端角色,而效劳端是网络中心设备;蓝牙的实现可以使点到点或点到多点的结构;而 IrDA 技术书的两移动互联设备是点对点的结构。WLAN、UWB、ZigBee 技术等

27、可以作为移动 Ad hoc 网络的底层技术。UWB 和ZigBee 技术均可应用于无线数字家庭组网,两种技术优势互补:UWB 技术数据传输速率高,在无线数字家庭网络中主要用于传输大容量的影音节目信号;ZigBee 技术具有低传输速率、低功耗和低本钱的特点,主要用于控制家用电器的启动和关闭,而相对来说,Wi-Fi 更多地是用于较大组网区域的接入局部,主要用于数据存取。Bluetooth、UWB 无线技术能够穿透实心物体;FNC、IrDA、ZigBee 无法穿透实心物体,或受障碍物影响较大,因此传送距离和环境大大受限。从速率上看,大致有: UWBWLANIrDA蓝牙RFID/NFCZigBee 从

28、传输距离上看,大致有: WLANZigBeeUWB蓝牙IrDARFID/NFC3 。2 2 搭建平台搭建平台要想进行嵌入式开发,首先,必须搭建一套完整的嵌入式开发环境。本章介绍了在 windows+Vmware 虚拟机环境下嵌入式开发环境的搭建。 虚拟机概述用虚拟机软件,你可以在一台计算机上使用多台逻辑计算机,这些逻辑计算机可以安装操作系统、安装应用程序、访问网络资源等等。总的来说,它只是运行的一个应用程序在物理计算机上,但是在虚拟机中运行的应用程序而言,它就是一台真正计算机。因此,在虚拟机中进行软件应用的时候,系统也一样有崩溃的危险;但是,崩溃的只是虚拟机上的逻辑计算机,而不是物理计算机上的

29、操作系统,并且,使用虚拟机的“Undo恢复功能,你可以马上恢复虚拟机到安装软件之前的状态7。所示: 虚拟机界面虚拟机界面2.2 Linux 系统Linux 可用于多种硬件平台。Linux 是开源的软件,代码的修改维护由世界各地的程序员进行,因此 Linux 有可靠保证的应用。可以根据需要进行配置,不需要获得任何的许可证,源代码可以无偿获得。同时 Linux 网络支持性良好,驱动程序采用模块化设计,开发过程中可动态调试驱动模块,便于开发。有利于添加对新硬件的驱动支持。Linux 是以内核为根底,通过虚拟文件系统支持对各类型物理介质的硬件资源访问。Linux 系统提供了具有设备类的面向对象的设备模

30、型、热插拔事件,以及用户空间的设备文件系统,使其更容易进行新硬件设备的扩展与驱动的开发应用。Linux 系统有完善的开发工具,用不同的交叉编译工具,匹配不同的嵌入式处理器,建立嵌入式系统开发环境是简单快捷的。不仅如此,Linux 系统还继承了 UNIX 稳定并且有效率的特点,系统稳定,能长期运行而不会出现宕机的现象。2.3 虚拟机安装 Linux 系统虚拟机 vmware 下安装 Linux 过程:第一步:启动 VMware,在其主界面“主页标签页中点击“新建虚拟机按钮翻开新建向导,单击“下一步按钮;第二步:在虚拟机配置界面中有两个选择:一是“典型方式,它根据虚拟机的用途自动调整配置;二是“自

31、定义方式,它允许用户自行设置虚拟机的主要参数。这里用“典型方式安装,比较方便。第三步:单击“下一步按钮进入虚拟机操作系统选择界面,可以看到Windows、Linux、Novell 等多种不同的系统,这里我们点选“Linux。 图图 2.2 系统界面系统界面图是安装完成后的虚拟机启动界面,我们这里使用的是 Fedora 系统,用户为 root,密码 123456,是在有权限下进行操作。2.4 超级终端的设定(1) 翻开超级终端输入名称图图 2.3 超级终端连接图超级终端连接图图图 2.4 超级终端端口选择图超级终端端口选择图(2) 选择端口,如果是台式电脑就直接选择 COM1,如果是笔记本电脑根

32、据实际情况选择。(3) 端口设置,每秒位数(B)选择 115200,数据流控制(F)选择无。图图 2.5 超级终端端口设置图超级终端端口设置图翻开电源启动超级终端,如下列图:图图 2.6 内核启动内核启动Linux 启动时 BOIS 首先加电自检,然后会加载主引导加载程序再加载次加载引导程序,对 Linux 内核进行映射,初始化进程。3 3 硬件设计硬件设计根据设计任务要求,自行选择电子元件,画出电气原理图,并调试。一个完整的系统除了主控芯片以外,还需配上电源系统、时钟电路、复位电路等。独立的芯片是不能工作的3.1 ARM 实验箱简介随着微电子技术的快速开展,ARM 处理器经历了包括 ARM7

33、、ARM9 在内的多个开展历程,而 ARM11 的成熟应用必将为嵌入式的开展带来新的活力,使更高端的产品应用成为可能,与 ARM9 的 5 级流水线相比,ARM11 拥有一条具有独立的 load-store 和算术流水的 8 级流水线,在同样工艺下,ARM11 处理器的性能与 ARM9 相比大约提高了 40%。ARM11 执行 ARMv6 架构的指令,ARMv6 指令包含了针对媒体处理的单指令流多数据流SIMD扩展,采用特殊的设计,以改善视频处理性能。为了能够进行快速浮点运算,ARM11 增加了向量浮点单元。所有这些结构上的提高,都是 ARM9 处理器不可比较的。ARM11 为便携式和无线应用

34、,提供了从未有过的高超性能,并且使我们主要关心的本钱和功耗减到最小。ARM11 的微架构保证了系统性能可以从根本的350-500MHz 范围扩展到最终的 1GHz 以上。其微架构的高效率表现,允许开发者根据不同的应用来调节时钟频率和电源电压,从而在性能和功耗之间到达最正确的折衷。例如,一个基于 ARM11 的微架构的处理器在 1.2V 工作电压下,使用 0.13um 工艺实现,其功率将不会超过 0.4mW/MHz。 ARM11 微处理器是一种高性能、低功耗的准 64 位微处理器。对于目前大多数嵌入式应用,一个真正的 64 位处理器仍然被认为是不必要的,其巨大的功耗和面积让人难以接受。对此,AR

35、M11 选择了一个折中的方案,以较小的代价,局部实现了一个 64 位微架构。ARM11 只在处理器整数单位和高速缓存之间,以及在整数单位和协处理器之间实现了 64 位数据总线。这些 64 位数据道路允许处理器在一个时钟周期中同时获取两条指令,还允许在一个时钟周期执行多个数据读写指令。这使得 ARM11 在执行很多特定序列的代码时能够到达非常高的性能,特别是那些允许数据搬移与数据处理并行处理的代码序列。 S3C6410 是由三星公司推出的一款低功耗、高性价比的 RSIC 处理器,它基于 ARM11 内核ARM1176JZF-S),可广泛应用于移动 和通用处理等领域;S3C6410 为和 3G 通

36、信效劳提供了优化的硬件性能,内置强大的硬件加速器:包括运动视频处理、音频处理、2D 加速、显示处理和缩放等;集成了一个MFC(Multi-Format video Codec)支持 MPEG4 /H.263/H.264 编解码和 VC1 的解码,能够提供实时的视频会议以及 NRSC 和 PAL 制式的 TV 输出;除此之外,该处理器内置一个采用最先进技术的 3D 加速器,支持 OpenGL ES API, 能实现 4M triangles/s 的 3D 加速;同时,S3C6410 包含了优化的外部存储器接口,该接口能满足在高端通信效劳中的数据带宽要求。由于以上突出的性能表现,著名的苹果公司 I

37、PHONE 就是基于 S3C6410 处理器。 CVT-6410 开发板基于三星公司最新的 ARM11 处理器 S3C6410,拥有强大的内部资源和视频处理能力,可稳定运行在 667MHz 主频以上,支持 Mobile DDR和多种 NAND Flash。CVT-6410 开发板上集成了多种高端接口,如复合视频信号、摄像头、USB、SD 卡、液晶屏、以太网,并配备温度传感器和红外接收头等。这些接口可作为应用参考帮助用户实现高端产品级设计。CVT-6410 开发板采用核心板+底板结构,核心板尺寸规格为5CM6CM,底板尺寸为14CM,核心板与底板之间采用 4 组高质量进口连接器镍金工艺,接触好、

38、抗氧化,共计 320 个引脚804,方便客户进行二次开发,进行各种形式的扩展应用。 CVT-6410 开发板的设计严格按照 CE、CCC 等国内外电子产品认证标准,充分考虑高速信号的完整性等电磁兼容措施,确保 CVT-6410 开发板在严酷电磁环境下的可靠运行。 CVT-6410 的软件系统目前支持 WinCE 6.0、 LINUX、Android2.3.4 以及uC/OS-II,提供标准板级支持包BSP并开放源码,其中包含了所有接口的驱动程序,客户可以直接加载使用。另外,该板可连接武汉创维特公司与之相配套使用的串口扩展板、WIFI 模块、摄像头模块等。随着微电子技术的快速开展,ARM 处理器

39、经历了包括 ARM7、ARM9 在内的多个开展历程,而 ARM11 的成熟应用必将为嵌入式的开展带来新的活力,使更高端的产品应用成为可能。数码管倒计时显示硬件设计 数码管是一种很普遍的显示器件,数码管的主要局部是七段发光二极管;数码管分为共阴极和共阳极两种,为了保护各段 LED,需外加限流电阻。有的产品还附加有一个小数点,因此有人也称之为八段式发光二极管。使用锁存器573 到达数据的锁存,防止扩展口发送的数据与地址冲突。如图 3.1 所示: 图图 3.1 数码管外形图及阴阳两极连接示意图数码管外形图及阴阳两极连接示意图数码管由 8 个发光段第八段表示小数点的不同组合,从而实现十进制数的显示。通

40、过段选端可以控制数码管显示内容,位选端用于控制整个数码管是否工作:对于共阴极数码管,位选端要接低电平,对于共阳极数码管,位选端接高电平。数码管有两种显示方式:动态显示和静态显示。静态显示让数码管要点亮的数码管同时持续点亮;动态显示那么利用了人眼的视觉暂留原理,在一个时间内只点亮一个数码管。本次设计采用一位的数码管控制绿灯通行的计时,这次的设计中,主要是控制南北和东西方向的通行,在同一方向通行时,另两个方向就不允许通行。通行的时间控制为 8 秒,在 8 秒倒计时结束时,通行方向发生变化。 点阵显示硬件设计 点阵内部结构及外形如下,8*8 点阵共由 64 个发光二极管组成,且每个发光二极管是放置在

41、行线和列线的交叉点上,当对应的某一行置 1 电平,某一列置 0 电平,那么相应的二极管就亮。8*8 点阵的工作原理:假设要用点阵发光二极管显示汉字或者图形,首先要将图形、汉字、字母放在一个方块内,方格块分成 8*8 共 64 个小方格,在方块内写上所需要的内容,在字笔划下落处的小方格里填上“1”,无笔划处填上“0”,这样就形成了一个图形二进制数据。如图 3.2 所示:图图 3.2 8*8 点阵图点阵图上图是一只 8*8 阵列的点阵发光显示器,该点阵发光显示器是由 8*8 阵列组成,共 8 行,每行 8 只发光二极管,共 64 只发光像素,每列的 8 只发光二极管的所有负极阴极相连。每行发光管的

42、正极相连,点阵发光显示器在同一时间只能点亮一列,每列点亮的情况是根据从显示器 P1P8 送入的数据点亮,要使一个字符在显示器整屏显示,点阵发光显示器就必须通过快速逐列点亮,而且是周而复始的循环点亮,使人眼的暂留视觉效应形成一个全屏字符。 蜂鸣器设计 在 ZigBee 模块中通过程序控制设计蜂鸣器在方向变化时会发出提示音。具体实现是在绿灯开始时蜂鸣器会响起,以此作为通行的提示。:图图 3.3 蜂鸣器电路图蜂鸣器电路图4 4 功能实现功能实现在本次的课程设计中,主要是基于嵌入式系统和 ZigBee 的智能交通灯的设计与实现。智能交通灯的设计是控制车辆在十字路口的通行情况,在绿灯开始时,ZigBee

43、 模块上的数码管进行 9-0 的倒计时,同时蜂鸣器发出响声作为提示音。在 ZigBee 模块 LED 矩阵显示东西或南北方向允许通车显示,同时超极终端打印显示当前的状态。4.1 ZigBee 模块 LED 矩阵的功能SBuff12至 SBuff19为 LED 矩阵点亮数据,如 SBuff14 = 0 x42 表示为LED 矩阵第三列从高往低第二个灯和第七个灯点亮。实现代码如下:if(LED)if(i=0)printf( 南北方向通行,东西方向禁止通行n);printf(n);/控制 LED 矩阵unsigned char SBuff21;SBuff0 = 0 x02;SBuff1 = 0 x1

44、2;SBuff2 = 0 xB9;SBuff3 = 0 x46;SBuff4 = 0 xF1;SBuff5 = save_byte4;SBuff6 = save_byte5;SBuff7 = 0 x01;SBuff8 = 0 x07;SBuff9 = 0 x04;SBuff10 = 0 x0;SBuff11 = 0 x0;/LED 控制南北方向SBuff12 = 0 x00;SBuff13 = 0 x00;SBuff14 = 0 x42;SBuff15 = 0 xff;SBuff16 = 0 xff;SBuff17 = 0 x42;SBuff18 = 0 x00;SBuff19 = 0 x00

45、;SendNum+;if(SendNum = 8)SendNum = 0;SBuff20 = 0 x0;SBuff20 = XorVerifySend(SBuff);/异或校验nwrite = write(serial_fd,SBuff,sizeof(SBuff);/printf(nwrite1=%dn,nwrite);buffer_has_send = 0;elseprintf( 东西方向通行,南北方向禁止通行n);printf(n);/控制 LED 矩阵unsigned char SBuff21;SBuff0 = 0 x02;SBuff1 = 0 x12;SBuff2 = 0 xB9;SB

46、uff3 = 0 x46;SBuff4 = 0 xF1;SBuff5 = save_byte4;SBuff6 = save_byte5;SBuff7 = 0 x01;SBuff8 = 0 x07;SBuff9 = 0 x04;SBuff10 = 0 x0;SBuff11 = 0 x0;/LED 显示东西方向SBuff12 = 0 x18;SBuff13 = 0 x3c;SBuff14 = 0 x18;SBuff15 = 0 x18;SBuff16 = 0 x18;SBuff17 = 0 x18;SBuff18 = 0 x3c;SBuff19 = 0 x18;SBuff20 = 0 x00;SB

47、uff20 = XorVerifySend(SBuff);/异或校验nwrite = write(serial_fd,SBuff,sizeof(SBuff);/printf(nwrite1=%dn,nwrite);buffer_has_send = 0;sleep(2);实验截图如下: 南北方向南北方向 图图 4.2 东西方向东西方向 ZigBee 模块上数码管功能实现SBuff10为数码管显示的数据值,如 SBuff10 = 0 x08 表示为数码管显示数值为 8。实现代码如下:if(SEG)/控制数码管printf( 还剩%d 秒n,tempj);printf(n);unsigned ch

48、ar SBuff21;SBuff0 = 0 x02;SBuff1 = 0 x12;SBuff2 = 0 xB9;SBuff3 = 0 x46;SBuff4 = 0 xF1;SBuff5 = save_byte4;SBuff6 = save_byte5;SBuff7 = 0 x01;SBuff8 = 0 x07;SBuff9 = 0 x01;/b0-1:数码管显示数据有效;0:无效SBuff10 = tempj;/显示计数时间j+;if(j=10)j=0;i+;i=i%2;SBuff11 = 0 x0;SBuff12 = 0 x0;SBuff13 = 0 x0;SBuff14 = 0 x0;SB

49、uff15 = 0 x0;SBuff16 = 0 x0;SBuff17 = 0 x0;SBuff18 = 0 x0;SBuff19 = 0 x0;SBuff20 = 0 x0;SBuff20 = XorVerifySend(SBuff);nwrite = write(serial_fd,SBuff,sizeof(SBuff);/printf(nwrite1=%dn,nwrite);buffer_has_send = 0;sleep(5);实验截图如下:图图 4.3 ZigBee 数码管显示图数码管显示图4.3 ZigBee 模块上蜂鸣器功能实现蜂鸣器控制,1 个字节。0:停止发声SBuff11

50、 ,其它值:发声长度实现代码如下:if(PWM)/控制蜂鸣器printf( 控制蜂鸣器n);printf(n);unsigned char SBuff21;SBuff0 = 0 x02;SBuff1 = 0 x12;SBuff2 = 0 xB9;SBuff3 = 0 x46;SBuff4 = 0 xF1;SBuff5 = save_byte4;SBuff6 = save_byte5;SBuff7 = 0 x01;SBuff8 = 0 x07;SBuff9 = 0 x02;/b1-1:蜂鸣器数据有效;0:无效SBuff10 = 0 x0;SBuff11 = 0 x1f+SendNum;SendN

51、um+;SBuff12 = 0 x0;SBuff13 = 0 x0;SBuff14 = 0 x0;SBuff15 = 0 x0;SBuff16 = 0 x0;SBuff17 = 0 x0;SBuff18 = 0 x0;SBuff19 = 0 x0;SBuff20 = 0 x0;SBuff20 = XorVerifySend(SBuff);nwrite = write(serial_fd,SBuff,sizeof(SBuff);/printf(nwrite1=%dn,nwrite);buffer_has_send = 0;sleep(1); 5 5 测试结果与分析测试结果与分析此次课程设计由于使

52、用 ZigBee 扩张模块显示效果。每次发送的指令及数据只控制一个模块导致实验效果屡次与预期结果不一致。5.1 代码的测试与分析分析实验结果:由于每次发送的数据都是控制一个模块且通过网络端口将数据传送至 ZigBee 某块。指令及数据传送频率过高导致数据总线繁忙导致有些发送的数据发送错误导致有些数据没有正确的显示。5.1.1 优化代码的功能主要功能完成 LED 矩阵显示东西方向及南北方向箭头,通过该模块,实现交通的直线通行和转弯,让行人明确行走的方向是否可行;蜂鸣器的主要功能是方向变换的发声,通过该模块,实现交通的方向变换的提醒,让行人注意平安;数码管的主要功能是倒计时,通过该模块,实现交通的

53、方向变换的时间,让行人注意时间是否足够通行。5.1.2 虚拟机上程序的挂载图图 5.1 优化代码虚拟机程序挂载图优化代码虚拟机程序挂载图5.1.3 超级终端上程序挂载图图 5.2 优化代码超级终端程序挂载图优化代码超级终端程序挂载图5.1.4 测试结果与分析图图 5.3 优化代码运行结果图优化代码运行结果图测试结果分析:实验结果为:数码管显示的数据可能出现某个数据没有显示直接跳到另一个不连的数据。分析实验结果:由于每次发送的数据都是控制一个模块且通过网络端口将数据传送至 ZigBee 某块。指令及数据传送频率过高导致数据总线繁忙导致有些发送的数据发送错误导致有些数据没有正确的显示。解决方案:通

54、过延迟每次指令及数据发送的间隔确保数据能够完整的被ZigBee 模块接收到。最终结果:数据能够正确的显示。6 6 实验总结实验总结通过此次的课程设计我们不仅检验了所学习的知识,也培养了我们如何去做一件事情,又如何完成一件事情。在课程设计过程中,与小组成员分工设计,和小组成员相互探讨、相互学习、相互监督,学会了合作、 学会了宽容、也学会了理解、更明白了团队协作的重要。课程设计是我们专业课程知识综合应用的实践训练,也是我们迈向社会,从事职业工作前一个必不少的过程。“千里之行始于足下,通过此次课程设计,我们深深体会到这句千古名言的真正含义。我们今天认真的进行课程设计,学会了脚踏实地迈开这一步,就是为

55、明天能稳健地在社会大潮中奔跑打下坚实的根底。通过这次交通灯设计,培养综合运用所学知识、独立分析和解决实际问题的能力,培养创新意识和创新能力,并获得科学研究的根底训练。了解所选择的 ARM 芯片各个引脚功能,工作方式,计数/定时,I/O 口,中断等的相关原理,并稳固学习嵌入式的相关内容知识。通过软硬件设计实现利用 ARM 芯片完成交通灯控制功能。首先查阅相关文献资料,熟悉所选 ARM 芯片。第二步总体设计方案规划,设计车辆遇到红灯停绿灯行情况,红绿灯时间均为 9s,切换时间为1s。接下来 系统硬件设计,熟悉 IO 接口,定时器计数器工作原理。最后系统软件设计,包括交通信号灯的工作流程软件实现,用

56、 C 语言编程。提高了计算能力、绘图能力以及熟悉了标准和标准,同时各科相关的课程都有了全面的复习,独立思考的能力也有所提高。 在这次课程设计过程中,做到了学以致用,从中发现自己平时学习的缺乏和薄弱环节,从而加以弥补。致致 谢谢?嵌入式系统?课程设计是网上、图书馆借鉴相关资料,根据自己的理解、老师的指导建议完成的。可以说,此次论文没有老师的帮助和催促,我将无从下手。在此由衷的感谢王华本老师。感谢学校,给予我一个良好的学习环境,轻松安逸的学习气氛。感谢教导过我的老师们,在我的求学过程中,教育我怎样为人,给我树立了正确的人生观、价值观、世界观。让我在求学的旅途不至于茫然无措。感谢室友们在我头脑发昏,

57、思绪混乱的时候,能转移我的注意力,缓解我的压力,让我以最好的状态去学习。感谢同学们,因为有你们的陪伴,学习才不会孤单。 感谢我伟大的父亲母亲,生育了我,抚养了我,教导了我,在我人生的道路中默默的支持陪伴我。在此,向所有人表示最崇高的敬参考文献参考文献1 林声伟. 物联网的体系结构与相关技术研究J. 信息通信. 2021(06) P832 柳平增,孟祥伟,田盼,邓振民,王文山,王玉存,毕树生. 基于物联网的精准农业信息感知系统设计J. 计算机工程与科学. 2021(03) P1393 曾小虎,蒋永平,徐杜,章敏鹏,钟敏富,王德才. 基于多级路由的 ZigBee 无线温室监测系统设计J. 安徽农业

58、科学. 2021(07) P43624 汪华斌,罗中良,曾少宁,杨俊,郭天赐. ZigBee 技术在数据采集系统中的应用J. 现代计算机(专业版). 2021(31) P635 苗洁. 我国创意农业开展的现状、思路及对策研究J. 中州学刊. 2021(06) P816 杨校权,张毅,马钧元. LPC1227 的远距离 ZigBee 无线网关设计J. 单片机与嵌入式系统应用. 2021(11) P337 吴良峰,叶宇煌. 多生理参数的无线实时监护系统设计J. 单片机与嵌入式系统应用. 2021(11) P638 张莉侠,曹黎明. 中国低碳农业开展现状与对策探讨J. 经济问题探索. 2021(11

59、) P1039 田立国,李猛,刘玥,胡山,李韶远. 基于 ZigBee 的农作物冠层温度采集节点的设计J. 安徽农业科学. 2021(28) P1757510 皮邵辉,杨京帅,王娟,朱孔辉. 物联网技术在农产品物流中的应用探讨J. 物流科技. 2021(09) P0511 蒋鼎国. 无线传感器网络农业信息监控系统设计与数据融合研究D. 江南大学 2021 P12412 童英华. 基于 Z-Stack 的无线温湿度采集系统J. 现代电子技术. 2021(23) P11613 曾宝国. 基于 TI Z-STACK 的智能小车调度系统设计J. 现代电子技术. 2021(14) P1714 战美玲,杨

60、济民,徐进飞,李腆腆,刘婷. 基于 ZigBee 无线传感器网络的智能仓储节点设计J. 电子技术. 2021(03) P3915 叶丽娜,陈磊. 基于 ZigBee 无线传感网络的有毒有害气体监测系统的硬件设计J. 吉林工程技术师范学院学报. 2021(02) P72附件附件 1 1#include #include #include #include #include #include #include #include #include #include #include #include #include #includepthread.h#include #include wsnserial.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论