嵌入式LINUX 电子教程全集 嵌入式系统出现于60年代晚期,它最初被用于控制机电电话交换机,如今已被广泛的应用于工业制造、过程控制、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等众多领域。计算机系统核心CPU,每年在全球范围内的产量大概在二十亿颗左右,其中超过80%应用于各类专用性很强的嵌入式系统。一般的说,凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统。 1. 嵌入式Linux系统就是利用Linux其自身的许多特点,把它应用到嵌入式系统里。 Linux做嵌入式的优势,首先,Linux是开放源代码的,不存在黑箱技术,遍布全球的众多Linux爱好者又是Linux开发者的强大技术支持;其次,Linux的内核小、效率高,内核的更新速度很快,linux是可以定制的,其系统内核最小只有约134KB。第三,Linux是免费的OS,在价格上极具竞争力。 Linux还有着嵌入式操作系统所需要的很多特色,突出的就是Linux适应于多种CPU和多种硬件平台,是一个跨平台的系统。到目前为止,它可以支持二三十种CPU。而且性能稳定,裁剪性很好,开发和使用都很容易。很多CPU包括家电业芯片,都开始做Linux的平台移植工作。移植的速度远远超过Java的开发环境。也就是说,如果今天用Linux环境开发产品,那么将来换CPU就不会遇到困扰。同时,Linux内核的结构在网络方面是非常完整的,Linux对网络中最常用的TCP/IP协议有最完备的支持。提供了包括十兆、百兆、千兆的以太网络,以及无线网络,Toker ring(令牌环网)、光纤甚至卫星的支持。所以Linux很适于做信息家电的开发。 还有使用Linux为的是来开发无线连接产品的开发者越来越多。Linux在快速增长的无线连接应用主场中有一个非常重要的优势,就是有足够快的开发速度。这是因为LInux有很多工具,并且Linux为众多程序员所熟悉。因此,我们要在嵌入式系统中使用Linux操作系统。 Linux的大小适合嵌入式操作系统——Linux固有的模块性,适应性和可配置性,使得这很容易做到。另外,Linux源码的实用性和成千上万的程序员热切其望它用于无数的嵌入式应用软件中,导致很多嵌入式Linux的出现,包括:Embedix,ETLinux,LEM,Linux Router Project,LOAF,uCLinux,muLinux,ThinLinux,FirePlug,Linux和PizzaBox Linux 相对,Linux的图形界面还相对较弱,但近年Linux的图形界面发展也很快,这也就不是问题。 2. 什么是嵌入式Linux 嵌入式linux 是将日益流行的Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行的一种操作系统。嵌入式linux既继承了Interlnet上无限的开放源代码资源,又具有嵌入式操作系统的特性。嵌入式Linux的特点是版权费免费;购买费用媒介成本技术支持全世界的自由软件开发者提供支持网络特性免费,而且性能优异,软件移植容易,代码开放,有许多应用软件支持,应用产品开发周期短,新产品上市迅速,因为有许多公开的代码可以参考和移植,实时性能RT_Linux Hardhat Linux 等嵌入式Linux支持,实时性能稳定性好安全性好。 3. 嵌入式Linux有巨大的市场前景和商业机会,出现了大量的专业公司和产品,如Montavista Lineo Emi等,有行业协会如Embedded Linux Consortum等,得到世界著名计算机公司和OEM板级厂商的支持,例如IBM Motorola Intel等。传统的嵌入式系统厂商也采用了Linux策略,如Lynxworks Windriver QNX等,还有Internet上的大量嵌入式Linux爱好者的支持。嵌入式Linux支持几乎所有的嵌入式CPU和被移植到几乎所有的嵌入式OEM板。 4.嵌入式Linux的应用领域非常广泛,主要的应用领域有信息家电、PDA 、机顶盒、Digital Telephone、Answering Machine、Screen Phone 、数据网络、Ethernet Switches、Router、Bridge、Hub、Remote access servers、ATM、Frame relay 、远程通信、医疗电子、交通运输计算机外设、工业控制、航空航天领域等。 5.如果分别让10位工程师给出嵌入式系统的定义,将得到10个不同的答案。一般来说,大部分的嵌入式系统执行特定的任务。我们假定最简单的嵌入式系统包括输入/输出功能,以及一些控制逻辑,该系统基于它的配置执行某些类型的功能。按照这个标准,可以认为一个包含实现控制逻辑74123计数器以及一个状态是一个嵌入式系统。也许可以补充说,该系统必须可通过存储在固件中的软件进行编程。这个新的嵌入式系统定义包括输入/输出(I/O),以及存储在系统固件中的控制逻辑。一个带有鼠标、键盘、网络连接并运行图形用户界面(GUI,graphical user interface)多任务操作系统的桌面计算机显然满足这些要求,但我们能认为它是一个嵌入式系统吗? 如果桌面计算机不是一个嵌入式系统,那么手持设备呢?它们有I/O功能,可以运行存储在固件中的控制逻辑。有人说,桌面计算机和手持设备都有通用计算机设备,可以运行软件来执行许多不同的任务,与之不同的是,嵌入式系统(例如,洗碗机控制器或飞行导航系统)主要是为特定任务而设计的。这种特定的功能限定使嵌入式设备有功能上的唯一性。如果是这样,为什么一些嵌入式系统设计成具有附加的功能,如存储在非易失性存储器中的程序,并且具有运行可以完成原始设计范围之外的任务的多任务操作系统的能力呢? 在过去,区分嵌入式系统和通用计算机比现在简单的多。例如,可以很容易地区分出一个基于8051的T1分幅卡嵌入式系统和一台Sun UNIX工作站。而现在,从功能方面很难区分一台Sun工作站和一个包含PowerPC以及32MB内存和16MB闪存的机顶盒。这样的机顶盒可以运行带GUI的多任务操作系统,可现场升级,可以同时运行多个程序(如视频控制器、数字录像和Java虚拟机),还可以进行安全的因特网在线交易。很难判断这种机顶盒是否是一个嵌入式系统。显然,硬件性能的提升和价格的下降使通用计算机和嵌入式系统之间的界限变得很模糊,技术的进步使得我们很难定义什么是嵌入式。
上传时间: 2014-12-30
上传用户:ljt101007
针对区域内多个小区普查的需求,对复杂环境下低信噪比WCDMA小区搜索进行了针对性改进,采用差分相干累积以及RS软译码算法提高了低信噪比条件下WCDMA小区搜索性能并利用FPGA进行了工程实现,仿真计算和安捷伦E5515C的测试结果表明改进是有效的。
上传时间: 2013-11-18
上传用户:wxqman
针对UHF读写器设计中,在符合EPC Gen2标准的情况下,对标签返回的高速数据进行正确解码以达到正确读取标签的要求,提出了一种新的在ARM平台下采用边沿捕获统计定时器数判断数据的方法,并对FM0编码进行解码。与传统的使用定时器定时采样高低电平的FM0解码方法相比,该解码方法可以减少定时器定时误差累积的影响;可以将捕获定时器数中断与数据判断解码相对分隔开,使得中断对解码影响很小,实现捕获与解码的同步。通过实验表明,这种方法提高了解码的效率,在160 Kb/s的接收速度下,读取一张标签的时间约为30次/s。 Abstract: Aiming at the requirement of receiving correctly decoded data from the tag under high-speed communication which complied with EPC Gen2 standard in the design of UHF interrogator, the article introduced a new technology for FM0 decoding which counted the timer counter to judge data by using the edge interval of signal capture based on the ARM7 platform. Compared with the traditional FM0 decoding method which used the timer timed to sample the high and low level, the method could reduce the accumulation of timing error and could relatively separate capture timer interrupt and the data judgment for decoding, so that the disruption effect on the decoding was small and realizd synchronization of capture and decoding. Testing result shows that the method improves the efficiency of decoding, at 160 Kb/s receiving speed, the time of the interrogator to read a tag is about 30 times/s.
上传时间: 2013-11-10
上传用户:liufei
14.1本章导读所有LPC1300系列Cortex-M3微控制器的16位定时器块都相同。14.2基本配制CT16B0/1采用以下寄存器进行配制:1)管脚:CT16B0/1管脚必须通过IOCONFIG寄存器块进行配制(见“I/O配制寄存器IOCON_PIOn”小节)。2)功率与外设时钟:在SYSAHBCLKCTRL寄存器中置位位7与位8(见表“系统AHB时钟控制寄存器位描述”)。
上传时间: 2013-11-16
上传用户:liuwei6419
本书介绍了Cygnal集成产品公司的C8051Fxxx高速片上系统(SOC)单片机的硬件结构和工作原理,详细阐述了C8051Fxxx的定时器、可编程计数器阵列(PCA)、串行口、SMBus/I2C接口、SPI总线接口、ADC、DAC、比较器、复位源、振荡器、看门狗定时器、JTAG接口等外设或功能部件的结构和使用方法。
上传时间: 2013-10-26
上传用户:born2007
飞思卡尔智能车的舵机测试程序 #include <hidef.h> /* common defines and macros */#include <MC9S12XS128.h> /* derivative information */#pragma LINK_INFO DERIVATIVE "mc9s12xs128" void SetBusCLK_16M(void) { CLKSEL=0X00; PLLCTL_PLLON=1; //锁相环电路允许位 SYNR=0x00 | 0x01; //SYNR=1 REFDV=0x80 | 0x01; POSTDIV=0x00; _asm(nop); _asm(nop); while(!(CRGFLG_LOCK==1)); CLKSEL_PLLSEL =1; } void PWM_01(void) { //舵机初始化 PWMCTL_CON01=1; //0和1联合成16位PWM; PWMCAE_CAE1=0; //选择输出模式为左对齐输出模式 PWMCNT01 = 0; //计数器清零; PWMPOL_PPOL1=1; //先输出高电平,计数到DTY时,反转电平 PWMPRCLK = 0X40; //clockA 不分频,clockA=busclock=16MHz;CLK B 16分频:1Mhz PWMSCLA = 0x08; //对clock SA 16分频,pwm clock=clockA/16=1MHz; PWMCLK_PCLK1 = 1; //选择clock SA做时钟源 PWMPER01 = 20000; //周期20ms; 50Hz; PWMDTY01 = 1500; //高电平时间为1.5ms; PWME_PWME1 = 1;
上传时间: 2013-11-04
上传用户:狗日的日子
写给小白们的FPGA入门设计实验: 1. 写在前面的话 2 2. Lab 1 : LCD1602 字符显示设计 3 2.1. 摘要 2.2. 内容 2.3. 程序 2.4. 结果(问题,解决,体会) 3. Lab 2 : 4 位减法、加法器设计 3.1. 摘要 3.2. 内容 3.3. 程序 3.4. 结果(问题,解决,体会) 4. Lab 3 :三位二进制乘法器设计 4.1. 摘要 4.2. 内容 4.3. 程序 4.4. 结果(问题,解决,体会) 5. Lab 4 :序列检测器设计 6. Lab 5 :变模计数器设计
上传时间: 2013-11-07
上传用户:zzbbqq99n
通过介绍Multisim软件的功能和特点,结合格雷玛计数器的设计实例,叙述了在Multisim软件平台进行时序逻辑电路的设计原理及构成方法,并利用软件对设计进行仿真。
上传时间: 2014-01-05
上传用户:sunchao524
随着HDL Hardware Description Language 硬件描述语言语言综合工具及其它相关工具的推广使广大设计工程师从以往烦琐的画原理图连线等工作解脱开来能够将工作重心转移到功能实现上极大地提高了工作效率任何事务都是一分为二的有利就有弊我们发现现在越来越多的工程师不关心自己的电路实现形式以为我只要将功能描述正确其它事情交给工具就行了在这种思想影响下工程师在用HDL语言描述电路时脑袋里没有任何电路概念或者非常模糊也不清楚自己写的代码综合出来之后是什么样子映射到芯片中又会是什么样子有没有充分利用到FPGA的一些特殊资源遇到问题立刻想到的是换速度更快容量更大的FPGA器件导致物料成本上升更为要命的是由于不了解器件结构更不了解与器件结构紧密相关的设计技巧过分依赖综合等工具工具不行自己也就束手无策导致问题迟迟不能解决从而严重影响开发周期导致开发成本急剧上升 目前我们的设计规模越来越庞大动辄上百万门几百万门的电路屡见不鲜同时我们所采用的器件工艺越来越先进已经步入深亚微米时代而在对待深亚微米的器件上我们的设计方法将不可避免地发生变化要更多地关注以前很少关注的线延时我相信ASIC设计以后也会如此此时如果我们不在设计方法设计技巧上有所提高是无法面对这些庞大的基于深亚微米技术的电路设计而且现在的竞争越来越激励从节约公司成本角度出 也要求我们尽可能在比较小的器件里完成比较多的功能 本文从澄清一些错误认识开始从FPGA器件结构出发以速度路径延时大小和面积资源占用率为主题描述在FPGA设计过程中应当注意的问题和可以采用的设计技巧本文对读者的技能基本要求是熟悉数字电路基本知识如加法器计数器RAM等熟悉基本的同步电路设计方法熟悉HDL语言对FPGA的结构有所了解对FPGA设计流程比较了解
上传时间: 2015-01-02
上传用户:refent
本文介绍了实现天线方位码可停在任意角度的实际电路设计,该设计采用数值大小比较器比较模拟天线方位与EPROM全译码送出的二进制数据(即利用拨码开关设定的数据作为控制输入的角度)。当需要比较的数据达到一致时,便控制了模拟天线即555振荡器脉冲到分频计数器的输入,分频计数器停止计数,天线停在拨码开关设定的角度,这里实际电路角度控制精确度为1度,如果需要提高精确度,只是增加位数,基本方法不变。
上传时间: 2014-07-25
上传用户:digacha