干貨 | 如何選擇微控制器?
第 1 步:制定所需硬件接口列表
利用總體硬件框圖,制定一份微控制器需要支持的所有外部接口列表。需要列出的接口類型一般有兩種。第一種接口是通信接口,包括 USB、I2C、SPI 和 UART 等外設(shè)接口。如果應(yīng)用需要 USB 或某種形式的以太網(wǎng),則記下特別備注。這些接口對(duì)微控制器需要支持的程序空間大小有重大影響。第二種接口是數(shù)字輸入和輸出、模擬至數(shù)字輸入,以及 PWM 接口等。這兩種接口類型將指出微控制器需要的引腳數(shù)。圖 1 顯示了一個(gè)通用示例框圖,其中列出了 i/o 要求。第 2 步:檢查軟件架構(gòu)
軟件架構(gòu)和要求對(duì)微控制器的選擇有著重大影響。處理要求的輕重程度決定是使用 80 MHz DSP 還是 8 MHz 8051。與硬件一樣,應(yīng)記下所有重要的要求。第 3 步:選擇架構(gòu)
利用第 1 步和第 2 步中的信息,工程師應(yīng)能夠?qū)λ璧募軜?gòu)有個(gè)初步的想法。應(yīng)用是否能通過(guò) 8 位架構(gòu)實(shí)現(xiàn)?16 位呢?還是需要 32 位 ARM 核心?在應(yīng)用和所需的軟件算法之間,這些問(wèn)題將開(kāi)始匯總為一個(gè)解決方案。不要忘了可能的未來(lái)要求和功能擴(kuò)展。不能僅因?yàn)?8 位微控制器能滿足您現(xiàn)在的要求,就不去為了未來(lái)的功能或易用性而考慮 16 位微控制器。請(qǐng)記住,微控制器選擇可以是一個(gè)迭代過(guò)程。您可能會(huì)在此步驟中選擇 16 位期間,而在稍后的步驟中發(fā)現(xiàn) 32 位 ARM 部件更加適合。這一步只是讓工程師確定正確的前進(jìn)方向。第 4 步:確定存儲(chǔ)器需求
對(duì)任何微控制器而言,閃存和 RAM 都是兩個(gè)非常重要的組成部分。確保不會(huì)出現(xiàn)程序空間不足,或者說(shuō)可變空間肯定是最優(yōu)先考慮的。選擇部件時(shí),很容易會(huì)選擇具有過(guò)多功能的部件,而不是功能不足的部件。到設(shè)計(jì)的末尾時(shí),發(fā)現(xiàn)需要 110% 的空間或者需要削減些功能,這并不是什么出格的事。畢竟,您總是會(huì)開(kāi)頭想要多一些,然后轉(zhuǎn)到同一芯片家族中限制稍多一些的部件。利用應(yīng)用中包含的軟件架構(gòu)和通信外設(shè),工程師就能估算該應(yīng)用所需的閃存和 RAM 大小。記得給功能擴(kuò)展和后續(xù)版本留些空間!這可為未來(lái)省卻許多麻煩。第 5 步:開(kāi)始尋找微控制器
現(xiàn)在對(duì)微控制器的特性要求有了更好的了解,可以開(kāi)始搜尋工作了!一個(gè)能作為良好起點(diǎn)的地方是 Arrow、Avnet 或 Future Electronics 等微控制器供應(yīng)商。與 FAE 談?wù)勀膽?yīng)用和要求,很多時(shí)候他們可以推薦既尖端新穎又滿足要求的新部件。只是要記住,他們可能會(huì)有在當(dāng)下推廣某一系列微控制器的壓力!下一個(gè)最佳地方是您已經(jīng)熟悉的芯片供應(yīng)商。例如,如果您過(guò)去使用過(guò)某些微芯片部件,并與供應(yīng)商關(guān)系不錯(cuò),那就從他們的網(wǎng)站開(kāi)始搜索。大多數(shù)芯片供應(yīng)商擁有搜索引擎,您可以輸入自己的外設(shè)集、I/O 和功率要求,而后它將縮小符合條件的部件列表。從該列表,工程師就能繼續(xù)選擇微控制器。第 6 步:檢查成本和功率限制
此時(shí),挑選過(guò)程已經(jīng)得出幾個(gè)潛在候選者。現(xiàn)在是檢查功率要求和部件成本的大好時(shí)機(jī)。如果設(shè)備將通過(guò)電池供電并屬于移動(dòng)類型,那么確保部件具有低功耗是頭等大事。如果部件不滿足功耗要求,則應(yīng)將它們從列表中剔除,直到選定符合條件的為止。也不要忘了檢查處理器的單價(jià)。雖然許多部件的批發(fā)價(jià)已穩(wěn)定在 1 美元左右,但如果部件為高度專業(yè)化或者屬于高端處理器,那么其單價(jià)可能非常重要。不要忘了這一關(guān)鍵因素。第 7 步:檢查部件供貨情況
確定備選部件清單后,現(xiàn)在可以開(kāi)始查看部件的供貨情況了。需要記住以下幾點(diǎn):部件的備貨周期是多少?是否多家分銷商都保有庫(kù)存?或者需要 6–12 周的備貨周期?您對(duì)供貨有什么要求?您不希望陷入大訂單困境之中,而必須等待三個(gè)月時(shí)間來(lái)履行訂單。接著一個(gè)問(wèn)題是部件的新舊程度以及是否在您產(chǎn)品的生命周期內(nèi)保持供貨。如果您的產(chǎn)品要在 10 年內(nèi)供應(yīng),那么您就要尋找制造商保證在 10 年內(nèi)生產(chǎn)的部件。第 8 步:選擇開(kāi)發(fā)套件
在選擇新的微控制器時(shí),最美妙的階段之一是尋找可以研究的開(kāi)發(fā)套件,并了解該控制器的內(nèi)部運(yùn)作機(jī)制。一旦工程師確定了中意的部件后,他們應(yīng)當(dāng)調(diào)查有哪些開(kāi)發(fā)套件可用。如果沒(méi)有可用的開(kāi)發(fā)套件,那么很有可能所選部件不是最佳的選擇,那時(shí)應(yīng)當(dāng)后退幾步來(lái)找到更好的部件。現(xiàn)在,大多數(shù)開(kāi)發(fā)套件的價(jià)格在 100 美元以內(nèi)。如果超過(guò)這一價(jià)格(除非它設(shè)計(jì)為用于多個(gè)處理器模塊),那就顯然太高。其他部件可能更為合適。第 9 步:調(diào)查編譯器和工具
選定開(kāi)發(fā)套件基本上就落實(shí)了微控制器選擇。最后要考慮的是檢查可用的編譯器和工具。大多數(shù)微控制器提供多種編譯器、示例代碼和調(diào)試工具選項(xiàng)。務(wù)必要準(zhǔn)備好用于該部件的所有必要工具,這點(diǎn)非常重要。沒(méi)有正確的工具,開(kāi)發(fā)過(guò)程可能會(huì)變得冗長(zhǎng)乏味而代價(jià)高昂。第 10 步:開(kāi)始實(shí)驗(yàn)
即便選定了微控制器,也不代表一成不變了。通常,拿到開(kāi)發(fā)套件后,還需要很久才會(huì)得到第一個(gè)原型硬件。此時(shí)可以構(gòu)建測(cè)試電路并與微控制器接口。選擇高風(fēng)險(xiǎn)部件,讓它們?cè)陂_(kāi)發(fā)套件上工作。您可能會(huì)發(fā)現(xiàn)之前認(rèn)為很不錯(cuò)的部件存在一些未預(yù)見(jiàn)的問(wèn)題,而不得不去選擇其他微控制器。在任何情形中,早期實(shí)驗(yàn)將能確保您做出正確的選擇,而且有必要變動(dòng)時(shí),影響也會(huì)最??!本文來(lái)源網(wǎng)絡(luò),版權(quán)歸原作者所有。如涉及作品版權(quán)問(wèn)題,請(qǐng)聯(lián)系我進(jìn)行刪除。常見(jiàn)的嵌入式web服務(wù)器有哪些?
嵌入式工程師的自我修養(yǎng)?
干貨 | 如何榨干SysTick的每一滴汁水?
Linux GNU C 與 ANSI C 有什么區(qū)別?
在公眾號(hào)聊天界面回復(fù)1024,可獲取嵌入式資源;回復(fù)?m?,可查看文章匯總。