选择特殊符号
选择搜索类型
请输入搜索
《ARM Linux入门与实践:一个嵌入式爱好者的自学体验》是以作者自学、应用嵌入式Linux时的笔记(包括实验、出现的问题、调试过程、经验总结等)为基础,再增加应用到的硬件平台而成的。全书以亲自制作实验平台硬件,亲自设计实验软件为线索,指导读者从零开始学习到最终掌握ARM和l.inux应用的方方面面。
一、如果是毫无基础,那么没有别的办法,要好好补补。无线电基础:电路低频高频注意,选书的时候不要选大学的教材,选职高的,因为更通俗易懂些。二、无线电的原理有个朦胧印象以后,就得学会元件识别,最后是小制作...
我也是QQ455195365,在家一起交流
是想爱好摄影,还是已经是摄影爱好者了, 如果是前者 不必太计较什么牌子和型号 买个入门的单反先玩着,根据自己的情况再有的放矢也不迟,比如宾得km,佳能450D之类 如果是后者你...
木材爱好者必知
并列第一名:海南黄花梨、紫檩木 如果从家具的角度讲,小叶紫檀会好些,无论是硬度还是柔润度和细腻度, 都有更胜一筹。 如果从药用角度来讲, 那当属海南黄花梨, 它有香气可调节环境 第二名:红酸枝 这时说的红酸枝,一定是正宗的红酸枝,也就是市场上 **万元一吨的那种。 正宗的红酸枝老挝的最好。 越南的也行但越南进的半成品材就不行了, 因为它是 半成品。是先生产再然后再烘干,而真正 的工序应该是先烘干再生产。它把程 序搞反了所以这种半成品材质不 够好 并列第三名:条纹乌木、黑酸枝 这里说的纹乌木是指印尼产的, 越南的条纹乌木不值钱, 它的原材料比印尼 产的便宜一半左右。 这里说的黑酸枝又叫大叶紫檩, 其实不然是原来都叫大叶紫 檩,后来出了国标,国标中管大叶紫檩叫黑酸枝所以现在的规范叫法为黑酸枝 第四名:白酸枝 国标中没有这个名,但缅甸就管这个树叫白酸枝,目前市场上大约是 ***** 元立方产于缅
嵌入式linux的LED实验
嵌入式linux的LED实验
ARM7简介
ARM7系列处理器是英国ARM公司设计的主流嵌入式处理器ARM7内核是0.9MIPS/MHz的三级流水线和冯·诺伊曼结构;ARM9内核是5级流水线,提供1.1MIPS/MHz的哈佛结构。ARM7没有MMU。
ARM7系列包括ARM7TDMI、ARM7TDMI-S、带有高速缓存处理器宏单元的ARM720T。该系列处理器提供Thumb16位压缩指令集和EmbededICE软件调试方式,适用于更大规模的SoC设计中。ARM7TDMI基于ARM体系结构V4版本,是目前低端的ARM核。
ARM7TDMI处理器是ARM通用32位微处理器家族的成员之一。它具有优异的性能,但功耗却很低,使用门的数量也很少。它属于精简指令集计算机(RISC),比复杂指令集计算机(CISC)要简单得多。这样的简化实现了:高的指令吞吐量;出色的实时中断响应;小的、高性价比的处理器宏单元。三级流水线:ARM7TDMI处理器使用流水线来增加处理器指令流的速度。这样可使几个操作同时进行,并使处理和存储器系统连续操作,能提供0.9MIPS/MHz的指令执行速度。ARM7TDMI的流水线分3级,分别为:取指、译码、执行。正常操作过程中,在执行一条指令的同时对下一条指令进行译码,并将第三条指令从存储器中取出。内同时有5个指令在执行。在同样的加工工艺下,ARM9TDMI处理器的时钟频率是ARM7TDMI的1.8~2.2倍。
ARM9简介
ARM9系列处理器是英国ARM公司设计的主流嵌入式处理器,主要包括ARM9TDMI和ARM9E-S等系列。
ARM9采用哈佛体系结构,指令和数据分属不同的总线,可以并行处理。在流水线上,ARM7是三级流水线,ARM9是五级流水线。由于结构不同,ARM7的执行效率低于ARM9。平时所说的ARM7、ARM9实际上指的是ARM7TDMI、ARM9TDMI软核,这种处理器软核并不带有MMU和cache,不能够运行诸如linux这样的嵌入式操作系统。而ARM公司对这种架构进行了扩展,所以有了ARM710T、ARM720T、ARM920T、ARM922T等带有MMU和cache的处理器内核。
ARM9处理能力
(1)时钟频率的提高
ARM7处理器采用3级流水线,而ARM9采用5级流水线。增加的流水线设计提高了时钟频率和并行处理能力。5级流水线能够将每一个指令处理分配到5个时钟周期内,在每一个时钟周期内同时有5个指令在执行。在同样的加工工艺下,ARM9TDMI处理器的时钟频率是ARM7TDMI的1.8~2.2倍。
(2)指令周期的改进
指令周期的改进对于处理器性能的提高有很大的帮助。性能提高的幅度依赖于代码执行时指令的重叠,这实际上是程序本身的问题。对于采用最高级的语言,一般来说,性能的提高在30%左右。
UCOS简介
μC/OS II(Micro-Controller OperaTIng System Two)是一个可以基于ROM运行的、可裁剪的、抢占式、实时多任务内核,具有高度可移植性,特别适合于微处理器和控制器,适合很多商业操作系统性能相当的实时操作系统(RTOS)。为了提供最好的移植性能,μC/OS II最大程度上使用ANSI C语言进行开发,并且已经移植到近40多种处理器体系上,涵盖了从8位到64位各种CPU(包括DSP)。 μC/OS II可以简单的视为一个多任务调度器,在这个任务调度器之上完善并添加了和多任务操作系统相关的系统服务,如信号量、邮箱等。其主要特点有公开源代码,代码结构清晰、明了,注释详尽,组织有条理,可移植性好,可裁剪,可固化。内核属于抢占式,最多可以管理60个任务。从1992年开始,由于高度可靠性、鲁棒性和安全性,μC/OS II已经广泛使用在从照相机到航空电子产品的各种应用中。
μC/OS-II实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。 μC/OS-II 的前身是μC/OS,最早出自于1992 年美国嵌入式系统专家Jean J.Labrosse 在《嵌入式系统编程》杂志的5 月和6 月刊上刊登的文章连载,并把μC/OS 的源码发布在该杂志的B B S 上。
UCOS应用情况
1) 高优先级的任务因为需要某种临界资源,主动请求挂起,让出处理器,此时将调度就绪状态的低优先级任务获得执行,这种调度也称为任务级的上下文切换。
2) 高优先级的任务因为时钟节拍到来,在时钟中断的处理程序中,内核发现高优先级任务获得了执行条件(如休眠的时钟到时),则在中断态直接切换到高优先级任务执行。这种调度也称为中断级的上下文切换。 这两种调度方式在μC/OS-II的执行过程中非常普遍,一般来说前者发生在系统服务中,后者发生在时钟中断的服务程序中。 调度工作的内容可以分为两部分:最高优先级任务的寻找和任务切换。其最高优先级任务的寻找是通过建立就绪任务表来实现的。μ C / O S 中的每一个任务都有独立的堆栈空间,并有一个称为任务控制块TCB(Task Control Block)的数据结构,其中第一个成员变量就是保存的任务堆栈指针。任务调度模块首先用变量OSTCBHighRdy 记录当前最高级就绪任务的TCB 地址,然后调用OS_TASK_SW函数来进行任务切换。
第1章嵌入式系统开发与应用基础
1.1基于ARM的嵌入式开发环境概述
1.1.1交叉开发环境
1.1.2模拟开发环境
1.1.3评估电路板
1.1.4嵌入式操作系统
1.2ARM开发工具简介
1.2.1ARMSDT
1.2.2ARMADS
1.2.3Multi2000
1.2.4EmbestIDEforARM
1.2.5OPENice32A900仿真器
1.2.6MultiICE仿真器
1.2.7ARMRealView开发工具
1.3基于ARM的嵌入式系统开发学习
第2章EmbestEDUKITII/III实验教学系统
2.1实验教学系统简介
2.1.1基本组成
2.1.2主要特点
2.1.3软、硬件配置
2.1.4EmbestIDEforARM集成开发环境
2.1.5EmbestEmulatorforARMJTAG仿真器
2.1.6Flash编程器
2.1.7各种连接线与电源适配器
2.2EmbestEDUKITII/III实验教学系统的安装
2.2.1EmbestIDEforARM集成开发环境的安装
2.2.2Flash编程器的安装
2.2.3实验软件平台和硬件平台的连接
2.3EmbestEDUKITII/III实验教学系统硬件电路
2.3.1功能模块介绍
2.3.2硬件设计原理说明
2.3.3硬件结构
2.3.4硬件资源分配
2.4EmbestIDEforARM集成开发环境使用说明
2.4.1EmbestIDEforARM主窗口
2.4.2工程的管理
2.4.3工程的基本设置
2.4.4工程的编译、链接
2.4.5加载调试
2.4.6Flash编程工具
第3章嵌入式软件开发基础实验
3.1ARM汇编指令实验1
3.2ARM汇编指令实验2
3.3Thumb汇编指令实验
3.4ARM处理器工作模式实验
3.5C语言程序实验1
3.6C语言程序实验2
3.7汇编与C语言的相互调用实验
3.8综合编程实验
第4章基本接口实验
4.1存储器实验
4.2I/O口实验
4.3中断实验
4.4串口通信实验
4.5实时时钟实验
4.6数码管显示实验
4.7看门狗控制实验
第5章人机接口实验
5.1液晶显示实验
5.25×4键盘控制实验
5.3A/D转换实验
5.4触摸屏控制实验
5.5PWM步进电机控制实验
第6章通信与音频接口实验
6.1I2C串行通信实验
6.2以太网通信实验
6.3音频接口I2S实验
6.4USB接口实验
6.5SPI接口通信实验
6.6红外模块控制实验
6.7GPRS模块控制实验
第7章嵌入式操作系统Linux基础实验
7.1建立Linux开发环境
7.1.1Cygwin开发环境
7.1.2编译工具
7.1.3源代码文件
7.1.4映像文件烧写
7.2BootLoader编译运行实验
7.3Linux编译运行实验
7.4Linux内核调试实验
7.5cramfs文件系统及添加应用程序实验
7.6多进程与进程间通信实验
第8章嵌入式操作系统WinCE基础实验
8.1WinCE概述
8.2PlatformBuilder环境安装
8.3模拟器的定制
8.4模拟器的编译、调试
8.5注册表的修改
8.6SDK的导出
8.7EVC4.0环境的安装
8.8EVC的“HelloWorld”
8.9EVC编译调试
8.10BSP安装
8.11EBoot编译与下载
8.12LED驱动程序实验
8.13串行口通信实验
8.14NK编译与下载
8.15安装SDK
附录AARM指令、ARM寻址方式和Thumb指令速查表
附录BARM和Thumb指令集编码
附录C随书附带光盘内容说明
参考文献
本书由田泽编著。
田泽,现任中航工业西安航空计算技术研究所副总工程师兼航空微电子技术研究室主任。长期以来从事VLSI设计、SoC设计方法学、嵌入式微处理器体系结构与VLSI实现、嵌入式应用系统开发的科研及管理工作。荣获“2008年陕航局优秀共产党员”、“2007—2008年六三一所优秀干部”等光荣称号。出版著作、译著、教材14本,获授权的国家发明专利两项,主持国家及省部级项目20多项,发表学术论文60多篇,获“2009年中国嵌入式系统十大杰出青年”。