為啥不用手機的系統開發嵌入式系統?

其實完全可以,但是某些行業對系統的穩定性要求非常高。而嵌入式軟體很多都是經過市場或時間考驗的,並且相對於手機系統(如android)其模塊或功能簡單,所以出現bug的可能性也相對少很多。

總之,越簡單的軟體,bug越少。


第一句話就給跪了,你手機再便宜能比單片機便宜...


為防止出現撕逼心態,要先說下,樓主說的確實是趨勢,但現在的工業水平遠遠無法實現你說的情況,簡單來說還是成本沒有降下來。

先吐槽也算是解答下題主的話。

1、現在智能手機硬體軟體和成熟了,整個產業鏈也很完善,成本也很低了,為啥還要用單片機呢?

手機成本是已經很低了,但單片機可能更低,看樓主的提問可能只接觸過一些比較簡單的單片機,我姑且認為是51單片機,可能你覺得51單片機不過10塊8塊,但廠家的批發價是幾毛甚至幾分,所以對於廠家來說,能用便宜的為什麼要用貴的?

2、都啥年代了,這種東西竟然還能存在,手機的軟硬體難道不能秒殺它??或許採購成本高,但是能高到哪裡去呢?擴展出來的功能說不定強大很多。

手機的性能絕對秒殺8位的單片機,但如果8位的單片機就能實現的功能,為什麼要買一個STM32甚至ARM來實現?你說擴展功能強,難道我一個鬧鐘用ARM晶元還需要擴展一個手電筒的功能?不是不能擴展,是不需要。

另外說8位單片機落後了,要消亡的,請參考Java。8位單片機優點有很多,比如成本極低,控制簡單,開發成本低,產業成熟等等,只是你光看到了他的功能不足的缺點,這個缺點在很多情況下並不是缺點,就比如一個賣菜的,你能怪人家不會算傅立葉方程嗎?人家會數數字就夠了。

3、以前的自動控制用啥呢,機械機構控制啊,限位開關、調速器之類的,比如以前的發動機調速用機械式調速,結構笨重,設計起來其實也不簡單。現在用ECU來實現,功能強大,調整方便,功能擴展強大無數倍啊。直接軟體改寫就能改變性能參數,如果在機械機構上改,我就呵呵了。

從機械控制到ECU確實是進步,但它並非以壓倒性的優勢發展,換句話說,硬體和軟體有各自的優缺點。軟體方便修改是它的優點,但軟體不穩定,反饋慢的缺點也存在。所以現在的嵌入式控制中,都是軟硬結合的方式。軟硬結合的職能分配在電腦上也不例外,比如CPU上很多軟體能實現的常用功能被固化到硬體上。

4、汽車問題。

想必題主學過單片機肯定也知道PLC,以前的PLC硬實就是可編程邏輯控制器,但如今的PLC內部已經是ARM之類的晶元了,這裡題主肯定要矛盾了,為什麼用強大的ARM來實現如此簡單的PLC?這就是PLC存在的意義了,具體的不多說,我覺得最主要的是可靠性高。同樣汽車在這上面也要有同樣的要求,至於樓主說汽車沒有操作系統,建議樓主百度下什麼是操作系統或者參見我在別的答案下的評論。

個人看法:

題主只看到了手機性能上的強大,卻並不清楚二者的區別。其實從根源上來說,手機的ARM晶元、Inter的Core CPU和單片機、嵌入式控制晶元是一樣的,二者最關鍵的區別在於,一個是處理器,一個是控制器。前者主要進行運算,後者主要進行運動控制。前者需要提升運算能力進行計算、後者主要用來快速響應任務完成反饋。側重點是不一樣的,以至於圍繞CPU的拓展方向是不同的。前者可以配備更高的IO能力、存儲速度,後者則需要更短的中斷響應時間、更多樣的通訊能力。所以意思就是——術業有專攻,各有各的優勢,本是同源,發展不同而已。

終有一天汽車上的嵌入式控制晶元的處理能力甚至是計算能力會完爆現在手機上的ARM(其實現在的嵌入式系統也用ARM,沒有手機上的強大而已)的,就像現在即使低端的嵌入式控制晶元也完爆了上個世紀的計算機,而現在的天河二號更是虐的你們兩個都不要不要的。

(表述並不專業,答主只是一名噗通的EE本科畢業生,如有錯誤請見諒)


我弄個霓虹燈,活閃兩下就行了你非要上個手機。。。


多謝邀請,這是個好問題,這個問題以前沒有思考過,我也比較誠懇的回答你一下,不專業請指教:

1. 關於題主「嵌入式操作系統的疑問」:題主所說的嵌入式操作系統指的是什麼?安卓,IOS,還是ulinux,這個範圍其實很廣泛。

2. 需求決定

3. 考慮生產成本。

4. 實時性要求

5. 可靠性要求

6. 是否符合國際標準

7. 可兼容性設計

先列出來,晚上繼續。


我用我僅有的一點知識背景來來說說這個問題。首先,手機是消費電子,屬於娛樂產物,用它來做嵌入式控制設備就好像天天拿碳酸飲料當水喝。第二,也是基於第一點,手機如果作為嵌入式產品當然可以,然而通信方式卻要改變,工業生產領域內的通訊並不是採用手機那樣的通訊方式,一般都是近場通訊,不然和手機搞一起,那麼生產廠家的生產還要被移動基站制約。蜂巢數據功能捨棄,除非你做的是智能家居。

第三,嵌入式的軟硬體經過這麼多年的發展已經高度契合,作用於工業的時間也遠早於智能手機的出現,開源,安全,高定製度的linux系統和微軟家的都是不錯的選擇。

回答的很爛,希望有大神來詳解


無知者無畏


單片機嘛,從頭到尾都是你自己寫的代碼,功能比較單一,做什麼完全由你掌控,調試到沒有BUG難度不大,就算是程序跑飛了還有看門狗拉回來;要是Android、Windows這些,你自己寫的其實是個待調度的進程而已,而且優先順序還不高,還有並列其他程序和你的程序一起待調度、競爭資源。相比之下,用VxWorks更合適些。


內核面對的領域不同。

例如ARM分為3個領域

cortex-A 高性能,搭載操作系統,面向消費領域,例如我們的手機。但是穩定性並不好。

cortex-R 用於汽車電子的控制,面向實時性要求高的領域。性能不錯

cortex-M 對數據的處理能力不高,但是有非常可靠的穩定性。用於工業領域。工業控制的東西容不得半點差池。

各自有各自的應用領域。亂串可不行。在工業控制領域要是死機失控一次,那就遭殃了。。。

我們的手機死機或者卡機了,大不了等等或者重啟,要是放在工業控制和汽車上面,這樣發生一次那可是人命或巨額損失啊!!!

//======================================

事情沒那麼絕對,科學慎重的走好每一步就行。


手機系統是嵌入式系統的孫子曾孫子輩。

因為越來越複雜功能越來越強大,所以不適合做簡單工作。

你能想像買個i7回家,只做路由器用嗎?


黑莓的bb10就是基於微內核實時操作系統qnx,然後就沒有然後了


硬實時,手機裡面你提到的去掉的 「通信模塊「 恰恰纔滿足硬實時,比如安全氣囊,給你慢個一點點


。。。


可靠性 複雜的東西出錯的概率大


舉個例子,談談自己的看法。手機好比用一個非常強大的大腦來處理控制所有信息,而汽車更類似於每個器官都有自己的一個大腦,每個大腦之間通過CAN或者FlexRay進行通信,相互之間沒有主輔關係,大家各為其主,各行其事,但共同目標就是保證汽車平穩地受控行駛,畢竟汽車牽扯人身性命。但你說有沒有必要讓這些大腦更加強大,更加高大上?(就算價錢差不了太多),我個人是這麼理解的,就好比屠龍刀再好,也還是適合金毛獅王用來血洗武林,而不適合屠夫殺豬剔骨。Cortex A系列和 Cortex M系列就是一個例子。其次就是操作系統這個東西,就像大家已經說的,穩定性和實時性對汽車很重要,而適合單片機的操作系統也有,比如uCOS,更何況針對這些車載實時操作系統也有一些規範,我只知道一個,就是OSEK/VDX,不是說一個東西功能強大就能代替功能不強大的東西,而是要看它適不適合用在這個地方。就好比PLC,大家都覺得這個一大疙瘩東西有啥好,那麼大,又不方便,佔地方,不像單片機,一個電路板啥都有,造價還低。但其實PLC用的地方還是很多的


如果中央控制器死機那就gg了,所有的東西都不能用了,所以每個模塊獨立出來也有好處。


目測題主大一工科,且沒有進行過電子電路設計,製作,調試。上家公司為了省一個三極體,和硬體聯調一星期,默默的笑過。題主去算算手機系統成本和嵌入式成本就知道了。太過集成的系統,一步錯,滿盤輸,查錯糾錯補錯工程量更大


分頁阅读: 1 2 3