不少想學嵌入式開發的同學很猶豫,因為不知道需要什么基礎,那到底需要什么基礎呢?首先得學過單片機原理,對于底層的一些運作有個大致了解,對基本原理一定要掌握,很多新人分不清什么十進制數,十六進制和BCD,什么bit位這類基礎問題,是對將來工作的一大阻礙。
對底層的基本原理壓根就沒接觸過,分析問題伏在問題表面現象上,有些問題扎著頭搞了兩個星期都沒有進展,到就是一個數的bit位除了一點問題,在面試時曾經遇到過這樣的問題,有個面試者在回答問題時,使用RS485總線,波特率9600,協議通訊有響應數據,每個通訊周期的數據量都會超出10個字節,問其通訊周期時,堅定的回答,10ms一個周期,每個周期都會有十幾個字節的數據,在反復暗示后一直堅持自己的說法。
對于嵌入式軟件開發,從事一兩年后,一定要問問自己uart,spi和i2c這些總線我們是不是都已經很熟悉了,對定時器和中斷我們是否都掌握了。經驗會在工作不斷碰壁的情況下逐步積累起來,我也一直堅持一個觀點,做項目如果研發階段非常順利,這樣注定后期要有忙不完的事情,反而做項目過程中問題不斷,所有的問題都迎刃而解,對于個人來說是寶貴的財富,對于一些平淡的事情我們可能過陣子就沒印象了,反而是項目中哪些折騰的我們多少個夜晚無眠的,會給人留下深刻的印象,使我們在下次在遇到這樣的問題時能夠快速的反應。
從事嵌入式軟件行業是否需要經驗呢?
經驗這種東西是個很微妙的東西,有些事情經驗能起到促進作用,有些事情有經驗反而不太好。個人理解經驗應該是幫助我們更快更好的完成我們要做的事情,從這一點出發經驗肯定是好的,但是在我們入行的開始階段,我們的經驗往往不成形,而且分不清哪些是好的經驗哪些是不好的經驗。
還有就是做項目的經驗,從項目立項開始就介入,一直堅持項目做完會給人很大的提升,相反在項目中后期進入項目的,項目的架構和流程已經基本成型,只能沿著項目的路子走下去,會使后期介入的人員缺乏對項目的總體認識,風險相對也比較少。項目早期介入的相當于沒路走,自己趟出一條路來走,項目后期介入的相當于選擇走哪條路,路已經有了,只是做個選擇。
再有一個項目經驗就是,做項目時,項目使用的工程文件的來處,基于老項目改造的話會有很多的細節問題無法體會,如果以后有相同的項目更換硬件MCU平臺時,可能會帶來一些不必要的風險;加入新項目的工程是自己創建的或者接手的項目在時間允許的情況下,自己創建工程,這樣在有新項目來時,會讓我們能夠得心應手。
即便沒有基礎也不用著急,廣州粵嵌對嵌入式開發有適合新人的嵌入式培訓,O基礎也能學,想找嵌入式培訓選擇粵嵌吧!