電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 32|回復(fù): 0
收起左側(cè)

開發(fā)板學(xué)不到的7大核心技能

[復(fù)制鏈接]

262

主題

262

帖子

1265

積分

三級會員

Rank: 3Rank: 3

積分
1265
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2024-9-14 08:01:00 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
你點擊藍字關(guān)注,回復(fù)“入門資料”獲取單片機入門到高級開掛教程
開發(fā)板帶你入門,我們帶你飛

文 | 無際(微信:2777492857)
全文約1622字,閱讀大約需要 5 分鐘
有老鐵說,學(xué)開發(fā)板和我們項目有什么區(qū)別?我覺得區(qū)別還是挺大的,我們也是從開發(fā)板學(xué)起的,開發(fā)板的盡頭,是把外設(shè)調(diào)通即可。有些老鐵吐槽,說開發(fā)板坑啊,教程講的太基礎(chǔ)啥的。我說,要感謝他們,降低了學(xué)習(xí)的門檻,大家定位不一樣,開發(fā)板的定位是教你學(xué)會這款芯片的使用,而不是教你做項目,教程能開源,就很不錯了,也就靠硬件掙錢。沒人會純粹為情懷而分享系統(tǒng)的教程,但凡是分享,都帶目的的,只是時間問題,務(wù)必記住這句話。等到了某個階段,想被割,都找不到資源的時候,才叫造孽,比如工作中的問題,成長過程中的瓶頸問題等等…在實際產(chǎn)品開發(fā)中,調(diào)通單片機外設(shè),僅完成了10%的工作量,90%都是在處理產(chǎn)品功能邏輯。拿串口舉例,開發(fā)板僅僅是調(diào)通串口發(fā)送和接收字節(jié)數(shù)據(jù)即可。但實際應(yīng)用時,肯定會接不同的傳感器和模塊,比我們無際單片機項目6接的4G模塊。 第二步通過串口發(fā)送AT指令,去實現(xiàn)發(fā)短信、打電話、以及用4G連接服務(wù)器。第三步,要實現(xiàn)產(chǎn)品具體短信內(nèi)容,電話呼叫邏輯,服務(wù)器還涉及到協(xié)議設(shè)計,解析等等。其中的重點和難點有:1.要掌握AT指令集每種4G模塊都有自己特定的AT指令集,需要仔細研究模塊文檔,這個過程能學(xué)會解讀廠商文檔,理解不同指令的功能、參數(shù)和返回值。

實際上,自己去看這些文檔,哪怕能看懂AT指令,落實到應(yīng)用上,也會有很多問題。還需要知道AT指令使用場景和流程,我們的經(jīng)驗是以前做產(chǎn)品積累的,都是找原廠的技術(shù)支持,然后自己踩坑調(diào)試出來的。這個過程最直接的就是能培養(yǎng)閱讀技術(shù)文檔的能力,學(xué)完以后,以后用移遠的模塊,也很熟了,這公司的模塊市場占有率非常高,很多產(chǎn)品都在這個型號。             2. 程序狀態(tài)機設(shè)計4G模塊有多個工作狀態(tài)(初始化、注冊網(wǎng)絡(luò)、撥號等),需要設(shè)計復(fù)雜的狀態(tài)機。

以上是我們項目6這部分的代碼,我們以前產(chǎn)品,就是這樣去設(shè)計的,不用擔心學(xué)到的,偏離實際工作的問題。 這個過程,能學(xué)習(xí)如何設(shè)計和實現(xiàn)可靠的狀態(tài)轉(zhuǎn)換邏輯,培養(yǎng)復(fù)雜系統(tǒng)的設(shè)計能力,屬于功能經(jīng)驗類的知識,這是開發(fā)板學(xué)不到的。          3. 串口數(shù)據(jù)解析AT指令的返回數(shù)據(jù)格式復(fù)雜,需要編寫解析架構(gòu)和算法。


以上是無際單片機項目6的AT字符串匹配代碼。這個過程能提升了實際數(shù)據(jù)處理能力,而不僅僅是簡單的發(fā)送接收。          4. 異步通信處理4G模塊可能隨時發(fā)送狀態(tài)信息,需要設(shè)計異步處理機制。



我們采用的是隊列方式先緩存,在通過狀態(tài)機方式發(fā)送。這個過程能學(xué)習(xí)數(shù)據(jù)環(huán)形緩沖區(qū)設(shè)計等,能深入理解了嵌入式系統(tǒng)的異步編程模型。
5. 容錯機制實際環(huán)境中可能出現(xiàn)各種異常(如沒檢測到SIM卡,信號丟失、模塊無響應(yīng)),我們在寫程序時,要考慮到各種因為環(huán)境或者其它導(dǎo)致的功能異常情況,這是產(chǎn)品穩(wěn)定性的關(guān)鍵細節(jié)。

這個過程能學(xué)到錯誤檢測和恢復(fù)機制,能學(xué)到我們對于一些可靠性設(shè)計的思維,這在實際項目中極其重要。          6.調(diào)試技巧比如用STLink或者串口去調(diào)試通訊數(shù)據(jù)等實用的技巧。
7.電源管理我們項目1,4,5這種探測器,是用電池功能,所以要考慮到省電,通過項目能學(xué)到我們?nèi)崿F(xiàn)低功耗的方法。   

雖然功能不復(fù)雜,但是我們第一次做低功耗產(chǎn)品,也是踩了很多坑的。不同的項目,類似的細節(jié)還有很多,這就是為啥只有工作了,才能真正成為工程師的原因,涉及的細節(jié)太多了,而且大多數(shù)細節(jié)問題在網(wǎng)上都找不到答案的。    end


下面是更多無際原創(chuàng)的個人成長經(jīng)歷、行業(yè)經(jīng)驗、技術(shù)干貨。
1.電子工程師是怎樣的成長之路?10年5000字總結(jié)
2.如何快速看懂別人的代碼和思維
3.單片機開發(fā)項目全局變量太多怎么管理?
4.C語言開發(fā)單片機為什么大多數(shù)都采用全局變量的形式
5.單片機怎么實現(xiàn)模塊化編程?實用程度讓人發(fā)指!
6.c語言回調(diào)函數(shù)的使用及實際作用詳解

7.手把手教你c語言隊列實現(xiàn)代碼,通俗易懂超詳細!

8.c語言指針用法詳解,通俗易懂超詳細!
回復(fù)

使用道具 舉報

發(fā)表回復(fù)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

關(guān)閉

站長推薦上一條 /1 下一條


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表