相互聯(lián)系的世界并期望嵌入式能夠可靠地工作
嵌入式系統(tǒng)是一種專用的計算機(jī)系統(tǒng),作為裝置或設(shè)備的一部分,通常嵌入式系統(tǒng)是一個控制程序存儲在ROM中的嵌入式處理器控制板,事實上所有帶有數(shù)字接口的設(shè)備,有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是由單個程序?qū)崿F(xiàn)整個控制邏輯。
嵌入式系統(tǒng)需要存儲器來存放和執(zhí)行代碼,嵌入式系統(tǒng)的存儲器包含Cache、主存和輔助存儲器,Cache是一種容量小、速度快的存儲器陣列它位于主存和嵌入式微處理器內(nèi)核之間,存放的是一段時間微處理器使用最多的程序代碼和數(shù)據(jù)。
嵌入式開發(fā)是一門類似于編程這樣的技術(shù),只不過我們理解范圍的程序員是做電腦軟件的、做網(wǎng)頁開發(fā)的、還有做APP的。
而嵌入式開發(fā)的大多數(shù)是智能的電子產(chǎn)品,就是針對硬件的編程,這個硬件大家可以理解成電路板,一般是由一個控制器(處理器)芯片和不同的電路組成。
具體是什么程序和電路,一般是由產(chǎn)品功能決定的,比如說一個電子時鐘產(chǎn)品,一般由數(shù)碼管和單片機(jī)(控制器)組成,然后通過c語言寫程序下載到單片機(jī)里,實現(xiàn)時鐘顯示。
嵌入式和物聯(lián)網(wǎng)都可以按軟件和硬件來分。范圍很廣,有很多細(xì)分的方向。嵌入式是一個技術(shù)大類,物聯(lián)網(wǎng)是一個行業(yè)大類,它們的共同特性是軟硬件都學(xué)習(xí)了解。
嵌入式技術(shù)主要做單片機(jī)軟件開發(fā)、linux軟件開發(fā)、驅(qū)動開發(fā)、嵌入式系統(tǒng)軟件開發(fā) 相對更接近底層的軟件開發(fā) ,這類工作平常用到的都是C語言,而且要能看懂電路圖和電路時序圖,匯編語言也要懂,調(diào)試的時候可能會有C語言反匯編 ,F(xiàn)PGA、DSP軟件開發(fā) 這類相對上層一點硬件專業(yè)中屬于偏軟,還有一些其他的工業(yè)控制軟件開發(fā)。
我們今天的世界是一個相互聯(lián)系的世界。我們每秒從海洋浮標(biāo)、智能手表和工業(yè)物聯(lián)網(wǎng)邊緣傳感器收集、傳輸和分析大量數(shù)據(jù)。從用戶的角度來看,我們認(rèn)為連接是理所當(dāng)然的,并期望它能夠可靠地工作。然而,對于工程團(tuán)隊來說,提供無線連接打開了一個需求清單。問題包括范圍、數(shù)據(jù)量、頻率、互操作性以及應(yīng)用程序的供電方式。反過來,這有助于指導(dǎo)無線協(xié)議和拓?fù)涞倪x擇。
隨著連接設(shè)備使用案例的多樣性增加,對最適合應(yīng)用的新無線方法的需求也隨之增加。例如,Wi-Fi非常適合以非常高的速度發(fā)送大量數(shù)據(jù),但它耗電量很大。最近,Wi-SUN和Wi-FiHaLow等新協(xié)議為大規(guī)模智能城市和公用事業(yè)計量部署提供了解決方案。
對于嵌入式開發(fā)人員來說,跟上潮流和新技術(shù)是一個持續(xù)的挑戰(zhàn)。需要考慮的其他因素包括軟件工具的可用性和成本。為了提供競爭優(yōu)勢,一些半導(dǎo)體供應(yīng)商投資開發(fā)集成開發(fā)環(huán)境(IDE),向客戶免費提供這些環(huán)境,但也有大量的第三方IDE可用。在某些情況下,對軟件兼容性的要求將限制微控制器的選擇。例如,如果設(shè)備需要運行為Arm處理器或Intelx86系列編寫的應(yīng)用程序,則只能選擇兼容處理器。
目前的嵌入式開發(fā)更傾向于智能化,也就是我們所說的智能硬件(硬件+軟件),從現(xiàn)在各種前沿的嵌入式產(chǎn)品來看的確如此,嵌入式產(chǎn)品的一個發(fā)展趨勢是更傾向與自動化控制和人機(jī)交互,而不是強(qiáng)調(diào)“算法”這一塊。
學(xué)嵌入式的主要有兩個專業(yè)的人,一個就是電子類專業(yè),另一個是計算機(jī)類專業(yè),電子類專業(yè)一般從硬到軟學(xué),計算機(jī)類的從軟到硬學(xué)。本人更傾向于電子類的學(xué)習(xí)走向,硬件要過度軟件,相對簡單,但是要是純軟沒接觸過硬件,想邁這個坎可就難了。從這可以看出,嵌入式行業(yè)要求工程師軟件硬件都要掌握,只是側(cè)重點不同罷了。