1.VxWorks下设备驱动程序及BSP开发指南内容简介
2.å¦ä½å®å¶VxWorksï¼
VxWorks下设备驱动程序及BSP开发指南内容简介
本书是授授权关于VxWorks操作系统下的设备驱动程序及BSP(Board Support Package)开发的指南。其语言流畅,权源结构清晰,价格内容既全面又深入浅出,授授权是权源编者结合多年实际开发经验,通过示例源代码和文字说明编写的价格密码控件源码。此书旨在为以VxWorks为基础的授授权嵌入式系统开发、设计人员提供实用指导,权源同时也适合其他相关技术人员及爱好者参考。价格 本书不仅详细介绍了VxWorks操作系统的授授权工作原理和架构,还深入探讨了如何在该系统下开发设备驱动程序。权源它涵盖了从基本概念、价格原理、授授权php源码文字修改设计到实现的权源全过程,帮助读者理解如何与硬件进行交互,价格以及如何优化驱动程序以提高系统的性能和稳定性。同时,书中还提供了丰富的实际案例,使读者能够通过实践加深理解,linux 源码静态编译提高开发技能。 在BSP部分,本书详细阐述了如何根据不同的硬件平台定制和优化BSP,以确保VxWorks在各种硬件环境下的良好运行。它解释了BSP的主要组件,如时钟管理、满江红 源码内存管理、设备管理以及硬件中断处理等,以及如何合理配置这些组件以满足特定硬件平台的需求。 本书还强调了代码的可读性和可维护性,提供了大量的代码示例,并对关键代码段进行了详细的vc源码修改界面注释和解释。这使得读者不仅能够理解代码的逻辑,还能学会如何在实际开发中应用这些知识。 总之,本书是一本深入浅出、实践性强的指南,不仅适合于VxWorks操作系统下的嵌入式系统开发、设计人员,也能够为其他相关技术人员及爱好者提供宝贵的参考和学习资源。扩展资料
本书详细深入介绍了VxWorks下设备驱动程序及BSP的开发等内容。全书共章,主要内容包括:外部设备及设备驱动程序概述、VxWorks下设备及设备驱动程序、VxWorks下设备驱动程序的分析、驱动程序的轮询和中断处理、编写字符设备驱动程序、编写网络设备驱动程序、BSP概述、VxWorks预内核初始化、BSP的配置、BSP开发等内容。å¦ä½å®å¶VxWorksï¼
VxWorksæ¯ç±ç¾å½Wind River å ¬å¸æ¨åºçä¸ç§å¼ºåµå ¥å¼å®æ¶æä½ç³»ç»ï¼RTOSï¼ãå®éç¨å¾®å æ ¸ç»æï¼å ·æé«å¯é æ§ãå®æ¶æ§ãå¯è£åæ§çç¹ç¹ï¼èä¸æ¯æå¤ç§CPUãVxWorksçä¸ä¸ªéè¦ç¹ç¹æ¯å®çå¯ç§»æ¤æ§ï¼åºç¨ç¨åºç¼ç å¨å¾å¤§ç¨åº¦ä¸ä¸ç®æ æ¿ç硬件åç»ææ å ³ãå®æææç¹å®ç硬件åè½é½éæå¨ä¸ä¸ªç§°ä¹ä¸ºæ¿çº§æ¯æå BSPï¼Board Support Packageï¼çåºä¸ã
ç®å为æ¢Wind Riverå ¬å¸æä¾çåºäºæä¸CPU è¯ä¼°æ¿çBSP è¶ è¿ä¸ªï¼å½ç¨æ·å¼åèªå·±ç®æ æ¿çBSPæ¶ï¼æ¯è¾ç®åçæ¹æ³æ¯ä»ææä¾çBSPä¸éä¸ä¸ªææ¥è¿çæ¥ä¿®æ¹ãè¿éæå°çBSPç设计就æ¯æè¿ç§æ¿çº§ç对ä¾èµäºç¡¬ä»¶çæºä»£ç åå¿ è¦çä¿®æ¹ãå¢å æå é¤ï¼ä»¥æ»¡è¶³ç¹å®ç硬件ç¯å¢ã
1 BSPçæ¦å¿µ
BSP(Board Support Package,ââæ¿çº§æ¯æå )æ¯ä»äºåºå±ç¡¬ä»¶åä¸å±è½¯ä»¶ä¹é´çåºå±è½¯ä»¶å¼åå ï¼è¿æºäºåµå ¥å¼æä½ç³»ç»ä¸ç¡¬ä»¶æ å ³ç设计ææ³ãå¦ä»çåç§åµå ¥å¼ç³»ç»,é½éç¨äºåå±ç设计æ¹æ³ãå®å°ç³»ç»ä¸ä¸ç¡¬ä»¶ç´æ¥ç¸å ³çä¸å±è½¯ä»¶ç¬ç«åºæ¥,称ä¹ä¸ºæ¿çº§æ¯æå (BSP)ãè¿éBSPç主è¦åè½ä¸ºå±è½ç¡¬ä»¶ï¼æä¾æä½ç³»ç»ç驱å¨å硬件驱å¨ï¼å ·ä½åè½å æ¬ï¼
(1)ç®æ æ¿ç¡¬ä»¶åå§åï¼ä¸»è¦æ¯CPUçåå§åï¼ä¸ºæ´ä¸ªç³»ç»æä¾åºå±ç¡¬ä»¶æ¯æï¼
(2)为æä½ç³»ç»æä¾è®¾å¤é©±å¨ç¨åºåç³»ç»ä¸ææå¡ç¨åºï¼
(3)å®å¶æä½ç³»ç»çåè½ï¼ä¸ºè½¯ä»¶ç³»ç»æä¾ä¸ä¸ªå®æ¶å¤ä»»å¡çè¿è¡ç¯å¢ï¼
(4)åå§åæä½ç³»ç»ï¼ä¸ºæä½ç³»ç»çæ£å¸¸è¿è¡å好åå¤ï¼æ 线SOCå¼åå¹³å°å S3CB0 ARM7å¼åæ¿å S3C ARM9å¼åæ¿å ATSAM7S ARM7 åçæºå¼åæ¿ä¹çââELITE-Iåçæºå¦ä¹ å¼åç³»ç»å S3C ARM9å¼åæ¿(II) å EPMTC CPLDå¼åæ¿ å
2 BSPæ件ç»æååè½
BSPä¸å æ¬æºä»£ç ã头æ件ãMAKEæ件ãæ´¾çæ件以åäºè¿å¶é©±å¨ç¨åºæ¨¡åãå¨VxWorks ä¸ç¡¬ä»¶é©±å¨ç¨åºå为éç¨æ§åBSPä¸ç¨æ§ä¸¤ç±»ãå¨å¼åBSPæ¶ï¼æ¢è¦å¯¹BSPä¸ç¨ç驱å¨ç¨åºæä¾æ¯æï¼è¿è¦å°éç¨ç设å¤é©±å¨ç¨åºéæå¨ä¸èµ·ãå æ¤ï¼ç¼åç设å¤é©±å¨ç¨åºï¼å¯æ ¹æ®å ·ä½æ åµæ¾å¨BSPä¸çåéä½ç½®ã
BSPæä»¶å¨ VxWorks /target /config /allåVxWorks /target /config / bspnameæ件夹éãå ¶ä¸ï¼allæ件夹éçæ件æ¯ææBSPçéç¨æ件ï¼bspnameæ件夹çæ件æ¯ç¨æ·èªå·±å®å¶çBSPæ件[1]ãç»è¿ç¼è¯ãé¾æ¥ï¼å¹¶å¨makefileådepend.bspnameçæ件çæ§å¶ä¸ï¼åç¨åºæåå°çæéåãBSPçç»æå主è¦æ件åè½å¦ä¸ã
(1)Tornado\target\config\all\ç®å½ä¸çæ件ãå æ¬bootConfig.cï¼bootInit.cï¼usrConfig.cçï¼å®ä»¬æ¯ææBSPå ±äº«çï¼ä¸»è¦æ¯ç¼ºçå®ä¹äºææVxWorksé 置以åBoot Romçåå§åæ§å¶ä»£ç ï¼æ以ä¸æ¯ç¹å«éè¦ä¸è¦æ´æ¹éé¢çä»»ä½æ件ã
(2)Tornado\target\config\bspname\ç®å½ä¸çæ件ãå æ¬makefileï¼depend.bspnameï¼config.hï¼bspname.hï¼romInit.sï¼sysALib.sï¼sysLib.cï¼sysSerial.cçï¼å ¶ä¸config.hä¸å å«ç¹å®CPUæ¿çææå å«æ件åå®ä¹ã
VxWorksæ¯æå¤ç§å¤çå¨å¹³å°ï¼ç¨æ·å¯ä»¥é对ä¸åçç®æ ç³»ç»ï¼éè¿ä¿®æ¹è¿äºæ件æ¥å®æBSPä¸ VxWorkså¨ä¸åå¹³å°ä¸ç移æ¤ã
3 Vxworksæ ååç±»åå ¶å¯å¨è¿ç¨
3.1 VxWorksæ ååå ¶åç±»
VxWorkså¨å¯å¨è¿ç¨ä¸æ¶åå°ä¸¤ä¸ªæ åæ件ï¼bootromæ ååVxWorksæ åãè¿ä¸¤ä¸ªæ åæ件é½è¦ä½¿ç¨BSP代ç ãbootromæ件æ¯ä»ROMå¼å¯¼VxWorksçå¼å¯¼ç®æ 模åï¼ç¨äºå¯¹ç®æ æ¿è¿è¡åå§åï¼å è½½VxWorksæä½ç³»ç»æ åãVxWorks imageå å«VxWorks OSï¼æç»è¿è¡äºç®æ æ¿ä¸ãVxWorksæ åæå 载类åå¯å为ï¼å¯ä¸è½½æ ååå¯å¼å¯¼æ åï¼æè¿è¡æ¹å¼å为å¨ROMä¸åå¨RAMä¸ä¸¤ç§ã
å¯ä¸è½½æ åï¼Loadable Imageï¼ï¼å®å®é å æ¬ä¸¤é¨åï¼ä¸æ¯VxWorksï¼äºæ¯boot ROMï¼ä¸¤é¨åæ¯ç¬ç«å建çãå¯å¼å¯¼æ å(Bootable Image)æ¯å°å¼å¯¼ç¨åºåVxWorksè为ä¸ä½çæ åï¼ä¸è¬ä¸ºæç»äº§åï¼å æ¬ä¸é©»çROMçæ ååé©»çROMçæ å两ç§ç±»å[2]ã
VxWorkså¨ROMä¸è¿è¡ï¼åªè¦æVxWorks imageçdata段å¤å¶å°RAMçRAM-LOW-ADRSï¼texté¨åçå¨ROM并å¨ROMæ§è¡ãå¨ROMä¸è¿è¡VxWorkså¯ä»¥èçRAM空é´ï¼æå©äºåºç¨ç¨åºææ´å¤§ç空é´è¿è¡ï¼ä½æ¯è¿è¡é度ç¸å¯¹è¾æ ¢ãVxWorkså¨RAMä¸è¿è¡ï¼åå ¥ROMä¸çbootæVxWorks imageæ¯å缩çï¼éå 解å并å¤å¶ææçtextædataå°RAMçRAM-LOW-ADRS,å¨RAMä¸è¿è¡ã