单片机到底是不是嵌入式?
01? 問題
很多同學一直在糾結:我是學單片機呢還是學嵌入式呢?
還有人說單片機也是嵌入式,到底對不對?
嵌入式是不是就是linux?
今天咱們說說這個問題。
02? 什么是單片機
單片機的本質是一種計算機。
那什么是計算機?
計算機就是一個硬件上包含了CPU、內存和一定外設(IO引腳、網口、I2C接口、串口等),并且可以運行一定的程序的電子系統。
計算機有很多種。大的如超算,幾間房那么大。小的如個人電腦臺式機、筆記本電腦大家都很熟,再小的如平板和手機,這些都是計算機。再小的如智能手表也是計算機。
只要符合上面定義,硬件上有以CPU為首的幾大件,軟件上能運行程序他就是計算機。
而單片機是一種計算機,這種計算機的特點就是“單片”。
什么叫單片?有單片是不是還有多片?確實有的。
下圖左邊是一個電腦主板,右圖是一個單片機。
明顯可以看出,電腦主板很復雜,而單片機很簡單。
?
如果你見過電腦主板,就知道這東西核心是一塊PCB板,上面焊接了眾多的芯片。而每一個芯片其實就是一個“單片”,所以電腦這臺計算機就是個“多片機”。
而單片機就是只有一個芯片(本質上是芯片內只有一個半導體chip)的計算機系統。
那為什么都是計算機,有些就要多片,而有些就單片呢?其實還是功能大小的問題。藏獒長那么大,寵物犬長那么小,但是它們都是狗,一樣的道理。
03? 什么是嵌入式
單片機其實是有清晰定義的,就是單個片(chip)上的計算機系統。而不同的單片機雖然配置不同,性能不同,廠家不同,甚至指令集和開發方式不同,但是都是在一個片上的完整的計算機系統,這個定義不會錯。
而嵌入式就是個不清晰的定義了,并沒有非常明確的關于“嵌入式”這個詞的定義。他也不像單片機一樣,是個確定的“物”的名字。
嵌入式(英文是embeded)本質上是一種電子設計方法,這種方法就是將微型計算機嵌入到電子產品內部。只要符合這種設計方法的電子產品就可以稱為嵌入式系統。這有點像客家菜的釀(又寫為讓)苦瓜釀豆腐一樣,我剛到廣東只覺得這東西好吃名字奇怪,后來才知道讓其實就是一種操作手法,就是把肉餡塞進苦瓜或者豆腐里,這個塞進的設計方法就叫做讓。所以嵌入式系統和讓苦瓜其實是一類命名手法。
為什么會有這個詞?
其實是歷史原因。因為早期的半導體工藝不發達,計算機都是大塊頭。所以那時候的電子產品都是計算機獨立出來在外面,然后拉根線去電子產品里控制他。
大家你想想一下一臺空調,空調是空調只管制冷,上面也沒有按鍵,然后空調拉根線出來接上一臺電腦上,然后通過電腦按鍵盤來控制空調。這種空調就叫非嵌入式系統。
而現實中你看到的空調都不是這樣,空調柜機上有按鈕可以直接按,本質上是空調內部集成了一個電路板,這個電路板其實就是一個嵌入式的計算機,用來控制空調的。因為把計算機電路板“嵌入”到空調里了,所以叫嵌入式系統。
所以你現在明白了,現在你看到的所有的計算機系統:
除了個人電腦(實際上還有服務器等專用電腦,但是大家都很少見)外其實都是嵌入式系統。
包括:空調、冰箱、洗衣機等家電,汽車火車飛機等大件,智能手機和智能手表和其他可穿戴智能硬件,攝像頭、智能門鎖、自助辦理機器等,太多了。
04? 單片機是不是嵌入式
那單片機到底是不是嵌入式呢?簡單來說:是。
因為很多嵌入式產品中被嵌入的計算機系統就是單片機,譬如空調中嵌入的控制板其實核心就是個單片機。實際上大部分家電產品中嵌入的計算機系統都是單片機。
因為單片機足夠簡單便宜而且夠用,所以使用單片機是最劃算最適合的。而單片機現在出貨量最大的領域也就是家電產品了,當然未來IOT類的應用會越來越多,會成為單片機的很大的增量市場。
05? 廣義和狹義的嵌入式
嵌入式這個概念實際上很泛化,現在講嵌入式這個詞的人,可能想表達的意思并不相同。咱們上面講的嵌入式的概念是嵌入式本來的定義,也就是所謂廣義上的嵌入式。
而狹義的嵌入式,其實是“嵌入式linux系統”的簡稱。
這種狹義的嵌入式最初指的是運行了linux系統的嵌入式計算機系統。后來也包括運行了和linux同級別的其他嵌入式系統(譬如WinCE、Vxworks、Android等)的計算機。
這種能夠運行linux的嵌入式計算機并不是單片機,單片機限于資源和性能是運行不了linux的。我們平時常見產品的智能手機、汽車中控大屏、工控HMI、網絡攝像機等就是這類狹義的嵌入式系統。
所以當你和一個人討論單片機究竟算不算嵌入式的時候,你要先和他確認下他所認為的嵌入式到底具體是什么?
好了,現在我們可以給出結論了:從廣義上講單片機屬于嵌入式,而從狹義上講單片機不屬于嵌入式(linux)。
06? 其他延伸問題
其實關于單片機和嵌入式,還有很多經常被問的問題,咱們后面逐個寫文章慢慢講吧,一篇文章解決一個問題。
這些問題譬如:
我應該學單片機還是學嵌入式?
單片機有什么優勢和劣勢?嵌入式有什么優勢和劣勢?
學嵌入式要先學單片機嗎?
學單片機(嵌入式)好找工作嗎?
學單片機(嵌入式)要學C(C++,Java,python)語言嗎?
做單片機(嵌入式)是青春飯嗎?35歲以后會沒飯吃嗎?
學單片機(嵌入式)必須要學硬件PCB畫板嗎?
學單片機要學RTOS(ucos、freertos)嗎?
學單片機(嵌入式)能掙多少錢?發展前途怎么樣?
......
記得關注公眾號~后續繼續分享~
-END-
猜你喜歡
通電就可以工作,這些單片機真香!
論嵌入式與單片機,相愛相殺。
學嵌入式,一定要買開發板嗎?
?最 后??
?若覺得文章不錯,轉發分享,也是我們繼續更新的動力。
5T資源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,PCB、FPGA、DSP、labview、單片機、等等!
在公眾號內回復「更多資源」,即可免費獲取,期待你的關注~
長按識別圖中二維碼關注
總結
以上是生活随笔為你收集整理的单片机到底是不是嵌入式?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 酷狗音乐怎么免费听VIP歌
- 下一篇: 2020 年 4 月编程语言排行榜:C