想學習嵌入式軟件開發(fā),需要學習哪些內容?
時間:2015-11-13 來源:未知
嵌入式是當下流行的開發(fā)模式,早在Android之前,這一領域的發(fā)展勢頭就非常強勁,但我們想想看,是不是Android從本質上來講,也屬于嵌入式開發(fā)的一部分,在近幾年被Android開發(fā)的風頭蓋過,但隨之移動互聯(lián)網(wǎng)時代的高速發(fā)展,嵌入式軟件開發(fā)又開始羽翼豐滿,重新占領舞臺,下面就簡單來了解下嵌入式開發(fā)的一些必備技能吧。
必備技能一、c/c++, 沒有之一。c/c++即能很好的跟底層硬件打交道,程序執(zhí)行效率那也是相當有效率的;A的東西,就一定要學扎實,如果沒有基礎, 那都是花把勢。所以嵌入式學習必需學習c/c++。所謂基礎是前提,有前提的后面的才會有保障。
對于嵌入式來講,主要有兩大發(fā)展方向,一是硬件方向,另外一種則是軟件方向。
從硬件方向來講,需要掌握的內容有:
第一步: PCB設計,拿個芯片解決方案公版改改電路,換換零件,設計自己的電路,做自己的產品。
第二步: SOPC技術,一般為FPGA,CPLD開發(fā),利用VHDL等硬件描述語言做專用芯片開發(fā),寫出自己的邏輯電路,搞個簡單的外圍芯片還是可以的。
第三步:整個arm架構,學學習習arm指令,看看芯片手冊,搞搞bootloader。
第四步:玩玩系統(tǒng)移植,寫寫驅動這個已經(jīng)上一個層次了
第五步: SOC設計,這是硬件設計的核心技術:芯片設計。能做到這步,已經(jīng)不屬于平凡的技術人員。
從軟件方向來講,需要掌握的內容有:除了一些基礎語言開發(fā)之外,我們還必須要掌握一些更多的東西。
1、懂得linux系統(tǒng),并會應用
linux系統(tǒng)博大精深。要想會玩那也是需要下工夫的;久顣粫,簡單腳本能不能寫。
2、掌握相關的調試手段
說道這個也是一個重要指標,嵌入式開發(fā)不同于pc開發(fā),在pc上斷點跟蹤代碼什么的都十分方便,在嵌入設備上就比較麻煩了,串口,文件等這些是我們常用的調試手段,找問題基本上是看打印輸出。
3、熟悉相關的環(huán)境配置
嵌入式開發(fā)要想順利,配置各種環(huán)境也是必需,沒環(huán)境搞啥!學嵌入式開發(fā)要不停的折騰,環(huán)境配置雖然是個力氣活,沒它你還真干不了活。
4、懂得如何開源移植
為什么它也是嵌入式學習必備,前人搞了好多開源的項目,我們拿來為我所用,不僅能加快開發(fā),還能學習和借鑒很多東西,讓自己快速成長。好多優(yōu)秀開源項目。你去弄了學習了,你就會懂的。
想要學習嵌入式開發(fā),并從事相關的工作,需要掌握的技能還是比較多的,如果能很好地掌握以上技能,那在嵌入式軟件開發(fā)的領域可謂是技術大咖級的人物。

