在這裡總結了我學習工作多年以來的技術棧,既是自己的乙個知識框架梳理,也是給有興趣和志向從事嵌入式軟體開發的小夥伴一些分享和交流~
嵌入式軟體開發的核心語言,80%以上的**都是由c完成的。其實c的語言本身並不複雜,核心就是指標和記憶體管理。工作上更多地是將精力放到協議、業務和演算法等功能的實現上,因此,c語言必須十分熟悉,信手拈來。
嵌入式產品少不了和上位機打交道。有時候是因為通用的工具不滿意,有些時候確實是需要為了產品定製化一些功能。此時使用c#來做windows的帶gui的工具開發十分方便。得益於豐富且強大的microsoft.net framework,使用vs+c#的開發模式,學習成本很低就能作出功能強大的工具。後續自己也開發了好幾款pc工具,在工作上起了很大的助力作用。
最早學習python是因為它實在太火了,抱著好奇的心態去學習了一番。然後很快就被它給征服了。python的語言包袱很低、學習資料齊全、而且有各種各樣的庫可以使用,因此學習和使用都十分輕鬆。這裡也推薦大家將python作為自己的第二語言。我在工作中使用python做一下資料分析和處理,十分高效便捷。
指令碼語言,只要你的產品需要在windows/linux下執行或者測試,總是需要使用到的,不需要精通,但要知道怎麼查資料來快速完成編寫。
早期在學習嵌入linux的gui開發時有用過qt,裡面就要用到c++做開發。後面用得比較少,主要是因為c#太方便了 ╮( ̄▽  ̄)╭ 。但是讓我印象深刻的一點是qt的可移植性真的強,**幾乎不用修改,就可以在linux,嵌入式linux和windows下直接編譯執行。
做嵌入式必須掌握基本的組合語言。倒不是平時大家說的為了優化效能嵌入彙編**,這個我從來沒見過,反而讀研時這個幹過,自己寫的彙編**效率不高反而沒有直接用c執行得快。主要是cpu在boot up, hibers, 以及移植rtos時,少不了要使用彙編在實現功能。因為此時棧已經消失,c語言不能用了。如果看不懂彙編,那這個階段除錯起來就舉步維艱了。
matlab,j**a等等,用得不多。
嵌入式軟體開發流程
1 嵌入式軟體開發流程在整個流程中,使用者首先需要建立工程並對工程做初步的配置,包括配置處理器和配置除錯裝置。編輯工程檔案,包括自己編寫的彙編和c語言源程式,還有工程編 譯時需要編寫的鏈結指令碼檔案,除錯過程中需要編寫儲存區映像檔案和命令指令碼檔案,以及上電復位時的程式執行入口的啟動程式檔案。對後四...
嵌入式軟體開發之我見
自己從事嵌入式系統開發有好多年了,在此想與大家分享我對於嵌入式開發的一點心得與體會。先大致說一說我的工作經歷。97年畢業後做了兩年的電氣與電子設計與開發,這一時期,我做過電路原理圖的設計和pcb板的設計。從99年開始,我進入了軟體行業。第一次做嵌入式開發是在2000年,在隨後的六年多的時間裡,我差不...
困難的嵌入式軟體開發
作為一名初級的嵌入式軟體開發從業者,幾年的工作經歷讓我感覺到嵌入式軟體的開發越來越困難了。當然,也可能是近來工作中接觸到應用層方面的開發,與底層的啟動器 核心 檔案系統移植方面的工作不同,引發的一些感觸。然而對於底層的開發,我仍然不能夠說達到了勝任工作的級別 底層的開發,純粹是拿來主義 將現有的開源...