1.Nios II嵌入式处理器特性
2.正点原子FPGA连载第十四uC/GUI显示线/点-摘自正点原子开拓者 Nios II开发指南
3.软核简介
4.Nios IINios Ⅱ系列
5.å¦ä½å¦ä¹ åµå
¥å¼
Nios II嵌入式处理器特性
Nios II嵌入式处理器系列是源码专为Altera FPGA和可编程片上系统(SOPC)的集成应用设计的高效解决方案。这款处理器以其独特的源码特性和优化性能在市场上脱颖而出。 首先,源码Nios II软核处理器以其低功耗和小体积著称,源码这对于资源受限的源码嵌入式系统来说是一个显著的优势。它具备出色的源码web 部署 源码ip实时性能,能保证在严苛的源码时间约束下稳定运行,这对于需要精确时间控制的源码应用尤为重要。 其次,源码Nios II具有高度的源码可定制性,开发者可以根据具体项目需求进行灵活的源码配置,无论是源码内存管理、中断处理,源码还是源码接口设计,都能进行深度定制,源码这极大地提高了开发效率和灵活性。 此外,它的指令集设计精简,执行效率高,这对于处理密集型任务时,如图像处理、数据通信等,svm分类c源码能够提供良好的性能。而且,Nios II系列支持多种编译器和工具链,使得开发者可以无缝接入现有的开发环境,大大简化了开发流程。 最后,Nios II的开放源码特性使得社区支持活跃,开发者可以从中获得丰富的软件资源和经验分享,这对于持续改进和升级处理器性能非常有帮助。 关于Nios II的详细特性,可以参考专门的Nios II简介页面,那里提供了更为全面和深入的介绍和文档支持。扩展资料
前不久,Altera 正式推出了Nios II系列位RSIC嵌入式处理器。Nios II系列软核处理器是Altera的第二代FPGA嵌入式处理器,其性能超过DMIPS,在Altera FPGA中实现仅需美分。Altera的Stratix 、Stratix GX、 Stratix II和 Cyclone系列FPGA全面支持Nios II处理器,以后推出的波段监控指标源码FPGA器件也将支持Nios II。正点原子FPGA连载第十四uC/GUI显示线/点-摘自正点原子开拓者 Nios II开发指南
实验平台:正点原子开拓者FPGA 开发板
本章介绍如何在 Qsys 中移植 uC/GUI,并以4.3 寸、* 分辨率的LCD 屏幕为例实现基本的打点画线功能。移植过程包含以下部分:
.1 简介:µC/GUI 是一种用于嵌入式应用的图形支持软件,用于提供高效的图形用户界面。它适用于单一任务和多任务环境。
.2 实验任务:移植 µC/GUI 到 Nios II 上运行,并实现基本的打点画线功能。
.3 硬件设计:基于《lcd_all_Colorbar》实验搭建硬件设计,无需改变硬件设计。
.4 软件设计:在已有的工程中创建新工程 qsys_gui,将原工程源代码文件添加,替换 main.c 为 hello_world.c,开始移植 µC/GUI。
.5 下载验证:连接电脑和开发板,将 lcd_all_colorbar.sof 文件下载到开发板,并下载 qsys_gui.elf 文件,验证结果显示。
µC/GUI 的特点包括:
1. 用于嵌入式应用的图形支持,高效提供图形用户界面。
2. 适合单一任务和多任务环境,lol有源码吗适用于任何商业实时操作系统。
3. 提供 C 源代码形式,适用于任何尺寸的物理或虚拟显示,任何 LCD 控制器和 CPU。
4. 适合大多数使用黑色/白色和彩色 LCD 的应用程序。
5. 提供丰富的图形库、多窗口、多任务机制、窗口管理、窗口控件(按钮、列表框等)。
6. 支持多字符集、多字体、多种图像文件、鼠标、触摸屏。
7. 在嵌入式系统或裸机上运行。
µC/GUI 对内存的需求取决于系统大小和功能:小系统 RAM 需求约 字节,大的系统 RAM 需求在 2~6KB 之间。
µC/GUI 屏幕坐标从左上角的(0,0)开始,X 值向右增加,psd网页模板源码Y 值向下增加。所有 API 函数坐标均以像素为单位。
移植步骤包括:添加功能文件、修改配置文件、与硬件底层对接、添加到工程中。
最后,实验结果显示移植和实现打点画线功能成功完成。
软核简介
Altera最近推出了一款全新的Nios II系列位RSIC嵌入式处理器,这是Altera第二代FPGA处理器,性能超越DMIPS,仅在Altera FPGA中成本仅为美分。Nios II处理器得到了Stratix、Stratix GX、Stratix II和Cyclone系列FPGA的全面支持,未来新发布的FPGA也将加入支持列表。 自年推出第一代位Nios处理器以来,Altera已经交付了超过套开发套件,使其成为业界最受欢迎的软核处理器。Nios II系列采用了新一代架构,相比一代产品,效率和性能显著提升。平均占用FPGA资源减少到%以下,而计算性能提升了一倍。 Nios II系列包含三种型号:Nios II/f(快速)提供最高性能和适中FPGA使用量;Nios II/s(标准)侧重高性能和低资源消耗;Nios II/e(经济)则追求低性能和最低FPGA占用。这些产品共享位处理器的基本结构,如位指令、数据和地址路径,位通用寄存器,以及个外部中断源。所有产品都基于相同的ISA,支持%的二进制代码兼容,设计者可以根据需求灵活调整CPU,无需更改现有的软件投入。 特别之处在于,Nios II系列支持专用指令,用户可以为每个处理器添加最多个自定义硬件模块,从而精确调整系统性能。此外,它支持多个外设选项,设计者可根据需要选择最适合的处理器、外设和接口组合。Nios II不仅适用于位嵌入式系统,还支持从一代Nios处理器的移植,以及ASIC的移植选项,Altera提供了一键式升级和移植服务。 Nios II提供了丰富的软件开发工具,包括编译器、IDE、JTAG调试器、RTOS和TCP/IP协议栈,使设计者能够轻松构建定制化的处理器系统。通过一键式工具,开发者可以为Nios II系统快速生成专用的C/C++运行环境。开发套件还包括MicroC/OS-II和Nucleus Plus两个RTOS,以及针对网络应用的TCP/IP协议栈。 Altera的嵌入式处理器策略源于对ASIC开发成本上升的观察,许多OEM转向FPGA来构建灵活的系统。Nios II系列作为FPGA优化的嵌入式处理器,既能满足位和位市场,预计到年,该市场价值将达到亿美元。软核处理器在FPGA中的优势在于其灵活性,开发者可以利用HDL源码进行定制,以适应不断进化的系统需求,避免过时的风险。扩展资料
IP软核通常是用HDL文本形式提交给用户,它经过RTL级设计优化和功能验证,但其中不含有任何具体的物理信息。据此,用户可以综合出正确的门电路级设计网表,并可以进行后续的结构设计,具有很大的灵活性,借助于EDA综合工具可以很容易地与其他外部逻辑电路合成一体,根据各种不同半导体工艺,设计成具有不同性能的器件。软IP内核也称为虚拟组件(VC-Virtual Component)。Nios IINios Ⅱ系列
Altera的Nios IINios Ⅱ系列处理器为位嵌入式应用提供了强大的解决方案。第一代Nios处理器设计可以便捷地移植到Nios Ⅱ系列,而Altera长期支持在现有FPGA上运行的第一代处理器。他们提供了便捷的一键式升级选项,让客户轻松过渡到Nios Ⅱ处理器。Nios Ⅱ处理器不仅适用于HardCopy器件,还支持ASIC移植,Altera为基于Nios Ⅱ的系统提供了灵活的开发选项。 Nios Ⅱ处理器配备了一套完整的软件开发工具包,包括编译器、集成开发环境(IDE)、JTAG调试器、实时操作系统(RTOS)和TCP/IP协议栈。设计者可以使用SOPC Builder工具在Altera Quartus Ⅱ开发软件中轻松构建定制的处理器系统,根据需求调整Nios Ⅱ核的数量。 利用Nios Ⅱ软件开发工具,用户可以快速构建针对系统硬件的专用C/C++运行环境,IDE提供了丰富的软件模板简化项目设置。开发套件还包含了第三方RTOS,如MicroC/OS-Ⅱ和Nucleus Plus,以及适合网络应用的TCP/IP协议栈,为开发者提供了丰富的选择。 Altera致力于嵌入式处理器策略,因为随着ASIC开发成本上升,OEM倾向于使用FPGA。大部分系统需要内置处理器,而Altera的Nios Ⅱ处理器系列恰好满足位和位嵌入式市场的需求,预计到年,这个市场价值将达到亿美元。相比于硬核处理器,Nios Ⅱ系列在FPGA中的软核优势在于其灵活性,基于HDL源码的实现允许开发者根据新系统需求进行定制,避免了被淘汰的风险。扩展资料
前不久,Altera 正式推出了Nios II系列位RSIC嵌入式处理器。Nios II系列软核处理器是Altera的第二代FPGA嵌入式处理器,其性能超过DMIPS,在Altera FPGA中实现仅需美分。Altera的Stratix 、Stratix GX、 Stratix II和 Cyclone系列FPGA全面支持Nios II处理器,以后推出的FPGA器件也将支持Nios II。å¦ä½å¦ä¹ åµå ¥å¼
ä½è ï¼å¿åç¨æ·
é¾æ¥ï¼/question//answer/
æ¥æºï¼ç¥ä¹
èä½æå½ä½è ææãåä¸è½¬è½½è¯·èç³»ä½è è·å¾ææï¼éåä¸è½¬è½½è¯·æ³¨æåºå¤ã
å¦ä¹ åµå ¥å¼ç³»ç»ï¼é¦å åºè¯¥æç¡®ä»ä¹æ¯åµå ¥å¼ç³»ç»ï¼å¦åè´¹åå»å¦ï¼å´ä¸ç¥æå¦ä¸ºä½ç©ï¼å²ä¸æç¶ï¼åµå ¥å¼ç³»ç»çå®ä¹å¾å¤ï¼è¿ä¹æ¯å°æ°åµå ¥å¼ç³»ç»å¦ä¹ çä¸ä¸ªå ç´ ãç¬è æ ¹æ®èªå·±å¼ååæå¦è¿ç¨ä¸çç解ï¼ä»¥å对åç§åµå ¥å¼ç³»ç»çåºç¨è¿è¡æ»ç»ï¼æåºäºåµå ¥å¼ç³»ç»çç®åå®ä¹ï¼åµå ¥å¼ç³»ç»æ¯åµå ¥å¼è®¡ç®æºç³»ç»çç®ç§°ï¼è¿ä¸ªå®ä¹çªåºåµå ¥å¼è®¡ç®æºç³»ç»åæ®é计ç®æºç³»ç»çå ±æ§ãä¸è¡¨ååºäºåµå ¥å¼ç³»ç»çä¸äºå ¸åçåºç¨ï¼
æºè½æºå¨äººï¼S D R 4ï¼ç«æç»é车ï¼
娱ä¹åæ¶è´¹çµåï¼Gameboy Advanceï¼SonyPSPï¼
ç½ç»é信产åï¼Smartphoneï¼
åç¨è®¾å¤ï¼åç¨PDA ï¼
汽车ï¼è½¦è½½å¯¼èªï¼èªå¨é©¾é©¶ï¼å¨±ä¹ç³»ç»ï¼
æºè½ä»ªå¨ï¼èæ仪å¨ï¼
å®å ¨é²æ¤ï¼é²ç«ï¼é²çï¼
ç¯å¢ä¿æ¤ï¼æ¢ç©ºæ°çï¼
é¶è¡ååä¸æ¶è´¹ï¼ATMï¼
以ç«æç»é车为ä¾æ¥åæä¸ä¸åµå ¥å¼ç³»ç»çå®ä¹ãç«æç»é车è½ç¶å¬èµ·æ¥æè§å¨ææ¯ä¸æäºé«ä¸å¯æµï¼ä½æ¯æ¬è´¨å°±æ¯åµå ¥å¼è®¡ç®æºç³»ç»çåºç¨ï¼å ¶æ ¸å¿å°±æ¯ä¸ä¸ªè®¡ç®æºç³»ç»ï¼èè¿ä¸ªè®¡ç®æºç³»ç»çç»æåä¼ ç»ç计ç®æºç³»ç»å¨æ¬è´¨ä¸æ²¡æä»ä¹å·®å«ã两è çæ¾èä¸åä¹å¤å°±å¨äºï¼ç¨äºç«æç»é车ç计ç®æºç³»ç»è¢«å®è£ å°äºç«æç»é车ä¸ãå½ç¶ï¼ä¸ä¸ªè®¡ç®æºç³»ç»è½å¤è¢«å®è£ å¨ç«æç»é车ä¸ï¼æ¯éè¦è¿è¡å¾å¤ç¹æ®è®¾è®¡çãä½æ¯ä»æ¬è´¨ä¸è®²ï¼åµå ¥å¼ç³»ç»çæ ¸å¿æ¦å¿µè¿å¨è®¡ç®æºç³»ç»ãåµå ¥å¼ç³»ç»å¦ä¹ çéç¹ä¹å¨è®¡ç®æºç³»ç»ä¸ãä¸æ¹é¢ï¼å¦ä¹ è éè¦ç¢åºææ¡è®¡ç®æºç³»ç»æ¬èº«çæ¦å¿µï¼æ´éè¦çæ¯å¦ä¹ åµå ¥ç³»ç»çå¼åè¿ç¨åä¼ ç»è®¡ç®æºç³»ç»å¼åè¿ç¨çå·®å«ãè¿ééè¦æåºçæ¯ï¼å¾å¤å¦ä¹ è æ¬æ¥å°±æ²¡æä»äºè¿å®æ´è®¡ç®æºç³»ç»çå¼åï¼é«æ ¡çæå¦æ¯ä»¥ç¨åºè®¾è®¡ä¸ºä¸å¿çï¼è®¡ç®æºç³»ç»çææï¼æä½ç³»ç»çåçï¼ç¼ç¨è¯è¨ç课ç¨é½æ¯ä¸ºäºè½å¤è®©å¦çæ´å¥½ç使ç¨è®¡ç®æºç³»ç»è¿è¡ç¨åºè®¾è®¡ï¼å¨ç°æç计ç®å¹³å°ä¸æ¥è®¾è®¡å®ç°åç§åºç¨ï¼å¦çä¸è¬æ²¡ææºä¼å¦ä¹ ä¸ä¸ªå®æ´ç计ç®æºç³»ç»æ¯å¦ä½æ建ï¼å¹¶äº²èº«åä¸å°æ建çæ¯ä¸ä¸ªè¿ç¨ãè对äºåµå ¥å¼ç³»ç»èè¨ï¼ä»äºå¹³å°å¼åç人就æ¯è¦äº²èªå»å¼ååºä¸ä¸ªå®æ´ç计ç®æºç³»ç»ï¼è¿ä¸ªè¿ç¨å æ¬
1. éæ±åæ
2 硬件设计
3 驱å¨ç¨åº
4 Bootloader & BSP ï¼æ¿çº§æ¯æå ï¼
5 æä½ç³»ç»ç移æ¤
6 åºç¨ç¨åºçå¼å
7 æ§è½æ£æ¥
åµå ¥å¼ç³»ç»æå¦çç®çå°±æ¯æä¼å¦çå¦ä½æ ¹æ®éæ±å»å»ºç«æ»¡è¶³æç§ç¹æ®è¡ä¸éæ±çåµå ¥å¼è®¡ç®æºç³»ç»ã让å¦çå¦ä¼å¦ä½æ件硬件平å°ï¼è¿è¡ç¡¬ä»¶è®¾è®¡ï¼éæ©è½å¤æ»¡è¶³åºç¨è¦æ±çæä½³çåµå ¥å¼æä½ç³»ç»ï¼å¹¶å®æBootloaderï¼BSPå驱å¨ç¨åºçç¼åï¼ç§»æ¤ï¼è°è¯çè¿ç¨ã为äºæ»¡è¶³è¡ä¸éæ±ï¼æç»è¦å¨æ建ç«çç³»ç»ä¸ç¼åè°è¯ç¸åºçåºç¨ç¨åºï¼å¹¶è¿è¡æ§è½çæµè¯åæ£æ¥ã
ä½ æ¯è°,ä½ éè¦å¦ä¹ åªäºä¸è¥¿ï¼
å¦æä½ çå·¥ä½åªæ¯éè¦å¨PC æºä¸ç¼åä¸ä¸ªå¾çæµè§ç¨åºï¼é£ä¹ä½ 就没æå¿ è¦å»äºè§£å½ç³»ç»æ¶å°ä¸ä¸ªARP请æ±å ååºè¯¥å¦ä½ååºãåæ ·çéçï¼åµå ¥å¼ç³»ç»çå¦ä¹ ä¹æ¯æå¾å¤æ¹é¢çãå°±åµå ¥å¼ç³»ç»ç设计åå®ç°èè¨ï¼åºæ¬ä¸éè¦åç§ä¸åçå·¥ä½ï¼ç³»ç»è®¾è®¡å·¥ä½ï¼ç¡¬ä»¶è®¾è®¡å·¥ä½ï¼é©±å¨ç¨åºåæä½ç³»ç»ç§»æ¤å·¥ä½ååºç¨ç¨åºè®¾è®¡å¼åå·¥ä½ã
1.ç³»ç»è®¾è®¡å·¥ä½
å¨ç³»ç»ç设计é¶æ®µï¼ç³»ç»åæå¸å°æ ¹æ®éæ±ç¡®å®ç³»ç»ç硬件çåºæ¬ææï¼æ ¹æ®ç³»ç»çéæ±éæ©ä½¿ç¨é£ç§å¤çå¨ï¼ä½¿ç¨åªç§æä½ç³»ç»ï¼ä½¿ç¨é£äºè½¯ä»¶å¼åå·¥å ·ãç³»ç»åæå¸å¾å¾æ¯è¾ä¸ºå®æ´çåä¸è¿åµå ¥å¼ç³»ç»è®¾è®¡çå ¨è¿ç¨ï¼å¯¹äºç³»ç»åºç¨çè¡ä¸è¾ä¸ºäºè§£ï¼å¯¹äºåµå ¥å¼ç³»ç»æ¬èº«çå¼åæµç¨ååæ¸ æ¥ç人ã
2.硬件设计工ä½
ç³»ç»ç¡¬ä»¶è®¾è®¡äººåéè¦æ ¹æ®ç³»ç»åæå¸ç设计ç»æï¼è¿è¡ç¡¬ä»¶åçå¾ç设计ãé常éè¦ç¡¬ä»¶è®¾è®¡äººåçæåµå ¥å¼ç³»ç»ç硬件ææã硬件设计人åéè¦äºè§£å¸¸ç¨çåµå ¥å¼ç³»ç»å¤çå¨ï¼åå¨å¨ï¼Flashï¼SDRAMï¼ï¼ä»¥å¤ªç½MACè¯çï¼é³é¢/è§é¢ç¼è§£ç è¯çï¼çµæºç®¡çè¯çï¼æ»çº¿æ¥å£çµè·¯ (USB,PCI)ï¼æ¶²æ¶æ¾ç¤ºæ¨¡åï¼å¯ç¼ç¨é»è¾å¨ä»¶(FPGA/CPLD)ï¼æ 线ç½ç»é信模å(Bluetooth,WLAN,GPRS)ç硬件çµè·¯ææå ç´ çåºæ¬å·¥ä½åçï¼è¿æ¥ä½¿ç¨æ¹æ³ï¼ä½¿ç¨æ³¨æäºé¡¹ï¼åºæ¬è°è¯æ¹æ³çå 容ãå¨ç½ç»ä¸è½æ¾å°å¾å¤å ¬å¸çè¯ä¼°æ¿çåçå¾ï¼å¯¹äºè¿äºåçå¾è¦ä»ç»ç 究ï¼æ¸æ¸ å¤çå¨ååå¨å¨ï¼ç½å¡ï¼æ¶²æ¶æ¨¡åçå¨ä»¶çè¿æ¥æ¹æ³ååå ãéè¿å¯¹è¿äºçµè·¯çç 究ï¼è½å¤è¾å¿«å°äºè§£æ´ä¸ªåµå ¥å¼ç³»ç»çææï¼è¿äºçµè·¯åå®é 产åä¸ççµè·¯è½æä¸å®å·®å«çï¼ç¹å«æ¯å¯¹äºææ设å¤ï¼ä½è¿äºå·®å«ä¸å½±ååå¦è å¦ä¹ åµå ¥å¼ç³»ç»ç硬件设计åºæ¬ææã
以ä¸è¿äºç¥è¯ï¼å¾å¾éè¦è¾é¿æ¶é´çå¦ä¹ å积累ï¼éè¦äº²èªåä¸å®è·µçæºä¼ã对äºååæ¥è§¦åµå ¥å¼ç³»ç»ç¡¬ä»¶å¼åçå¦çæ¥è®²ï¼ä¸è¬ä¸å¯è½å ¨é¨äºè§£è¿äºç¥è¯ï¼ä½ä¹ä¸ä¼æ¯ééä¸æ æç¥ãç¬è ç»åèªå·±å¼ååæå¦çç»éªè®¤ä¸ºï¼é¦å åºè¯¥éå®ä¸æ¬¾ä¸»æµä¸è¾ä¸ºç®åçåµå ¥å¼ç³»ç»å¤çå¨ï¼æ¯å¦åºäºARM7TDMI å æ ¸çATM,S3CB0 çåµå ¥å¼ç³»ç»å¤çå¨ï¼å¦ä¹ ä½RISCå¤çå¨çç¼ç¨æ¨¡åï¼æ令éãé«æ ¡æå¦ä¸ï¼åç计ç®æºè¯¾ç¨ä¸è¬ä»¥ç³»ååçä¸ºæ ¸å¿è®²è§£ï¼ç±äºç°ä»£ä½å¤çå¨çç»æåå¼åæ¹å¼å8ä½åçæºæçè¾å¤§çå·®å«ï¼å¦ä¹ è è¿æ¯éè¦è±ä¸ç¹åæ°æ¥ç 究以ä¸ä½å¤çå¨çã以ARMå¤çå¨ä¸ºä¾ï¼å¦ä¹ è å°±éè¦ç解å¤çå¨çå¤ç§å·¥ä½æ¨¡å¼ï¼å¤ä»½å¯åå¨ï¼RISC æ令éçç¹ç¹ï¼MMU åèæå°åï¼ä¸æå¤çè¿ç¨çå 容ãå¨å¦ä¹ æ令éçè¿ç¨ä¸ï¼æ好è½å¤æ¯å¦ä¹ å æ¡æ令ï¼å°±ä½¿ç¨è¿å æ¡æ令å¨æ¨¡æå¨ä¸å®éªä»¥ä¸ï¼è§å¯å¤çå¨æ§è¡çç»æãè¿ä¸ªè¿ç¨ä¸æ¹é¢æ¯å¦ä¹ è 对äºæ令æ¬èº«çå¦ä¹ è½å¤åå¾ä¸ä¸ªæ¯è¾å¥½çææï¼å¦å¤ä¹æ¯å¯¹å¼åå·¥å ·æ¬èº«çä¸ç§å¦ä¹ ãæ¥çï¼å°±å¯ä»¥å¼å§å¦ä¹ çä¸èµæºç使ç¨åé ç½®æ¹æ³ãè¿æ¶å°±éè¦ä¸ä¸ªæ¹ä¾¿ä½¿ç¨çå¼åæ¿ï¼å¦ä¹ è è½å¤éè¿JTAG仿çå¨å°å¼åæ¿åè°è¯PCæºç¸è¿ï¼è¿è¡ç¨åºçä¸è½½ï¼è°è¯ãç¹å«æ¯è¦ä»ç»ç 究系ç»çåå§åè¿ç¨åä¸æå¤ççè¿ç¨ãå¨å¼åè¿ç¨ä¸å¦æéå°é®é¢ï¼åºèªå·±åæé®é¢äº§ççåå ï¼éè¿åæ缩å°é®é¢å¯è½äº§ççèå´ï¼æç»æ¾å°é®é¢çæå¨ãæéè¦çå°±æ¯è¦ä¿æä¸ç§è§£å³é®é¢çä¿¡å¿ï¼é¢å¯¹å°é¾å¦ä½å¤çï¼å¾å¾è½å¤å³å®æç»ç³»ç»æ¯å¦è½å¤è°è¯æåãç¶åï¼å¦ä¹ è å¯ä»¥å¼å§ä»ç»å¦ä¹ å¤çå¨ååå¨å¨çè¿æ¥ï¼åå¨ç©ºé´çé ç½®ï¼åç§å¤æ©å¨ä»¶ï¼å¦ç½å¡ï¼AC声å¡çå·¥ä½åçå使ç¨æ¹æ³ãåµå ¥å¼ç³»ç»ç¡¬ä»¶è®¾è®¡ä¸å¾å¾éè¦ä½¿ç¨å¯ç¼ç¨å¨ä»¶ï¼å¦ä¹ è è¿éè¦ä¸å®çæ¶é´æ¥å¦ä¹ 使ç¨å¸¸ç¨çå¯ç¼ç¨å¨ä»¶ï¼CP L D / F P G Aï¼ï¼å¸¸ç¨çæXilinxåAlteraå ¬å¸ç产åãè¿è¡ç³»ç»ç¡¬ä»¶åçå¾è®¾è®¡ï¼å°±éè¦ä½¿ç¨åçå¾è®¾è®¡çEDAå·¥å ·ï¼å¸¸ç¨çEDA åçå¾è®¾è®¡å·¥å ·ä¸»è¦å æ¬Cadenceå ¬å¸çCaptureï¼Protelå ¬å¸çProtelSEçãæ¥ä¸æ¥å°±å¯ä»¥åç §è¯ä¼°æ¿ççµè·¯å¾ï¼æ ¹æ®ç³»ç»ç设计è¦æ±ï¼å¼å§è¿è¡åçå¾çç»å¶äºãå¨åçå¾ç»å¶è¿ç¨ä¸ï¼ä¸å®è¦ææ¸ è¯ä¼°æ¿çµè·¯è¿æ¥çåå ï¼å¯¹äºä¸æ¶æ²¡æææ¸ æ¥çé®é¢åä¸å¯èæ··è¿å ³ãä¾å¦ï¼æäºå¤çå¨çå°å线æ¯ä»¥åèä½åä½çï¼èå¦ä¸äºå¤çå¨çå°å线åæ¯ä»¥ä¸¤ä¸ªåè为åä½çï¼å½è¿æ¥ä½çåå¨å¨çæ¶åï¼åä¸å¯æ³å½ç¶çæå¤çå¨çA 0 ç´æ¥è¿æ¥å°åå¨å¨çA 0 ä¸é¢ãå¦å¤ï¼å¦çè¿åºå ·æä¸å®çPCBæ¿å¾ç»å¶è½åï¼å 为å¨ç°é¶æ®µï¼å¾å¤å ¬å¸è¿ä¸è½å®å ¨æåçå¾ç设计工ä½åPCB çç»å¶å·¥ä½åå¼ï¼å¾å¾è¦æ±ç¡¬ä»¶è®¾è®¡äººåæ¢è½è¿è¡åçå¾è®¾è®¡åè½è¿è¡æ¿å¾è®¾è®¡ãå³ä½¿æ¯PCB设计ååçå¾è®¾è®¡åå¼çå ¬å¸ï¼ä¹éè¦åçå¾è®¾è®¡è è½ä¸ºPCB ç设计è 对äºä¸åçä¿¡å·æåºå¸æ¿è¦æ±ã
3.驱å¨ç¨åºåæä½ç³»ç»ç§»æ¤å·¥ä½
ç°ä»£åµå ¥å¼ç³»ç»çå¼ååä¼ ç»8ä½åçæºç³»ç»çå¼åç¸æ¯ï¼ä¸ä¸ªæ¾èçåºå«å°±æ¯åµå ¥å¼æä½ç³»ç»ç广æ³ä½¿ç¨ãå¨æ¿å°çæ¥å®æ¯ççµè·¯æ¿ï¼å¹¶è¿è¡åºæ¬çæµè¯åï¼å°±è¦è¿è¡é©±å¨ç¨åºåæä½ç³»ç»ç移æ¤å·¥ä½äºãé¦å è¦è¿è¡çBootloaderçç¼åå移æ¤å·¥ä½ãBootloaderç¸å½äºPCç³»ç»çBIOSã对äºæäºåµå ¥å¼æä½ç³»ç»ï¼å¦uc/OSII没æbootloaderåæ ·å¯ä»¥å¼åè°è¯ãä½æ¯å¯¹äºWindowsCEååµå ¥å¼linuxç³»ç»èè¨Bootloaderå°±æ¯å¿ é¡»çäºãæ¬æ以Windows CE 为ä¾ï¼åä¸ä¸ªç®è¦ç说æã
Windows CE ç³»ç»ç移æ¤å·¥ä½ä¸»è¦å°±æ¯BSPï¼æ¿çº§æ¯æå ï¼çå¼åè¿ç¨ãBSPå°å ·ä½ç硬件差å¼åæä½ç³»ç»çæ ¸å¿é离å¼æ¥ï¼ä¸»è¦ç±Bootloaer ï¼OALï¼OEMAbstraction Layerï¼å设å¤é©±å¨ç¨åºä¸é¨åç»æãWindowsCEç³»ç»ä¸Bootloaderå«åEbootãEboot被åå ¥ç³»ç»çå¼å¯¼Flashãç³»ç»å¯å¨æ¶è¿è¡Ebootï¼å®æéè¿ç½å¡å°è°è¯PC æºä¸WindowsCE æä½ç³»ç»æ åä¸è½½å°ç®æ ç³»ç»çSDRAMä¸å¹¶å¼å§æ§è¡çåè½ã对äºä¸ä¸ªç³»ç»ç§»æ¤äººåï¼é¦å éè¦é 读ææ¡£ï¼äºè§£WindowsCEç³»ç»BootloaderåBSPçåºæ¬æ¦å¿µåå¼åè¿ç¨ãï¼åµï¼è¿è¦åè¿å·¥ä½åï¼æè¿æ²¡æ³å°ï¼åå¦^_^ï¼ï¼Windows CEçå¼åç³»ç»Platform Builderæä¾äºè¯¦ç»çææ¡£åä¾ç¨ï¼å¼å人åéè¦ä»ç»çé 读ææ¡£åä¾ç¨ãææ¸ æ¥å个å½æ°ä¹é´çè°ç¨å ³ç³»ãå¨å¼åè¿ç¨ä¸çä¸ä¸ªéè¦çæ¥éª¤å°±æ¯æé串å£ï¼ä½¿å¾ç®æ æ¿è½å¤éè¿PCæºä¸²å£åè°è¯PC æºåéæ°æ®ãç±äºARMç³»ç»ç仿çå¨æ¯è¾æè´µï¼èä¸æä½ç³»ç»çè°è¯å¾å¾ä¸ä½¿ç¨JTAGè°è¯å¨è¿è¡åæ¥è°è¯ãæ以è½ä»ä¸²å£è§å¯ç¨åºçæ§è¡è¿ç¨åç»æ对äºè°è¯å°±æ¾å¾ååéè¦äºã串å£æéä¹åä¸ä¸ªæ¯è¾æ£æçé®é¢å°±æ¯ç½å¡è¯ççè°è¯ãååæ¥è§¦åµå ¥å¼ç³»ç»å¼åç人å¾å¾æ²¡æç´æ¥å¨å¯åå¨çº§ä¸ä½¿ç¨ç½å¡è¯ççç»éªï¼èç½å¡è¯çç说æä¸è¬é½è¾ä¸ºç®çï¼è¿å°±è¦æ±å¼åè å¦ä¹ ä¸äºä»¥å¤ªç½çåºç¡ç¥è¯ï¼å¯¹ä»¥å¤ªç½çMAC å±æä¸ä¸ªåºæ¬ç认è¯ãå¦å¤ï¼åç§ç½ç»è°è¯ï¼æå ï¼å·¥å ·ç使ç¨ä¹è½å¤§å¤§éä½ç³»ç»è°è¯çé¾åº¦ãç³»ç»çOALéè¦æ ¹æ®å ·ä½ç¡¬ä»¶çä¸åååºç¸åºçä¿®æ¹ï¼è¿ä¸ªé¨åå¯åç §ææ¡£è¿è¡ï¼å¨è°è¯è¿ç¨ä¸æ ¹æ®ä¸²å£çä¿¡æ¯åæåºéçå°æ¹ãè¦å ååæ¥è·¨æ件å符串æç´¢å·¥å ·çåè½ï¼å¨æµ©å¦çæµ·çæºæ件ä¸æ¾å°åºéçä½ç½®ãå½ç¶ï¼éçå¼åè 对系ç»æ件ç®å½ç»æççæåäºè§£ï¼é误å®ä½çé度ä¼ä¸æå å¿«ãWindowsCE ç驱å¨ç¨åºç¸å¯¹èè¨æ¯æ¯è¾å¥½åçã
4.åºç¨ç¨åºçå¼å
åµå ¥å¼ç³»ç»çåºç¨ç¨åºå¼ååå¨PC æºä¸å¼ååºç¨ç¨åºçåºå«ä¸æ¯å¾å¤§ã对äºWindows CEç³»ç»èè¨ï¼Microsoftå·²ç»æä¾äºè¾ä¸ºå®åçå¼åå·¥å ·ãç¹å«æ¯.NET Compact workç使ç¨ï¼ä½¿å¾åºäºWindows CE.NETCompactworkçåºç¨ç¨åºæäºè·¨å¹³å°æ§ãå¼å人åå¯ä»¥ä½¿ç¨Windows çC# è¯è¨ç´æ¥å¨PC ä¸è¿è¡http://CE.NETåºç¨ç¨åºçå¼åå模æè°è¯ï¼ä¹å¯å°ç®æ ç³»ç»åPC æºç¸è¿ï¼è¿è¡èæºè°è¯ãç°å¨æå¾å¤ç³»ç»æ¯æJ2ME(JAVAçåµå ¥å¼ç³»ç»çæ¬) ï¼è¿ä½¿å¾JAVA å¨åµå ¥å¼ç³»ç»åºç¨å¼åä¸å æè¾å¤§çä¼å¿ãå¦å¤ï¼ä½ä¸ºä¸ä¸çåµå ¥å¼ç³»ç»è½¯ä»¶å¼å人åï¼è¿éè¦å åäºè§£é¢å对象ææ¯å设计模å¼çæ¹é¢çç¥è¯ï¼å½ç¶ä½ä¸ºåå¦è å¯ä»¥å ä¸æ·±å ¥ç 究è¿æ¹é¢çå 容ã
常ç¨åµå ¥å¼ç³»ç»å¤çå¨åæä½ç³»ç»
å¤çå¨
常ç¨åµå ¥å¼ç³»ç»å¤çå¨ä¸»è¦å æ¬ARM å¤çå¨ï¼Power PC å¤çå¨ï¼åºäºMIPS å æ ¸çåµå ¥å¼å¤çå¨ï¼è½¯æ ¸å¤çå¨ï¼å¦Altera çNiosåXilinxçMicroBlazeçï¼åDSPï¼æ°åä¿¡å·å¤çå¨ï¼çã
ARM å¤çå¨ç主è¦ç¹ç¹æ¯å ·æè¾é«çæ§è½åèæ¯ãARMå¤çå¨è¢«å¹¿æ³çåºç¨å¨ææºï¼PDAçé¢åï¼å ¶ä¸è¾ä¸ºèåçæIntel å ¬å¸ç产çåºäºARM å æ ¸çXScaleç³»åå¤çå¨ãç±äºææå ¬å¸ç产çåºäºARMå æ ¸çå¤çå¨å ·æç¸åçç¼ç¨æ¨¡åï¼å¨ææåçµæ± ä¾çµçç³»ç»ä¸ï¼åºäºARMçåµå ¥å¼ç³»ç»å¤çå¨å¾å¾è¢«é¦å éç¨ãPowerPCï¼ç®ç§°PPCï¼å¤çå¨å ·æè¾å¼ºçè¿ç®æ§è½åæ°æ®ååè½åï¼å¨ç½ç»åæ°æ®éä¿¡é¢ååºäºPPCçåµå ¥å¼ç³»ç»å¤çå¨æç广æ³çåºç¨ãå ¶ä¸Motorolaå ¬å¸ç产çMPC/MPC被大éå°åºç¨å¨åµå ¥å¼ç½ç»äº§åä¸ãMIPS å¤çå¨çç¹ç¹è¡¨ç°å¨åå强大çå¤çè½åä¸ãä½ä¸ºé«æ§è½å¤çå¨ï¼MIPSå¤çå¨éç¨äºç½ç»ãä¼ä¸åé«çº§æ¶è´¹ç±»çµååºç¨ï¼ç¹å«æ¯å¨æºé¡¶çç³»ç»ä¸ï¼MIPSå¤çå¨å ·æè¾é«çå¸åºå æçãéçå¯ç¼ç¨å¨ä»¶çè§æ¨¡ä¸ææ©å¤§ï¼ä½¿å¾äººä»¬è½å¤æ ¹æ®éè¦å®å¶å¤çå¨ï¼å¹¶æ¹ä¾¿çå°é对æç§ç¹æ®åºç¨å®å¶çå¤çå¨æ¹ä¾¿çå¨å¯ç¼ç¨å¨ä»¶å é¨å®ç°ãé¤äºå¤çå¨å¤ï¼è®¡ç®æºç³»ç»è¿éè¦è®¸å¤å ¶ä»ææé¨åï¼æ¯å¦å¨å¤ééåªä½æ°æ®å¤çç³»ç»ä¸ï¼ç»å¸¸éè¦ä½¿ç¨å¯ç¼ç¨å¨ä»¶æ¥å®ç°é«éçæ°æ®å¤çåè½ï¼ä½¿ç¨è½¯æ ¸DSPæ¥å®ç°å¤æçæ°åä¿¡å·å¤çç®æ³ï¼åæ¶è¿éè¦å¤çå¨è¿è¡äºå¡å¤çï¼è½¯æ ¸å¤çå¨å°å¯ç¼ç¨å¨ä»¶ï¼DSPåå¤çå¨ç»åå¨ä¸èµ·ï¼ä¸ºç³»ç»çº§è®¾è®¡æä¾äºæ大ççµæ´»æ§ãDSPï¼æ°åä¿¡å·å¤çå¨ï¼æå«äºéç¨å¤çå¨ï¼éä¸è¡¨ç°å¨å ¶å¼ºå¤§çæ°åä¿¡å·å¤çè½åä¸ãå¨DSP å é¨æä¾äºç¡¬ä»¶ä¹ç´¯å å¨ï¼å¤çå¨å¨è®¾è®¡ä¸å¯¹äºç¹æ®ç寻åæ¹å¼åäºä¼åï¼ä¸äºDSP è¿æ¯æé¶è循ç¯ï¼Zero OverheadLoopï¼ã为äºæ¹ä¾¿åµå ¥å¼ç³»ç»è®¾è®¡ï¼ä¸»æµDSP ä¸è¬ä¹é½æä¾äºä¸°å¯çå¤è®¾ãç¹å«å¼å¾ä¸æçæ¯ADI å ¬å¸çBlackfin ç³»åDSPåTI å ¬å¸çDMXç³»åDSPï¼ä¸¤ç§å¤çå¨é½æä¾äºä¸°å¯ççä¸å¤è®¾ï¼é常éç¨åµå ¥å¼ç³»ç»åºç¨ã
æä½ç³»ç»
http://WindowCE.NET/5.0
ä½ä¸ºMicrosoftç产åï¼WindowCE.NE/5.0æä¾äºåè½å®å¤çå¹³å°å¼åå·¥å ·Platform Builderååºç¨å¼åå·¥å ·Embedded Visual C++/Visual Studio ãWindowsCEç±äºæ¥æ广大使ç¨è æçæçwindowsçé¢ï¼ç³»ç»æä¾äºä¼å¤é©±å¨ç¨åºï¼å¹¶ä¸æå®å¤çææ¡£æ¯æã对äºåºç¨å¼åèè¨ï¼çæWindowsç³»ç»å¼åçç¨åºåå¾å®¹æ转å°WindowsCE åºç¨ç¨åºçå¼åãWindows CEå°ä¼æ¯ä¸ä¸ªé常æåéçåµå ¥å¼æä½ç³»ç»ã
VxWorks
VxWorksæ¯ç±Windriverï¼é£æ²³ï¼å ¬å¸åºåçåµå ¥å¼å®æ¶æä½ç³»ç»ï¼å¤§åé¼é¼çç«æç»é车就æ¯ä½¿ç¨äºVxWorksãWindriver为VxWorksæä¾äºéæå¼åç¯å¢tornadoã
Ï C/OSII
Ï C/OSæ¯ç±Jean Labrosse设计ç¼åçå¼æ¾æºä»£ç çåµå ¥å¼å®æ¶æä½ç³»ç»ï¼ç¬è ææ©æ¥è§¦çåµå ¥å¼æä½ç³»ç»å°±æ¯å®ãé è¯»å¹¶æ·±å ¥çè§£Ï C/OSçæºä»£ç 对äºç解å®æ¶ç³»ç»æ¯å¤§æ裨ççã
ARM Linux
ARM linuxæ¯ç±Russell Kingåå ¶ä»å¼åè å¼å移æ¤çç¨äºARM å¤çå¨çlinuxæä½ç³»ç»ãARM Linuxç³»ç»å¨GNU GPLä¸åå¸ã
Ï CLinux
Ï Clinux æ¯éç¨äºæ²¡æMMU çåµå ¥å¼å¤ççLinuxOS çæ¬ãÏ Clinux åæ ·å¨GNU GPLåå¸ã
åµå ¥å¼ç³»ç»å¼åè¿ç¨ä¸ç常è§é®é¢å解å³æ¹æ³
Bootloaderå¦ä½åå ¥Flash ï¼
åå¦è ä¸è¬é½ä¼éå°å¦ä½å°ç¨åºåå ¥å¤çå¨çé®é¢ã对äºä¸åçå¤çå¨ï¼å¯ä»¥éç¨ä¸åçæ¹æ³ãä¾å¦IntelçXscaleå¤çå¨å¯ä»¥ä½¿ç¨Intelå ¬å¸æä¾çJFlashå·¥å ·ç§åã对äºå ·æJTAGè°è¯å·¥å ·è½¯ä»¶çå¤çå¨ï¼å¯ä»¥ä½¿ç¨å¦ä¸æè·¯ï¼ç¼åä¸æ®µç¨åºï¼è¿æ®µç¨åºè½å°ä½äºSDRAM/SRAM åºå®å°åä¸çæ°æ®åå ¥Flashä¸ãç§åæ¶ï¼é¦å ï¼å°è¿æ®µè½¯ä»¶ä¸è½½å°SDRAM ä¸ï¼ç¶åéè¿è°è¯è½¯ä»¶å°è¦åå ¥Flashçæ°æ®ä¸è½½å°SDRAM/SRAMçæ个åºå®å°åå¼å§çç¼å²åºï¼ç¶åéè¿è°è¯å¨å¼å§æ§è¡ç¨åºï¼å°æ°æ®åå ¥Flashãé¤æ¤ä»¥å¤ï¼ç½ç»ä¸è¿æä¾äºå¾å¤ä¸ç¨çåFlashçå·¥å ·ï¼å¼åè å¯ä»¥æ ¹æ®èªå·±çéè¦éç¨ã(ç°å¨æç½äºæå¨å¦çé£ä¸ªBF为ä»ä¹å ä¸ä¸ªflashProgramer.dxeå äº)
ä»ä¹æ¯arm-elf-gccï¼
arm-elf-gccæ¯ä¸ä¸ªäº¤åCè¯è¨ç¼è¯å¨ãæ们å¨PCå¹³å°ä¸ç¼è¯ç¨åºï¼ç¼è¯å¨è¿è¡çå¤çå¨åçæç代ç å°è¦è¿è¡çå¤çå¨ç¸åãä½æ¯ï¼å¨PC
æºä¸ç¼è¯ARMç¨åºæ¶ï¼ç¼è¯å¨è¿è¡çå¤çå¨åçæç代ç è¿è¡çå¤çå¨ä¸åï¼è¿ç§ç¼è¯å¨å«å交åç¼è¯å¨ãå ¶ä¸çelfæ¯æç¼è¯å¨çæçç®æ æä»¶æ ¼å¼ã(å ¶å®æ们平æ¶ç¨çåçæºç¼è¯å¨å¦GCCâAVRçå·²æ¯äº¤åç¼è¯å¨äºï¼æå°ç°å¨æå¼æ¸ æ¥ä»ä¹æ¯äº¤åç¼è¯å¨)
èµ°äºåªæ¡ç¼è¯è·¯å¾ï¼
ç³»ç»ç¨åºå驱å¨ç¨åºå¾å¾å å«å¾å¤çç¼è¯é项ï¼å¾å¤é项é½æ¯å¨ç¼è¯æ¶éè¿å½ä»¤è¡å®ä¹çï¼å¦ææ³ç¥éç¼è¯çæ¯é£ä¸æ®µç¨åºå¯ä»¥ä½¿ç¨å¦ä¸çæ¹æ³ï¼
#ifdef PLAT_AAA
#error Code for Platform AAA
#else
#error Code NOT for Platform AAA
#endif
è¿æ ·å¨ç¼è¯çæ¶åå°±ç¥éï¼ç¼è¯çæ¯åªä¸æ¡è·¯ç»äºã对äºæ¯æ#pragma message( âI am hereâ)çç¼è¯å¨ä¹å¯ä½¿ç¨#pragma messageé¢ç¼è¯æ令ã
ææä¹ç¥éé£æ®µä»£ç å¨é£ä¸ªæ件ä¸ï¼
ç³»ç»ç¼ç¨ä¸ç»å¸¸éè¦ä½¿ç¨å¨å¤ä¸ªæ件ä¸æç´¢å符串ï¼å¨windowså¹³å°ä¸å¯ä»¥ä½¿ç¨å¹³å°æä¾çå¤æ件å符串æç´¢å·¥å ·ãå¨linuxå¹³å°ä¸ï¼å¯ä»¥ä½¿ç¨grepæ¥æç´¢å符串ãGrepçæç´¢åè½åå强大ï¼æ¯ææ£å表达å¼æç´¢ï¼çç»ä½¿ç¨grep对äºé 读系ç»å驱å¨ç¨åºä»£ç æ¯å¾æ帮å©çã
ç³»ç»æ¯ä»é£ä¸ªæ件å¼å§è¿è¡çï¼
对äºWindows CEç³»ç»ï¼ä¸è¬ä»WINCE\PLATFORM\YourPlatform\KERNEL\HALç®å½çæ个æ±ç¼æ件ä¸ã对äºLinuxç³»ç»çæ¬ä¸åä¼åå¨ä¸å®å·®å¼ï¼ä»¥armå¤çå¨ä¸ºä¾ï¼ä¸è¬ä¼å¨linux2.4.x\arch\arm\kernelçhead-armv.Sä¸ã
ç¨åºæ§è¡å°äºé£éï¼
å¯ä»¥å¨ç¨åºä¸æå ¥å¦ä¸ä»£ç æ¥å®ç°
printf( âI am here %s, %d\nâ,__FILE__,__LINE__);
代ç å°æåºprintfè¯å¥æå¨çæ件ååè¡å·ã
æ¨è书ç®
Jean J.Labrosse MicroC/OS-II The Real-TimeKernel,Second Editionè¿æ¬ä¹¦æ¯ç¬è æ¥è§¦åµå ¥å¼å®æ¶ç³»ç»çå ¥é¨ä¹¦ï¼å¨å½å è½å¤ä¹°å°ä¸æçãè¿æ¬ä¹¦è¾ä¸ºæ¸ æ¥å°è®²è¿°äºå®æ¶ç³»ç»çæ¦å¿µï¼å个ç»æé¨åçå·¥ä½åçï¼ç¹å«æ¯å ¬å¼äºå®æ¶ç³»ç»å æ ¸çæºä»£ç ï¼ä»ç»ç 究å®ä¼åçåªæµ ãæ个å°çæ示ï¼å¯¹äºåå¦è ï¼è¿æ¬ä¹¦å¯ä»¥å ä¸ç第ä¸ç« ï¼ç´æ¥ä»ç¬¬äºç« çèµ·ã
Abraham Silberschatz, Peter Baer Galvin,GregGagne Operating System Conceptsç¬è å¨æå¦è¿ç¨ä¸åç°ï¼æ 论æ¯è®¡ç®æºè¿æ¯çµåå·¥ç¨ä¸ä¸é½æå¾å¤å¦ç对äºæä½ç³»ç»çåºæ¬æ¦å¿µé½æ²¡æææ¸ ï¼å¾å°æå¦çæå®æ´çç³»ç»ç¼ç¨ç»éªãOperating System Conceptsè¿æ¬ä¹¦å¯¹æä½ç³»ç»çæ¦å¿µè®²è¿°åªè½ç¨ç»å ¸æ¥å½¢å®¹ã对äºåµå ¥å¼ç³»ç»æå ´è¶£æ·±å ¥ç 究çåå¦ï¼é¦å è¦æåºç¡æ好ï¼è¿æ¬ä¹¦å°±æäºå¿ 读ä¹ç©äºã
Andrew S. Tanenbaum Computer Networks æèµ·Andrew S. Tanenbaum å¦ä¹ 计ç®æºçåå¦ä¸å®é½ç¥éOPERATINGSYSTEMs:Designand
Implementationè¿æ¬ä¹¦ï¼ç¬è 对äºTanenbaumè¿æ ·çææç±è¡·ä½©æãç½ç»åè®®æ æ¯åµå ¥å¼ç³»ç»ä¸çæ¯æ±æ§ç»æé¨åãæ¿æè´åäºç½ç»æ·±å±ææ¯ç 究çåå¦ï¼è¿æ¬ä¹¦å°ä¸ºä½ 们建ç«ä¸ä¸ªåå®çç½ç»åºç¡ã
Karim Yaghmour Building Embedded Linux Systemsæ¬ä¹¦è¯¦å°½çä»ç»äºåµå ¥å¼linuxç³»ç»çç»æï¼åºæ¬æ¦å¿µåå¦ä½å»å»ºç«å个é¨åãå ¨ä¹¦ç¯å¹ è¾å°ï¼å¯è°çå°ç²¾æãå³å¯ä»¥ä½ä¸ºåµå ¥å¼linuxç³»ç»çå ¥é¨è¯»ç©ï¼åæ¯å¼åè¿ç¨å个é¨åçæåã
Advanced RISC Machines Ltd (ARM) ARM7 TDMI DataSheet Advanced RISC Machines Ltd (ARM) ARMTTechnical Reference Manualå¦ä¹ åµå ¥å¼ç³»ç»ä¸äºè§£å½ååºç¨æ广æ³çåµå ¥å¼å¤çå¨æä¹è¡ï¼ARM7 TDMI ç data sheetæ¯å¦ä¹ ARMç¼ç¨æ¨¡åï¼æ令éç好ä¸è¥¿ãå¨åµå ¥å¼ç³»ç»ä¸ï¼MMUï¼å å管çåå ï¼æ¯å¾éè¦çé¨åï¼åæ¯è¾é¾ç解åææ¡çé¨åãARMTTechnical Reference Manual æ£å¥½å¯ä»¥å¸®ä½ 讲解è¿æ¹é¢çå 容ã
Perter Van Der LinDen Expert C Programmingåµå ¥å¼ç³»ç»çº§ç¼ç¨æ常ç¨çè¯è¨è¿æ¯C ãå¾å¤åå¦é½èªè®¤ä¸ºèªå·±çCè¯è¨å¦çå¾å¥½ï¼é£å¥½ï¼å°±ççè¿æ¬ä¹¦å§ï¼æ¾æ¾èªå·±åExpertså·®è·ã
åµå ¥å¼å¼åä¸æ¡é¢å¼åæ¢æä¸åï¼åæé常大çèç³»ï¼èä¸åå注éå®é æä½è½åãææ¡é¢å¼åç人å¨ä¸å¼å§æ¥è§¦åµå ¥å¼çæ¶åï¼é常转æ¢ä¸è¿æ¥ï¼è¿ä¸»è¦ä½ç°å¨å®ä½ä¸ãå¦æä¸æ说ï¼ä½ æ¯è°ï¼ä½ è¦åä»ä¹ï¼æ对硬件çäºè§£ä» éäºç¼ç¨é¢åï¼PCB设计ä¸çªä¸éï¼ä½å¹¶ä¸è½è¯´ä½ ä¸æ硬件就ä¸è½ä»äºåµå ¥å¼å¼åãä¸ä¸ªç³»ç»çå¼å设计æ¹æ¹é¢é¢ï¼å¨èªå·±æå ´è¶£åçæçé¢åååºèªå·±çè´¡ç®ææ¯æ主è¦çã
1ã硬件设计: éè¦æ硬件设计çç»éªï¼å¯¹åç§åµå ¥å¼å¨ä»¶æå¾å¥½çäºè§£ã
2ãç³»ç»ç§»æ¤ï¼éè¦æ±ç¼ç»éªï¼æä½ç³»ç»åç以ååºå±é©±å¨çäºè§£
3ãåºç¨ç¨åºï¼éè¦æ¡é¢ç¼ç¨ç»éª