【?聲明:版權所有,歡迎轉載,請勿用于商業用途。 聯系信箱:feixiaoxing @163.com】
? ? ? ? 一直都主張嵌入式軟件工程師,也要會做一點電路設計的工作。哪怕自己做的是嵌入式linux上層開發,一個會硬件設計,一個不會,兩者的未來發展路徑也是不同的。如果一個人自己會電路設計,這意味著自己是可以提供整體方案的,而不僅僅是把自己的工作依附在某個硬件平臺上面。因為企業里面工作,每個人做一部分,這無可厚非。但是如果將來想自己獨當一面的話,最好軟硬件都要會。
1、mcu最小系統不復雜
? ? ? ? mcu要想跑起來,就要搭建一個最小系統。這個最小系統有這么幾個部分,電源、輸入、輸出、晶振、復位。有了電源,芯片才能啟動。有了復位,芯片才能從混沌走向穩定,而晶振則是芯片的心臟。至于輸入、輸出,這部分就和具體的業務有關。實在不行,點個燈也行。
? ? ? ? 當然涉及到具體的mcu,一般還要處理下boot config和swd。前者負責啟動模式,后者負責hex文件的下載。等到處理好了這兩部分,這個最小系統就完成了。當然,如果要多做一點業務的話,還需要根據需求把其他外設補充完整,比如ad、da、spi、iic、pwm、lcd、usb、eth等等。
2、mcu價格不貴
? ? ? ? mcu是充分競爭的市場,不管是國外的mcu,還是國產的mcu,那些通用、入門類的mcu價格都不貴。一般都在10元以下,大部分甚至低于5元,普遍在2、3元附近。所以,自己做一個mcu開發板,或者是業務板,成本上也是可控的,價格也不是很貴。
3、打板費用低、焊接容易
? ? ? ? mcu封裝簡單,外部引腳也不算多。大部分mcu電路圖,打板的時候都是選擇2層板。就算是為了信號穩定性,最多使用4層板。就打板來說,4層板以下的價格都是比較容易承受的。這也就是說,就算設計失誤、打板失敗,重新再來幾次,也沒有關系,畢竟這些費用都是自己可以承受的。
? ? ? ? 拿到板子,可以自己焊接,也可以貼片處理。這一步驟不算復雜。
4、調試流程簡單
? ? ? ? 打板之前,我們一般先在買的開發板上面做實驗。等軟件開發完畢了,再去自己畫板子、自己來做硬件。因此,調試之前,最好可以有一份還算穩定的固件,這個時候再來調試,就事半功倍了。調試和焊接,是相伴相生的,更多時候是焊接一部分,調試一部分。
? ? ? ? 一開始調試的是電源,保證電源轉換ok。其次是晶振。等這兩部分都ok之后,就可以焊接一下復位。至此,可以用swd接口燒錄一下軟件,如果燒錄是ok的,那么代表芯片至少是跑起來了。不行的話,就要回過頭去查看電源、焊接、晶振和復位電路了。
? ? ? ? 芯片能燒錄,意味著一大半工作都解決了,下面就是依次焊接led、輸入開關和基本外設。如剛才所說,可以一邊焊接,一邊調試。調試的時候,手上可以同時焊接2塊以上的板子,這樣可以對比著測試,避免一些低級的硬件問題。最小電路調試好了,就可以依次調試其他外設了。
? ? ? ? 測試中遇到的問題,都可以通過excel記錄一下,這樣為下一次硬件優化做準備。哪怕是簡單的板子,一般也是2次之后才會趨向于穩定的。調試的時候,通常是軟硬件一起想辦法,只要能解決問題就行,不必拘泥于形式。
5、容易擴展到復雜soc電路設計
? ? ? ? 很多同學即使是做嵌入式linux開發,這個時候學習mcu硬件設計也是有意義的。就算將來不想在電路設計著墨過多,也可以通過學習mcu設計輕松過渡到soc設計。實現的方式,就是購買som開發板,自己來做底板,專注于外設開發、算法開發、業務開發即可。
? ? ? ? 有了som開發板,就相當于是mcu準備好了,接下來自己只需要在底板適配好電源、復位、輸入、輸出、boot config和usb otg下載即可。這比單純的som設計,要容易得多。底板設計,和mcu設計也是幾乎一模一樣的。所以說,掌握了mcu電路設計,就可以很容易擴展到soc電路設計。
6、有利于將來的商務拓展
? ? ? ? 企業里面的工作安排,每一個人的工作基本都是固定分配好的,大家像流水線一樣,各司其職一起合作。但是,這種合作也會讓個人依附于平臺,缺少獨立面對客戶的能力。很多需求,客戶需要的是一個方案,這個方案可能涉及到需求理解、協議交付、軟件、硬件、商務好幾個方面。如果自己在熟悉業務的同時,把硬件這部分也及時補上,就算不是特別精通,那也不至于特別拉跨。這樣,在和別人溝通的時候,可以聊技術,也可以聊商務,效率要比純商務,高很多。
7、一人企業不是不可能
? ? ? ? 目前外部的大環境,對于大齡程序員,或者對于crud的開發同學都是不友好的。這種情況下,就要想辦法拋棄打工的思維,多想想自己可以做什么,能夠提供什么樣的服務。如果自己是做嵌入式開發的,那么可不可以提供軟、硬件整套服務呢?可不可以提供開發板、提供上位機?就算是將來有業務,是不是開一個一人公司?這樣的公司不一定大,老板自己就是那個核心,所有的人都是作為助手協助老板落實業務。
? ? ? ? 就算公司的業務規模不大,至少從邏輯上,這種形式是自洽的、合理的。所以,很多時候,大家對自己的限制都是來自于社會的約定,但是并沒有釋放個人真正的競爭力。況且現在由于chatgpt等ai工具的出現,這種公司小型化的操作會越來越多,越來越普遍。