單片機(Microcontroller)是一種集成電路芯片,具有處理器核心、存儲器、輸入/輸出接口和各種外設的功能。 單片機是單片微型計算機的簡稱,MCU是Microcontroller的簡稱,也就是嵌入式微控制器。 它是嵌入式系統(tǒng)中常用的主要組成部分之一。與通用計算機不同,單片機通常用于控制和執(zhí)行特定任務,如控制家電、汽車電子系統(tǒng)、醫(yī)療設備、工業(yè)自動化以及各種嵌入式應用等。
單片機的的選型是一件重要而費心的事情。如果單片機型號選擇得合適,單片機應用系統(tǒng)就會得經(jīng)濟,工作可靠。如果選擇得不合適,就會造成經(jīng)濟浪費,影響單片機應用系統(tǒng)的正常運行,甚至根本就達不到預先設計的功能。
對于一個已經(jīng)設計好的單片機應用系統(tǒng)來說,它的技術要求和系統(tǒng)功能都應當十分明確。如果選擇功能過于少的單片機,這個單片機應用系統(tǒng)就無法完成控制任務。如果選擇的單片機功能過于強大,這不但沒有必要,還會造成資源浪費,性價比低。
只要掌握和運用單片機正確選型的原則,就可以選擇出最能適用于應用系統(tǒng)的單片機,保證單片機應用系統(tǒng)有最高的可靠性、最優(yōu)的性能價格比、最長的使用壽命和最好的升級換代可能。
單片機芯片選型時,總的原則是:
(用)芯片完成(少用外圍器件)
選大(大廠)不選小,選多(供應量多)不選少
選名(名牌)不選渺(飄渺、不知詳情的廠子)
選廉(廉價)但要好(質(zhì)量保證)
在缺芯的情況下,優(yōu)選貨源充足的單片機
對單片機選型,主要應用從單片機應用系統(tǒng)的技術性、實用性和要開發(fā)性三方面來考慮:
技術性。要從單片機的技術指標角度,對單片機芯片進行選擇,以保證單片機應用系統(tǒng)在一定的技術指標下可靠運行。
實用性。要從單片機的供貨渠道、信譽程序等角度,對單片機的生產(chǎn)廠家進行選擇以保證單片機應用系統(tǒng)在能長期、可靠運行。
可開發(fā)性。選用的單片機要有可靠的可以開發(fā)手段,如程序開發(fā)工具、仿真調(diào)試手段等。
單片機選型的討論
很久以來,總是能看到關于單片機的各種討論,"這個不好啦" "那個不好了" "那個過時啦" "這個先進啊" "學什么什么沒用啦"。
筆者只想說,用合適的芯片做出最合適的產(chǎn)品,把功夫用在設計上用在優(yōu)秀的思路上。
不要拘泥于芯片怎么怎么樣,把寶貴的心思用在你所做的產(chǎn)品的專業(yè)知識上,爭論芯片的先進與個人感覺沒意義,當然新的技術自然就會有新的產(chǎn)品,。
至于選那種芯片還是由你的產(chǎn)品決定。新入門的朋友,不管學哪種新品,都要把它學好,學會靈活運用達到產(chǎn)品的要求就是很好的,學什么,都不白學。
單片機終究是一種工具,真正的功夫在你的專業(yè)知識。
可能筆者的舉例不是很恰當,關鍵是要告訴新人要踏實的去學習,不要被爭論用什么單片機而迷茫,每個人的思維不一樣,將來應用的領域也不一樣。
當然對每種芯片的領悟也是不一樣的。選用自己合適的就可以,弄透它,回過頭看,他們都是一樣的,只是不同的工具而已,也不要說學51怎么樣,學STM32怎么樣,學ARM怎么樣。
不管哪一種,都是實現(xiàn)你思想的工具。
哪個感覺順手、實用,就用哪個,就學哪個,把它學好用熟悉。不要今天聽那個好就用那個,明天有人說這個好就用這個。新東西總是有,每天都有新東西,都是好東西,你一下子學的過來嗎?
不如找一個適合自己的先學好,將來再學其他的是很容易的。
觸類旁通,這就是一個過來人的經(jīng)驗。
這點體會也許只在這個行業(yè)的百分之五十的人,那就送這百分之五十的朋友吧。
▼ 在實際應用中,如何選擇單片機的類型?
選擇原則:主要從指令結(jié)構(gòu)、運行速度、程序存儲方式和功能等幾個方面選擇單片機。
看過一些文章,討論何種單片機最好。
筆者感覺選擇一個合適的單片機有時真的不太容易,要考慮的方面太多了。只能說某個特定場合比較適于采用某個MCU,不大可能某個牌子的MCU適合所有的設計, 真要有的話那可就太好了。
(1)單片機的基本參數(shù)例如速度、程序存儲器容量、I/O引腳數(shù)量。
(2)單片機的增強功能。例如看門狗、雙指針、雙串口、RTC(實時時鐘)、EEPROM、擴展RAM、CAN接口、I2C接口、SPI接口、USB接口。
(3)Flash和OTP(一次性可編程 )相比較最好是Flash。
(4)封裝。DIP(雙列直插)、PLCC(PLCC有對應插座)、還是貼片。DIP封裝在做實驗時可能方便一點。
(5)工作溫度范圍。工業(yè)級還是商業(yè)級。如果設計戶外產(chǎn)品。必須選用工業(yè)級。
(6)功耗。比如設計并口加密狗,信號線取電只能提供幾個mA。
(7)工作電壓范圍。例如設計電視機遙控器,2節(jié)干電池供電,至少應該能在1.8~3.6V電壓范圍內(nèi)工作。
(8)供貨渠道暢通。能申請樣片,小批量購買有現(xiàn)貨的。
(9)價格低。
(10)有服務商,提供了很多有用的技術支持,起碼燒寫器有地方買。
(11)燒錄器價格低。如果是ICP(把單片機放在燒錄器上編程)能否利用現(xiàn)有的燒錄器。如果是表貼封裝,買一個轉(zhuǎn)接座也很貴,至少得一二百元,能否IS(在系統(tǒng)編程,即把芯片先焊到板子上再通過預留的ISP接口編程),一般ISP編程器比較便宜大約一二百元甚至幾十元。
(12)仿真器便宜。對于FLASH型單片機,仿真器不是必備的。但是對于OTP(一次性可編程)型單片機,必須購買或者租用仿真器。
(13)單片機語言是自己熟悉的,并且能支持C語言。編程環(huán)境要像keil一樣好用,并且還是免費的。
(14)網(wǎng)站速度快,資料豐富,包括芯片手冊、應用指南、設計方案、范例程序,最好有中文,像Atmel就不錯。
(15)保密性能好。查一下專業(yè)解密網(wǎng)站上的黑名單,再發(fā)個mail咨詢一下解密價格。
(16)抗干擾性能好。
(17)和其他外設芯片放在一起的綜合考慮,電路原理、模電、數(shù)電、通信原理、單片機、高頻率電子線路、信號系統(tǒng)、數(shù)字信號處理、FPGA、DSP等。
單片機如何選型
選擇單片機時,有幾個關鍵的考慮因素可以幫助您做出決策。以下是一些建議:
功能需求:首先確定您的項目或應用的功能需求。單片機有各種類型和規(guī)格,具備不同的功能和特性。確保您了解您的應用所需的處理能力、存儲容量、輸入/輸出接口、通信協(xié)議等方面的要求。
體系結(jié)構(gòu):選擇適合您項目需求的單片機體系結(jié)構(gòu)。常見的體系結(jié)構(gòu)包括基于CISC(復雜指令集計算機)的單片機(如8051、AVR等)和基于RISC(精簡指令集計算機)的單片機(如ARM Cortex-M系列)。每種體系結(jié)構(gòu)都有其特定的優(yōu)勢和用途,因此需要根據(jù)您的項目需求來選擇。
性能參數(shù):考慮單片機的性能參數(shù),如時鐘頻率、處理器核心數(shù)、存儲器容量(RAM和ROM)、外設數(shù)量等。這些參數(shù)將直接影響單片機的計算和數(shù)據(jù)處理能力,確保選擇的單片機能夠滿足您的應用需求。
開發(fā)工具和生態(tài)系統(tǒng):評估單片機的開發(fā)工具鏈和生態(tài)系統(tǒng)支持。了解開發(fā)工具的可用性、易用性和支持度,以及相關的開發(fā)文檔、示例代碼和社區(qū)支持等方面。這將對您的開發(fā)和調(diào)試過程產(chǎn)生重要影響。
成本和可用性:考慮單片機的成本和可用性。不同的單片機價格差異很大,取決于其功能和性能。同時,確保所選擇的單片機在市場上易于獲取和購買,以便供應鏈和生產(chǎn)計劃的順利進行。
可靠性和支持:了解單片機制造商的聲譽和技術支持。選擇知名的、有良好聲譽的廠家,這樣可以確保產(chǎn)品質(zhì)量和技術支持的可靠性。
最后,建議在進行單片機選型之前進行一些市場調(diào)研和技術評估,查閱相關的技術文檔、規(guī)格表和用戶評價,以便做出明智的選擇。