雷竞技推荐码怎么获得

 找回密碼
 raybet12
查看: 1080|回複: 0
打印 上一主題 下一主題

如何提高單片機編程水平

[複製鏈接]
跳轉到指定樓層
樓主
發表於 2022-3-2 22:14:02 | 隻看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
第一次自學的是java,學完基本語法,好像懂了,又好像啥都不懂。
通俗點講,就是做項目毫無思路。
後麵接觸到了單片機,深入了解後,發現這個編程簡單,有java基礎學c語言也賊快。
就是電路比較複雜,特別是模電,還好後麵發現並不需要太深的模電功底。
果斷買了塊開發板,按著教程順藤摸瓜,一個多月基本把開發板上的功能都實現了一遍。
曆史總是驚人的相似,雖然單個外設功能都會用,但一做項目就一臉懵。
後麵又做了一個智能小車項目,買了配件,也沒視頻教程,就看商家提供的教程死磕。
最後又自己獨立寫了一遍,做完以後明顯感覺自己水平提升了。
主要有幾方麵的提升:
1.學會看別人的項目代碼了
這個能力特別重要,雖然看得過程比自己寫還痛苦,實際工作中也經常要去看別人寫的代碼。
剛開始公司也不會讓你去研發產品,會讓你維護老產品,改代碼。
後麵你想提升,也需要有這項能力。
2.編程思維
也就是實現功能的思維,這個也是非常重要的。
如果你沒做過這種功能,最好的方法就是學習別人的實現的思路。
一般某種功能,你做過了,下次做就懂了。
這個隻能不斷通過項目去積累,在開發板上學不到。
3.編程水平
懂實現的思路和你能用代碼寫出來又是兩碼事。
我的辦法還是先模仿別人的代碼,然後分析他這樣寫有什麼好處。
過程也是比較痛苦的,但是隨著你經驗的積累,後麵會越來越輕鬆,最終達到望眼欲穿的高度。
做完智能小車不久,我就找到工作了。
剛開始接觸最多的是STC51和NXP的單片機。
工作了2,3年左右,基本大多數的單片機產品我都能把代碼獨立寫出來。
那個時候感覺自己已經很牛逼了,單片機編程太簡單不能滿足自己了。
直到後麵去到一家做導航的公司,有涉及到gps、菜單、雷達檢測等功能。
我才知道自己的水平有多渣,才知道以前做的產品都太簡單了。
這家公司讓我的水平也提升了不少,以前一直不知道多級菜單怎麼做,從那以後知道了。
主要還是看老工程師代碼學出來的,掌握看懂別人代碼的能力很重要,能貫穿你整個職業生涯。
可以說那1年不到的時間頂我前麵做2,3年。
有時候不是說你做的越久,水平越厲害,關鍵還是看你周邊有沒有高手可以學習。
你在公司做1年,基本對公司產品就很熟悉了,都是同類型的,可能改改電路改改代碼就是一款新產品了。
呆久了,對你來說基本都是重複工作,水平提升也很緩慢。
這是我第一次水平有較大的提升,也重新刷新了對單片機編程的認知,並沒想象簡單。
第二次是後來跳槽到一家做物聯網網關的公司,有語音、菜單、無線數據軟解碼、OTA、4G、Wifi之類的功能。
這應該是我有史以來碰到過最複雜的一個產品了。
類似於我們無際單片機編程實戰課程裏的第三個項目。
隻是為了很多基礎差的學員能快速上手,我把一些產品功能簡化了,盡量留下最常用最核心的東西。
雖然做了這麼多年,但是讓我獨立去做這個產品還是很吃力的。
主要是功能太多了,腦子就容易亂,不知道該怎麼整合。
做這個項目之前,我還把以前上班那些老工程師的代碼又重新研究了一下,看有沒有什麼能用的東西。
就這樣,一個地方拚湊一點,最後再慢慢消化創新形成了自己的東西。
這個項目我大概做整整一年,最後還是沒做穩定,因為那個時候第三方雲平台都不成熟。
主要是底層協議有漏洞,還有app不是很給力,導致用戶體驗感很差。
比如做離線推送功能,總是有很多型號的手機推送不了的。
所以,做物聯網的產品,很難做穩定就是這個原因。
涉及的東西太多,不是硬件穩定就行,還得看雲平台和做app的經驗是否足夠豐富。
再加上聯調都是遠程溝通,很多細節很難理解到位,開發周期也長。
這個項目對我的成長是最大的,就是有點費紅牛。
隻要沒特別的事,每天早上我基本都是最先到公司,公司也是初創公司。
老板每次看到我都很感動,這麼上進的員工不多了。
其實我是對這個項目很感興趣,一直想做這種中大型項目,就是沒機會。
我和大家的想法其實是一樣的,就是想盡快讓自己具備獨立做項目的能力,不管大小項目。
有時候,我經常在想,如果第一份工作那2年,就能接觸到這種項目並有人帶。
或許我2年就能達到別人5年甚至以上的水平。
再後麵,就是接觸了藍牙協議棧之類的開發,有了前麵的沉澱以後,研究起來輕鬆多了。
藍牙協議棧的係統算是我目前接觸到比較好的非RTOS了。
所以,我決定把它精簡以後,移植到STM32上麵來,以後為我所用。
雖然之前也寫過一個經過批量驗證的程序架構,但畢竟還是簡陋了一點。
比如說隊列功能,隻能入列和出列字節數據,如果能傳輸任意數據類型就更靈活了。
這個架構也是開源的,並在19年隨便錄了套視頻,有興趣可以去看看,對編程水平提升還是有挺大幫助。
最後總結:想快速提升自己編程能力,還是得不斷通過項目積累,但也是有捷徑可走的,就是跟資深工程師做項目,同樣是積累,效率天差地別。

回複

使用道具 舉報

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

本版積分規則

雷竞技推荐码怎么获得 ( )

GMT+8, 2024-8-28 02:39

Powered by © 2011-2022 www.hazyshadow.com 版權所有 免責聲明 不良信息舉報

技術驅動未來! 雷竞技推荐码怎么获得—專業電工基礎知識雷竞技 pc版學習網站。

欄目導航: 工控家園 | 三菱plc | 西門子plc | 歐姆龍plc | plc視頻教程

快速回複 返回頂部 返回列表