随着计算机技术、网络技术和微电子技术的深入发展,嵌入式系统在各个领域中得到广泛应用。以ARM和以FPGA为核心的嵌入式系统是当前嵌入式研究的热点,而相关研究的开展需要功能强大的开发平台支持,因此基于ARM和FPGA的开发平台设计研究具有重要意义。 本文分别设计了一款基于PXA270的ARM开发平台和一款基于Virtex5的FPGA开发平台,主要针对电源管理、接口设计、板级时序等关键技术进行了研究。在此基础上利用PADS Logic设计工具完成了系统原理图设计,并借助Hyperlynx SI仿真工具,对PCB的板级设计问题进行了分析,实现了平台PCB的可靠设计。最后对平台各模块进行了调试,通过在平台上运行操作系统并加载可执行程序的方法验证了平台整体功能。 本文的特色体现在以下三个方面: (1)结合PXA270处理器内部的电源管理单元和MAX1586A集成电源管理芯片,实现了PXA270开发平台的动态电源管理,有效降低了平台功耗; (2)平台实现了FF/BT/STUART、USB Host/Client、SD/MMC、AC'97、LCD和扩展VGA、PCMCIA/CF等多种接口,具有良好的开发灵活性和通用性; (3)对开发平台PCB板级走线中可能出现的反射、串扰、时序冲突等问题进行评估,给出了布线约束方案,使系统可靠性得到有效提高。
上传时间: 2013-07-06
上传用户:gps6888
嵌入式系统发展到今天,应用越来越复杂,功能越来越强大,这就使得我们在嵌入式开发中必须加入对操作系统的支持,由此,产生了Bootloader的应用。作为嵌入式系统中的启动模块,Bootloader的作用就是引导和加载操作系统内核镜像。Bootloader的设计与移植工作已经成为嵌入式系统开发中的重要环节。 在实际的嵌入式系统开发项目中,人们经常选择移植通用Bootloader,例如U-Boot到自己的目标板。U-Boot虽然支持多种嵌入式操作系统和处理器架构,功能设置高度灵活,设备驱动丰富,但U-Boot代码组织结构过于庞大,启动流程机理和文件间的依赖关系复杂,这使得采用U-Boot进行Bootloader的开发往往会不得要领;另一方面,嵌入式系统是资源受限的,为了更好的适应市场,嵌入式产品的开发极其重视成本。以U-Boot-1.1.4来说,其源代码大小就有38.4M,移植后生成的可执行bin文件一般也要500K以上,这对于宝贵的Flash资源来说无疑是种浪费。 论文以ARM内核处理器应用为切入点,设计了一种小型ARMBootloader-MicroBootloader。在理论上,通过对Bootloader的分析,总结了其主要功能、启动过程,提出了Bootloader设计的典型框架,并按照这一典型框架对MicroBootloader进行了总体设计。在实现上,采用模块化设计原则组织源文件,使得整个MicroBootloader组织结构清晰简洁,便于维护与扩展,方便针对不同硬件平台的移植进行修改。 论文的创新点在于做到了代码量大小与功能的平衡。整个文件组织只有37个文件,代码总计为208K,生成的可执行bin文件仅35K。通过实验验证,MicroBootloader完全能够完成Bootloader的基本功能,其扩展功能也能实现下载操作系统镜像,并让其在目标板上成功运行,具有一定的现实意义和后续应用开发价值。
标签: Bootloader ARM 内核
上传时间: 2013-04-24
上传用户:qweqweqwe
- vii - 8.1.1 实验目的 315 8.1.2 实验设备 315 8.1.3 实验内容 315 8.1.4 实验原理 315 8.1.5 实验操作步骤 318 8.1.6 实验参考程序 319 8.1.7 练习题 321- vi - 6.4 USB 接口实验 266 6.4.1 实验目的 266 6.4.2 实验设备 267 6.4.3 实验内容 267 6.4.4 实验原理 267 6.4.5 实验操作步骤 270 6.4.6 实验参考程序 272 6.4.7 实验练习题 280 6.5 SPI接口通讯实验 281 6.5.1 实验目的 281 6.5.2 实验设备 281 6.5.3 实验内容 281 6.5.4 实验原理 281 6.5.5 实验操作步骤 285 6.5.6 实验参考程序 287 6.5.7 练习题 289 6.6 红外模块控制实验 289 6.6.1 实验目的 289 6.6.2 实验设备 289 6.6.3 实验内容 289 6.6.4 实验原理 289 6.6.5 实验操作步骤 291 6.6.6 实验参考程序 291 6.6.7 练习题 296 第七章 基础应用实验 296 7.1 A/D 转换实验 296 7.1.1 实验目的 296 7.1.2 实验设备 296 7.1.3 实验内容 296 7.1.4 实验原理 296 7.1.5 实验设计 298 7.1.6 实验操作步骤 299 7.1.7 实验参考程序 300 7.1.8 练习题 301 7.2 PWM步进电机控制实验 301 7.2.1 实验目的 301 7.2.2 实验设备 301 7.2.3 实验内容 301 7.2.4 实验原理 301 7.2.5 实验操作步骤 309 7.2.6 实验参考程序 311 7.2.7 练习题 313 第八章 高级应用实验 315 8.1 GPRS模块控制实验 315 - v - 5.2 5x4键盘控制实验 219 5.2.1 实验目的 219 5.2.2 实验设备 219 5.2.3 实验内容 219 5.2.4 实验原理 219 5.2.5 实验设计 221 5.2.6 实验操作步骤 222 5.2.7 实验参考程序 223 5.2.8 练习题 224 5.3 触摸屏控制实验 224 5.3.1 实验目的 224 5.3.2 实验设备 224 5.3.3 实验内容 224 5.3.4 实验原理 224 5.3.5 实验设计 231 5.3.6 实验操作步骤 231 5.3.7 实验参考程序 232 5.3.8 练习题 233 第六章 通信与接口实验 234 6.1 IIC 串行通信实验 234 6.1.1 实验目的 234 6.1.2 实验设备 234 6.1.3 实验内容 234 6.1.4 实验原理 234 6.1.5 实验设计 238 6.1.6 实验操作步骤 241 6.1.7 实验参考程序 243 6.1.8 练习题 245 6.2 以太网通讯实验 246 6.2.1 实验目的 246 6.2.2 实验设备 246 6.2.3 实验内容 246 6.2.4 实验原理 246 6.2.5 实验操作步骤 254 6.2.6 实验参考程序 257 6.2.7 练习题 259 6.3 音频接口 IIS 实验 260 6.3.1 实验目的 260 6.3.2 实验设备 260 6.3.3 实验内容 260 6.3.4 实验原理 260 6.3.5 实验步骤 263 6.3.6实验参考程序 264 6.3.7 练习题 266 - iv - 4.4 串口通信实验 170 4.4.1 实验目的 170 4.4.2 实验设备 170 4.4.3 实验内容 170 4.4.4 实验原理 170 4.4.5 实验操作步骤 176 4.4.6 实验参考程序 177 4.4.7 练习题 178 4.5 实时时钟实验 179 4.5.1 实验目的 179 4.5.2 实验设备 179 4.5.3 实验内容 179 4.5.4 实验原理 179 4.5.5 实验设计 181 4.5.6 实验操作步骤 182 4.5.7 实验参考程序 183 4.6.8 练习题 185 4.6 数码管显示实验 186 4.6.1 实验目的 186 4.6.2 实验设备 186 4.6.3 实验内容 186 4.6.4 实验原理 186 4.6.5 实验方法与操作步骤 188 4.6.6 实验参考程序 189 4.6.7 练习题 192 4.7 看门狗实验 193 4.7.1 实验目的 193 4.7.2 实验设备 193 4.7.3 实验内容 193 4.7.4 实验原理 193 4.7.5 实验设计 195 4.7.6 实验操作步骤 196 4.7.7 实验参考程序 197 4.7.8 实验练习题 199 第五章 人机接口实验 200 5.1 液晶显示实验 200 5.1.1 实验目的 200 5.1.2 实验设备 200 5.1.3 实验内容 200 5.1.4 实验原理 200 5.1.5 实验设计 211 5.1.6 实验操作步骤 213 5.1.7 实验参考程序 214 5.1.8 练习题 219 - ii - 3.1.1 实验目的 81 3.1.2 实验设备 81 3.1.3 实验内容 81 3.1.4 实验原理 81 3.1.5 实验操作步骤 83 3.1.6 实验参考程序 87 3.1.7 练习题 88 3.2 ARM汇编指令实验二 89 3.2.1 实验目的 89 3.2.2 实验设备 89 3.2.3 实验内容 89 3.2.4 实验原理 89 3.2.5 实验操作步骤 90 3.2.6 实验参考程序 91 3.2.7 练习题 94 3.3 Thumb 汇编指令实验 94 3.3.1 实验目的 94 3.3.2 实验设备 94 3.3.3 实验内容 94 3.3.4 实验原理 94 3.3.5 实验操作步骤 96 3.3.6 实验参考程序 96 3.3.7 练习题 99 3.4 ARM处理器工作模式实验 99 3.4.1 实验目的 99 3.4.2实验设备 99 3.4.3实验内容 99 3.4.4实验原理 99 3.4.5实验操作步骤 101 3.4.6实验参考程序 102 3.4.7练习题 104 3.5 C 语言程序实验一 104 3.5.1 实验目的 104 3.5.2 实验设备 104 3.5.3 实验内容 104 3.5.4 实验原理 104 3.5.5 实验操作步骤 106 3.5.6 实验参考程序 106 3.5.7 练习题 109 3.6 C 语言程序实验二 109 3.6.1 实验目的 109 3.6.2 实验设备 109 3.6.3 实验内容 109 3.6.4 实验原理 109 - iii - 3.6.5 实验操作步骤 111 3.6.6 实验参考程序 113 3.6.7 练习题 117 3.7 汇编与 C 语言的相互调用 117 3.7.1 实验目的 117 3.7.2 实验设备 117 3.7.3 实验内容 117 3.7.4 实验原理 117 3.7.5 实验操作步骤 118 3.7.6 实验参考程序 119 3.7.7 练习题 123 3.8 综合实验 123 3.8.1 实验目的 123 3.8.2 实验设备 123 3.8.3 实验内容 123 3.8.4 实验原理 123 3.8.5 实验操作步骤 124 3.8.6 参考程序 127 3.8.7 练习题 134 第四章 基本接口实验 135 4.1 存储器实验 135 4.1.1 实验目的 135 4.1.2 实验设备 135 4.1.3 实验内容 135 4.1.4 实验原理 135 4.1.5 实验操作步骤 149 4.1.6 实验参考程序 149 4.1.7 练习题 151 4.2 IO 口实验 151 4.2.1 实验目的 151 4.2.2 实验设备 152 4.2.3 实验内容 152 4.2.4 实验原理 152 4.2.5 实验操作步骤 159 4.2.6 实验参考程序 160 4.2.7 实验练习题 161 4.3 中断实验 161 4.3.1 实验目的 161 4.3.2 实验设备 161 4.3.3 实验内容 161 4.3.4 实验原理 162 4.3.5 实验操作步骤 165 4.3.6 实验参考程序 167 4.3.7 练习题 170 目 录 I 第一章 嵌入式系统开发与应用概述 1 1.1 嵌入式系统开发与应用 1 1.2 基于 ARM的嵌入式开发环境概述 3 1.2.1 交叉开发环境 3 1.2.2 模拟开发环境 4 1.2.3 评估电路板 5 1.2.4 嵌入式操作系统 5 1.3 各种 ARM开发工具简介 5 1.3.1 ARM的 SDT 6 1.3.2 ARM的ADS 7 1.3.3 Multi 2000 8 1.3.4 Embest IDE for ARM 11 1.3.5 OPENice32-A900仿真器 12 1.3.6 Multi-ICE 仿真器 12 1.4 如何学习基于 ARM嵌入式系统开发 13 1.5 本教程相关内容介绍 14 第二章 EMBEST ARM实验教学系统 17 2.1 教学系统介绍 17 2.1.1 Embest IDE 集成开发环境 17 2.1.2 Embest JTAG 仿真器 19 2.1.3 Flash 编程器 20 2.1.4 Embest EduKit-III开发板 21 2.1.5 各种连接线与电源适配器 23 2.2 教学系统安装 23 2.3 教学系统的硬件电路 27 2.3.1 概述 27 2.3.2 功能特点 27 2.3.3 原理说明 28 2.3.4 硬件结构 41 2.3.5 硬件资源分配 44 2.4 集成开发环境使用说明 51 2.4.1 Embest IDE 主框架窗口 51 2.4.2 工程管理 52 2.4.3 工程基本配置 55 2.4.4 工程的编译链接 71 2.4.5 加载调试 72 2.4.6 Flash编程工具 80 第三章 嵌入式软件开发基础实验 81 3.1 ARM汇编指令实验一 81
上传时间: 2013-04-24
上传用户:xaijhqx
作为世界上最优秀的操作系统之一,Linux不仅在服务器领域有着不可撼动的地位,而且正在嵌入式领域发挥着越来越重要的作用。有专家预测,Linux将是未来最主要的嵌入式操作系统之一,将广泛应用在各种消费电子和通信设备中。因此,产生并逐渐形成了嵌入式Linux这项技术。然而,面对嵌入式系统多样化的硬件平台以及多样化的应用,如何更快更好地建立基于Linux的软件平台成为一个必须解决的问题。 本文正是针对这个问题,以Linux相关的基础软件为主要研究对象,在深入分析引导加载程序、Linux与处理器相关的代码、文件系统以及设备驱动的基础上,对基于ARM的Linux软件平台进行了创新性和探索性的研究。主要内容为:在理解ARM体系结构的基础上,通过分析uboot源码,详细研究ARM处理器在上电后的启动过程和加载引导Iinux的过程;分析并总结Linux与处理器相关的接口,以中断控制器、定时器以及串口为主,提出了移植Linux到新型处理器的思路和方法;研究Iinux文件系统的内容、制作和使用;分析Linux的设备驱动体系结构以及设备驱动的调用方式;在学习和研究的基础之上,针对STMP36xx这款处理器,设计并实现引导加载程序,完成Linux的移植、配置、编译,解决Linux启动过程遇到的问题,然后通过制作根文件系统和实现NandFlash、LCD的驱动,完整地搭建起以Linux为核心的软件平台,并进行了应用验证。 在实际应用中,嵌入式系统会使用很多不同类型的处理器,因此迫切希望能够找到一个准则解决移植带来的问题。本文最重要的成果就是为Linux在新型处理器上的移植提出了一个准则,根据该准则可以更加快速、更加准确地将Linux应用到不同的处理器上,因此具有重要的现实意义。同时,本文将项目实践贯穿于理论研究之中,涉及到Linux平台关键技术的分析、相关工具的使用以及开发经验的分享,对学习嵌入式Linux和设计嵌入式Linux系统具有较高的参考和指导价值。此外,成功移植的STMP36xx已经初具规模,可以通过二次开发以形成完善的嵌入式产品。
上传时间: 2013-06-01
上传用户:sa123456
作为一种全数字化的现场通信网络,现场总线以其可控性强、可靠性高、开放性好等优点。在实际应用中常常需要在不同种类的现场总线间进行数据通信以及用户需要对不同种类的现场总线设备进行操作和控制。同时,工业测控系统在控制层采用现场总线技术,而在管理层采用以太网构成的企业信息网
标签: ARMVxWorks BSP 现场总线 网关
上传时间: 2013-05-25
上传用户:xianglee
该文进行的设计作为数控系统大课题中的一个子课题,主要研究利用PCI总线来实现对外围IO的操作,硬件上包括设计一块PCI接口卡并测试通过,软件上实现了PCI接口卡在Linux下的驱动和用软PLC来实现对外围IO的操作.该文在比较几种微机总线的基础上,为了实现数控系统高速、高精度、低功耗的要求,采用PCI总线进行设计.随着可编程逻辑器件的发展,为在一片PLD芯片内实现复杂的逻辑控制提供了条件.该文在综合比较开发PCI卡的几种方法的基础上,选择了使用FPGA来实现PCI接口卡设计.用VHDL语言对FPGA编程,采用模块化的设计方法进行设计,用状态机来控制PCI逻辑的时序.设计首先在EDA软件上仿真通过后,制作成PCI板卡并在现场调试通过.为方便所设计的PCI卡在数控系统及其它系统中应用,该文设计了PCI卡在Linux下的设备驱动程序,主要包括设备的注册与注销、与Linux内核的接口、相关的入口函数、驱动程序的编码、编译、加载与卸载等,并编写了相应的测试代码,在Linux环境下调试通过.为了解决数控系统中PLC的应用问题,该文还设计了PCI卡在软PLC中的应用.采用的软PLC软件是Linux下的MatPLC软件.在详细讨论MatPLC工作原理的基础上,设计了一个输入模块、一个输出模块和一个MatPLC配置文件.输入模块通过驱动程序从PCI卡中读取数据,传送到MatPLC内核的全局变量中,输出模块从内核全局变量读取数据并进行逻辑运算,再输出到PCI卡.将他们编译通过,并进行测试,最终实现软PLC对外围IO端口的读写.该论文受到广东省科技攻关项目[2002A1040402]、广东省科技攻关项目[2003C101002]、广州市重大科技攻关计划[2002Z1-D0051]的资助.
上传时间: 2013-07-18
上传用户:szchen2006
传统PLC使用时会出现一些问题,如程序死循环、程序跑飞、需要庞大的编译系统作支持和不能实现精确位置控制等等;而发展到OPENPLC后,这些问题依然存在。为了更好地解决这些问题,本文提出一种全新的可编程控制器现场集成技术,用FPGA来实现PLC的功能,抛弃传统PLC“程序”的概念,以“硬件线路”来实现控制功能,不论在经济上还是在性能上都具有更大的优势。 本课题在对国内外可编程控制器,重点是HardPLC的开发和应用的进展进行概述和分析的基础上,系统开展了HardPLC组成模块原理及其仿真模拟的研究。本研究的主要贡献为: 1.对比分析了CPLD和FPGA的性能特点,阐明了Xilinx公司FPGA芯片结构的两个创新概念,指出了其优越性能的结构基础; 2.系统分析了用HardPLC实现控制系统时的一些通用模块,对每个模块的工作原理进行了深入的探讨,用VHDL语言建立了每个模块的模型,在此基础上进行了仿真、综合,为进一步研究可编程控制器的现场集成奠定了基础; 3.在仿真综合的基础上,用所建立的模型完成了特定逻辑控制系统的控制要求,充分展示了其实际应用的可行性; 4.在分析Xilinx公司SPARTANII系列FPGA芯片配置模式的基础上,确定了应用于实际的基于CPLD控制的FPGA芯片SlaveParallel配置模式。 本课题研究建立的模型对于开发具有我国自主知识产权的HardPLC组成IP库具有一定的理论意义;对特定系统的控制实现,充分展示了基于FPGA的可编程控制器现场集成技术可以广泛应用于工控领域,加大推广力度和建立更多的IP库,在许多应用场合可以取代传统的PLC控制系统,为工控领域提供高可靠、低价格、简单易操作的解决方案,这将带来巨大的社会经济效益;所确定的FPGA芯片配置模式可广泛应用于对FPGA芯片配置数据的加载,在实践生产中具有重要的实用价值。
上传时间: 2013-05-30
上传用户:dtvboyy
由于集成电路产业在中国的飞速发展,FPGA设计技术,作为一种灵活性很强的芯片设计技术,在国内得到广泛的应用.由于芯片的可升级性和开发自主知识产权芯片的必要性,在北京邮电大学宽带通信网络实验室开发的三层以太网交换机项目中,以太网口和ATM口之间的数据通道的实现上采用了FPGA设计方法.该文主要集中在ATM口之间的数据通道的HEC头校验的FPGA实现.并完成了硬件设计、配置、硬件测试联调工作以及论文撰写工作.硬件的设计和开发基于Protel99和Tornado/VxWorks,软件的设计和开发采用了标准的VHDL语言,开发环境是WINDOWS,开发工具是Xilinx公司的iSE4.1i集成开发环境.随着网络设备的发展,位于网络边缘的设备将会变得更加灵巧,更加迎合网络发展的需要,在网络设备上越来越多地引入了网络处理器.我们实验室和Intel建立了联合实验室,在此基础上,我们要把网络处理器评估板硬件上,运行软件,使其成为路由器,首先要加载的就是网络路由协议.由于Linux的开放源代码,所以我们决定采用Linux做嵌入式系统,在上面运行zebra的路由协议.Zebra是linux上面的开放源代码的路由软件.
上传时间: 2013-07-08
上传用户:yhm_all
矿井加暖系统在矿产、冶金、化工等工业中具有广泛的应用。课题组根据热效率、寿命、自动化程度等方面存在的问题,经过调查、分析和研究开发了一套新型矿用环保热风炉系统,该系统主要由数据采集系统、火焰监测系统和主机控制系统三部分组成。 数据采集系统,要对复杂的现场环境进行监测控制,是整个新型热风炉自动控制系统的关键。本文设计的数据采集系统由MSP430单片机、模拟量采集(A/D)、模拟量输出(D/A)、开关量采集、开关量输出、存储、通信接口及其他辅助电路组成,结构简单、机构可靠性高,使用寿命长,能够对系统的各种现场数据进行实时监测和控制,对于矿井的安全可靠生产具有重要的意义。
上传时间: 2013-04-24
上传用户:yph853211
本论文以开发基于ARM核的USB2.0-AHB接口IP此项目为依托,致力于在Windows XP操作系统上使用DDK(Driver Development Kit)设计和开发一个基于WDM的主机端驱动程序。开发该驱动程序的目的是为了对该IP进行FPGA测试以及配合设备端驱动程序的开发,该驱动程序能够完成即插即用功能,块传输,同步传输,控制传输以及对Flash的操作五项主要功能。 论文首先介绍了基于WDM的USB驱动程序设计原理,其中包括了从结构到通信流对USB主机系统的介绍,编写WDM驱动程序的基础理论(主要介绍了数个相关的重要概念、驱动程序的基本组成),以及在开发对Flash操作的例程会使用到的Mass Storage类协议的简要介绍。在介绍设计原理后,论文从总体的系统应用环境和结构蓟数据传输、内部模块以及软硬件体系结构几个方面简要描述了该IP的系统设计。接着论文通过分析主机端驱动程序功能需求,提出了驱动程序的总体构架以及分步式的设计流程,具体步骤是先实现驱动程序的正常加载以及基本PnP功能,然后实现块传输、同步传输以及控制传输,最后完成对Flash操作例程的设计。随后论文详细阐述了对上述五项主要功能模块的设计;其中对Flash操作例程的设计是难点,作者通过分析Bulk-Only协议和UFI命令规范,提出程序的详细设计方案。论文最后简要介绍了调试驱动程序的方法,以及驱动程序的测试内容、部分测试结果以及测试结论。 本论文研究对象为基于ARM核的USB2.0-AHB接口IP主机端驱动程序,因为其研究主体是一个基于WDM的主机端驱动程序,因此有其普遍性;但是它以开发基于ARM核的USB2.0-AHB接口IP这个项目为依托,其目的是为项目服务,因此它有其特殊性。它是一项既有普遍性又有特殊性的研究。
上传时间: 2013-05-19
上传用户:2007yqing