0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

學嵌入式開發(fā)入門_學嵌入式開發(fā)需要看哪些書籍

h1654155282.3538 ? 來源:網(wǎng)絡整理 ? 2018-04-04 10:25 ? 次閱讀

現(xiàn)在嵌入式開發(fā)越來越吃香,很多人都想要學習卻不知道要從何下手。本文分析了學習嵌入式軟件開發(fā)需要具備哪些基本知識和技能,開發(fā)學習的基本步驟,并給出了各種參考資料及網(wǎng)站,同時小編還推薦了學習嵌入式開發(fā)的書籍。

學嵌入式開發(fā)入門

一、軟硬件的基本技能

關于ARM+linux,涉及軟硬件兩塊,要求通吃,這種人才比較適合成長為嵌入式系統(tǒng)架構師

1、硬件包括處理器的體系結構及硬件總線接口兩部分

1)處理器的體系結構

需要對微機原理、單片機、處理器等有所了解,基本上搞明白一種處理器如ARM、MIPS、PPC、DSP,學習其他的就很快了

2)硬件總線接口

最底層的,驅動開發(fā)是最常見的工作了。

這需要對各種硬件總線接口等有所了解,如IIS、IIC、UART、SPI、CAN、MDIO、USB、PCI、PCMCIA、SDRAM、FLASH及EEPROM等,設備千差萬別,但基本的連接都是通過這些接口進行的,搞明白了接口剩下的就是具體芯片的事了。

2、軟件主要包括開發(fā)語言及操作系統(tǒng)開發(fā)

1)開發(fā)語言

嵌入式軟開以C語言開發(fā)為主,要求精通指針、結構指針、指針函數(shù)及所有的數(shù)據(jù)類型轉換,對const、static、volatile、packed、aligned等關鍵字有深入的認識。

2)操作系統(tǒng)開發(fā)

如果想搞嵌入式軟件開發(fā)的話,不學點操作系統(tǒng)方面的知識你會發(fā)現(xiàn)沒什么市場?,F(xiàn)在基本上是個平臺都想跑個操作系統(tǒng),控制類的uC/OS-II,eCos,這些都是小型的操作系統(tǒng),學起來簡單,但在求職中市場小。

手機類的,如Windows Mobile、Sybian、PalmOS及Andriod,搞Sybian、PalmOS的人還不多,Windows Mobile和Andriod還是挺火的,也是未來的領導者。

網(wǎng)絡通信類的,如VxWorks、Linux等大型復雜的操作系統(tǒng),也是企業(yè)要求最多的,還有不太知名的OSE,但其在基站設備中占據(jù)了50%的市場份額。

當然還有不帶MMU的,如uClinux、Nucleus等。

個人感覺尤其是Linux是目前求職市場中最火的,主要是由于其開源的優(yōu)勢,很多單位都在往這方面投入以減少成本。

如果以前對操作系統(tǒng)方面了解較少的話,個人建議可以先學學uC/OS-II,簡單易上手,主要是借此學習操作系統(tǒng)的相關知識。

然后主打Linux,要結合開發(fā)板來學,這樣才上手的快。

二、開發(fā)板

廣州優(yōu)龍、華恒等都是比較知名的開發(fā)板廠家,配套的資料比較完善,相應的技術支持也不錯,可以考慮。

三、開發(fā)流程及參考書目

嵌入式開發(fā)需要遵循一個基本的流程,首先是開發(fā)環(huán)境及流程,然后是驅動開發(fā)和應用程序開發(fā),最后就是深入內(nèi)核的海洋,學習設計理念及方法,最高境界就是就是將這些設計思路嫻熟的運用在任意一個應用環(huán)境中,那時候就是神了~~~

1、嵌入式開發(fā)設計流程:

1)ARM嵌入式Linux系統(tǒng)構造與驅動開發(fā)范例

2)嵌入式設計及Linux驅動開發(fā)指南

3)嵌入式Linux應用程序開發(fā)詳解

都屬于Linux開發(fā)設計流程方面的入門書籍,嵌入式開發(fā)的基礎

2、Linux驅動開發(fā):

1)嵌入式系統(tǒng)接口設計與Linux驅動程序開發(fā) 北京航空航天大學出版社 劉淼 強烈推薦; 包括各種硬件總線接口范例,接口開發(fā)必備

2)Linux設備驅動程序《Linux Device Drivers third edition》,Linux驅動開發(fā)必備經(jīng)典,粗讀查詢即可,當然最基本的字符設備驅動和塊設備驅動必須熟練掌握

3、 Linux應用程序開發(fā):

UNIX環(huán)境高級編程

UNIX網(wǎng)絡編程全卷

4、Linux內(nèi)核開發(fā):

內(nèi)核完全注釋,源代碼級的分析,但版本較低

深入理解Linux內(nèi)核Understanding the Linux Kernel,太深了,東西太多,最后看合適

Linux內(nèi)核設計與實現(xiàn)Linux Kernel Development,內(nèi)核整體結構和基本理論知識

5、ARM:

ARM體系結構與編程,杜春蕾

ARM應用系統(tǒng)開發(fā)詳解

四、相關Linux網(wǎng)站

1、各種Linux論壇

http://www.linuxforum.net/forum/ubbthreads.php

http://www.linuxsir.org/bbs/

http://bbs.chinaunix.net/

http://www.linuxeden.com/forum/

http://www.linuxfans.org/bbs/index.php

2、開源網(wǎng)站

http://sourceforge.net/

http://www.denx.de

http://www.pudn.com/

http://download.chinaunix.net/

3、內(nèi)核源代碼學習下載

http://lxr.linux.no/linux+v2.6.19/

http://www.kernel.org/pub/linux/kernel/

學嵌入式開發(fā)需要看哪些書籍_推薦

一、Linux基礎

1、《Linux與Unix Shell 編程指南》

二、C語言基礎

1、《C Primer Plus,5th Edition》【美】Stephen Prata著

2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著

3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)

4、《嵌入式Linux應用程序開發(fā)詳解》

三、Linux內(nèi)核

1、《深入理解Linux內(nèi)核》(第三版)

2、《Linux內(nèi)核源代碼情景分析》毛德操 胡希明著

四、研發(fā)方向

1、《UNIX Network Programming》(UNP)

2、《TCP/IP詳解》

3、《Linux內(nèi)核編程》

4、《Linux設備驅動開發(fā)》(LDD)

5、《Linux高級程序設計》 楊宗德著

五、硬件基礎

1、《ARM體系結構與編程》杜春雷著

2、S3C2410 Datasheet

六、英語基礎

1、《計算機與通信專業(yè)英語》

七、系統(tǒng)教程

1、《嵌入式系統(tǒng)――體系結構、編程與設計》

2、《嵌入式系統(tǒng)――采用公開源代碼和StrongARM/Xscale處理器》毛德操 胡希明著

3、《Building Embedded Linux Systems》

4、《嵌入式ARM系統(tǒng)原理與實例開發(fā)》 楊宗德著

八、理論基礎

1、《算法導論》

2、《數(shù)據(jù)結構(C語言版)》

3、《計算機組織與體系結構?性能分析》

4、《深入理解計算機系統(tǒng)》【美】Randal E. Bryant David O‘’Hallaron著

5、《操作系統(tǒng):精髓與設計原理》

6、《編譯原理》

7、《數(shù)據(jù)通信與計算機網(wǎng)絡》

8、《數(shù)據(jù)壓縮原理與應用》

九、C語言書籍推薦

1、The C programming language 《C程序設計語言》

2、Pointers on C 《C和指針》

3、C traps and pitfalls 《C陷阱與缺陷》

4、Expert C Lanuage 《專家C編程》

5、Writing Clean Code -----Microsoft Techiniques for Developing Bug-free C Programs

《編程精粹--Microsoft 編寫優(yōu)質(zhì)無錯C程序秘訣》

6、Programming Embedded Systems in C and C++ 《嵌入式系統(tǒng)編程》

7、《C語言嵌入式系統(tǒng)編程修煉》

8、《高質(zhì)量C++/C編程指南》林銳

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
收藏 10人收藏
  • 米斯T1
  • Uybz1
  • 智能20501

評論

相關推薦

嵌入式開發(fā)什么內(nèi)容 嵌入式開發(fā)學習路線介紹

,學習周期較為漫長。筆者更建議想要從事嵌入式開發(fā)技術的讀者可以選擇線上的學習平臺,學習周期較短,視頻教程交互性較強,沖淡了枯燥乏味的自學生涯。當然,具體決定還是要看讀者本身,創(chuàng)客學院支持免費試聽成長課程,對于嵌入式開發(fā)零基礎或是
發(fā)表于 03-01 10:13

嵌入式開發(fā)什么內(nèi)容 嵌入式開發(fā)學習路線介紹

較為漫長。筆者更建議想要從事嵌入式開發(fā)技術的讀者可以選擇線上的學習平臺,學習周期較短,視頻教程交互性較強,沖淡了枯燥乏味的自學生涯。當然,具體決定還是要看讀者本身,創(chuàng)客學院支持免費試聽成長課程,對于嵌入式開發(fā)零基礎或是
發(fā)表于 06-30 10:07

嵌入式開發(fā)什么內(nèi)容 嵌入式開發(fā)學習路線介紹

較為漫長。筆者更建議想要從事嵌入式開發(fā)技術的讀者可以選擇線上的學習平臺,學習周期較短,視頻教程交互性較強,沖淡了枯燥乏味的自學生涯。當然,具體決定還是要看讀者本身,創(chuàng)客學院支持免費試聽成長課程,對于嵌入式開發(fā)零基礎或是
發(fā)表于 07-27 09:49

嵌入式開發(fā)什么?

。  2.了解C語言,C語言是嵌入式開發(fā)中最重要的編程語言,對著部分內(nèi)容不僅要會寫程序,還要看得懂他人寫的程序?! ?.學會shell編程,shell幾乎可以作為一個入門語言來學習,最基本的是能夠看得懂
發(fā)表于 09-06 16:21

嵌入式開發(fā)什么

、大咖篇。入門嵌入式工程師  此階段主要是前期的入門過程,主要針對入行沒多久的新人。其實成功沒有捷徑,所以打好基礎才是關鍵。嵌入式開發(fā)
發(fā)表于 01-18 06:36

基于ARM的嵌入式開發(fā)

基于ARM的嵌入式開發(fā):華清遠見/孫天澤基于ARM的嵌入式開發(fā)內(nèi)容有:ARM簡介,基于ARM的嵌入式產(chǎn)品,ARM架構,基于ARM的嵌入式開發(fā)。
發(fā)表于 10-04 08:49 ?83次下載

嵌入式開發(fā)

嵌入式開發(fā)就是指在嵌入式操作系統(tǒng)下進行開發(fā),嵌入式Linux是以Linux為基礎的嵌入式作業(yè)系統(tǒng)。這里提供了
發(fā)表于 12-20 13:21
<b class='flag-5'>嵌入式開發(fā)</b>

什么是嵌入式開發(fā)板_嵌入式用什么開發(fā)

本文首先介紹了嵌入式開發(fā)板的功能作用,其次闡述了嵌入式用什么開發(fā)板,分別推薦了fs4412開發(fā)板、mini2440
發(fā)表于 05-18 11:14 ?7371次閱讀

嵌入式開發(fā)什么嵌入式開發(fā)的一些入門教材推薦

本文檔的主要內(nèi)容詳細介紹的是嵌入式開發(fā)什么嵌入式開發(fā)的一些入門教材推薦資料免費下載教材包括了:ARM嵌入式項目
發(fā)表于 01-10 14:46 ?27次下載
<b class='flag-5'>嵌入式開發(fā)</b>要<b class='flag-5'>學</b>什么<b class='flag-5'>嵌入式開發(fā)</b>的一些<b class='flag-5'>入門</b>教材推薦

嵌入式開發(fā)的產(chǎn)品有哪些_嵌入式開發(fā)的流程

本文主要闡述了嵌入式開發(fā)的產(chǎn)品,其次介紹了嵌入式開發(fā)的流程。
發(fā)表于 08-31 15:38 ?1.1w次閱讀

嵌入式開發(fā)(一):嵌入式開發(fā)新手入門

本篇文章整理下嵌入式開發(fā)中一些入門的基礎技能,都是根據(jù)以往的工程經(jīng)驗整理,適用于之前沒做過嵌入式開發(fā)的新手。嵌入式開發(fā)流程一般如下,一般是在PC機的Windows系統(tǒng)下安裝Ubuntu
發(fā)表于 10-14 10:58 ?79次下載
<b class='flag-5'>嵌入式開發(fā)</b>(一):<b class='flag-5'>嵌入式開發(fā)</b>新手<b class='flag-5'>入門</b>

嵌入式開發(fā)資料免費分享

嵌入式開發(fā)資料免費分享嵌入式工程師經(jīng)驗分享:如何學習嵌入式開發(fā)截取文檔部分學習嵌入式工程師經(jīng)驗分享的資料分享給大家,文檔上從、嵌入式系統(tǒng)的概
發(fā)表于 10-21 11:07 ?47次下載
<b class='flag-5'>嵌入式開發(fā)</b>資料免費分享

零基礎學習嵌入式開發(fā)難嗎?嵌入式開發(fā)需要學習什么

對于零基礎剛開始學習嵌入式的同學很多都會有這樣的一個想法,嵌入式開發(fā)需要學習什么?如果是電子或計算機專業(yè)的人,相對來說,會比較容易入門;而非電子或計算機專業(yè)的人,應該先從基本的電路和C
發(fā)表于 11-02 20:21 ?13次下載
零基礎學習<b class='flag-5'>嵌入式開發(fā)</b>難嗎?<b class='flag-5'>嵌入式開發(fā)</b><b class='flag-5'>需要</b>學習什么

嵌入式開發(fā)培訓什么?嵌入式開發(fā)板知識講解

,arm11,powerpc,mips,mipsel等,或加上操作系統(tǒng)也屬于嵌入式開發(fā)。嵌入式開發(fā)是一項系統(tǒng)工程,要求 嵌入式系統(tǒng) 廠商不僅要提供
發(fā)表于 11-02 20:21 ?16次下載
<b class='flag-5'>嵌入式開發(fā)</b>培訓<b class='flag-5'>學</b>什么?<b class='flag-5'>嵌入式開發(fā)</b>板知識講解

嵌入式學習培訓能學會嗎?嵌入式開發(fā)培訓都要什么?

嵌入式學習培訓能學會嗎?嵌入式開發(fā)培訓都要什么?掌握Linux常用操作命令,與系統(tǒng)管理;理解嵌入式系統(tǒng)進程管理,文件管理,Linux內(nèi)核;熟悉ARM在不同硬件平臺下的操作系統(tǒng)移植和設
發(fā)表于 11-03 10:06 ?15次下載
<b class='flag-5'>嵌入式</b>學習培訓能學會嗎?<b class='flag-5'>嵌入式開發(fā)</b>培訓都要<b class='flag-5'>學</b>什么?

電子發(fā)燒友

中國電子工程師最喜歡的網(wǎng)站

  • 2931785位工程師會員交流學習
  • 獲取您個性化的科技前沿技術信息
  • 參加活動獲取豐厚的禮品