99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

入坑單片機的成長之路

傳感器技術(shù) ? 來源:傳感器技術(shù) ? 作者:傳感器技術(shù) ? 2020-12-24 14:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

寫這篇文章的初衷要從最近帶我一個朋友入坑學(xué)習(xí)單片機的經(jīng)歷開始講起;

我要用梁靜茹給我的勇氣寫寫如何入坑單片機;

我的一個朋友以前是汽車電子技術(shù)專業(yè),畢業(yè)之后去做了和汽車相關(guān)的工作,修了一年車;

其實干一行愛一行,三百六十行,行行出狀元,確實挺好的;

不過修車總給他一種一眼看到頭的感覺(子非魚,安知魚之樂?對不起,他自己告訴我的);

于是,他跳槽了,找了一份電子工程師的工作;

工作內(nèi)容和我差不多,平日里打打雜;

平淡的日子就這樣重復(fù)著,直到有一天,他說想學(xué)單片機;我準(zhǔn)備給他支支招。

基礎(chǔ)部分

DAY 1

第一天,幫他整理了整體的學(xué)習(xí)路線,基礎(chǔ)知識篇;

C語言是一本必須掌握的編程語言,看視頻的效率相對來說會高一點,所以我給他推薦了B站 浙大翁愷老師的C語言視頻;

因為視頻還挺長的,我只推薦他看了比較基礎(chǔ)的部分,做一下課后習(xí)題,掌握基本的語法,if,while,for等語句;

紙上得來終覺淺,學(xué)單片機還是重在實踐;為了開源節(jié)流,我把以前吃灰的STM32開發(fā)板拿給他,畢竟資料很多嘛,學(xué)起來也方便;

理想是很豐滿:原本計劃用cubemx+st官方的HAL庫來進行實踐,畢竟B站還有之前開發(fā)板的配套資料也不少;

現(xiàn)實卻很骨感:

裝cubemx軟件就搞的滿頭大汗了,最后是安裝的JDK版本不對,直接裂開,一個晚上時間沒了;

我給他操作了一遍使用cubemx配置自動生成代碼,然后點亮一個LED,整個過程很順利,沒有寫一行代碼,但是我給他解釋代碼的時候,他是完全懵逼的狀態(tài),不知其所以然,這里有十萬個黑人問號臉!??!

好吧,畢竟HAL庫封裝的很不錯,感覺對新手不太友好(前面提到他C語言基礎(chǔ)還不是很扎實);

后來我知道他偷偷跑去看結(jié)構(gòu)體和指針的內(nèi)容了。

看來還是得用51單片機,因為簡單,可以先點亮一個燈,建立起興趣;

給他推薦了某寶的一塊51單片機開發(fā)板,隨便找的,功能都大同小異;

DAY 2 —DAY N

開發(fā)板隔天就到了,看配套視頻,寫下了單片機的hello world,然后燈就亮了;

#include sbitLED=P1^0; voidmain(void){ LED=1; while(1){ } }

同樣是點亮一個LED,但是這次好像有內(nèi)味道了,看到實驗成果,他笑出了豬叫;

后面給他推薦了郭天祥的視頻《十天學(xué)會單片機》;

看視頻,一邊補充C語言知識,一邊對照著每個單片機講解視頻進行學(xué)習(xí),視頻中的講解大多比較淺顯易懂,對于新手比較友好;

把課后習(xí)題一個一個做掉,流水燈,數(shù)碼管,串口,定時器,外部中斷,初步掌握這些基本的外設(shè)的應(yīng)用之后,

他還嘗試做了一個循跡小車;雖然循跡小車比較簡單,但是很有里程碑意義的,這里面涉及到傳感器技術(shù),直流電機的驅(qū)動,以及微控制器等技術(shù);

雖然《十天學(xué)會單片機》的視頻標(biāo)題略顯浮躁,但是作為入門,他花的時間遠比十天要長,所以新手千萬不要因為自己學(xué)得沒有別人快而焦慮,產(chǎn)生挫敗感,從而自我否定,自我懷疑;

但是需要及時思考和總結(jié)自己的學(xué)習(xí)方法是否高效,是否有辦法優(yōu)化效率;

最后,按照我個人的觀點(如有偏駁,請輕拍),對于零基礎(chǔ)的新手,方法策略是實踐;

剛開始要避免學(xué)習(xí)冗雜的理論,選擇簡單友好的開發(fā)環(huán)境,不是一上來就是啃厚厚的理論書,學(xué)習(xí)工具鏈,學(xué)習(xí)Linux環(huán)境,匯編,這樣學(xué)習(xí)曲線太陡峭,容易產(chǎn)生挫敗感;

設(shè)置階段性的學(xué)習(xí)目標(biāo),可以拆分成容易完成的小任務(wù),每完成一個任務(wù)都能形成正向反饋,增加信心,從而堅信自己能學(xué)好,能繼續(xù)學(xué)下去;

掌握對單片機進行應(yīng)用的方法之后,可以以點帶面,再對知識盲區(qū)進行掃盲,從而拓寬知識的廣度同時,增加深度;

回歸正題

好了,下面言歸正傳,問題是如何系統(tǒng)地學(xué)習(xí)單片機,所以本文著眼于討論如何系統(tǒng)地學(xué)習(xí)單片機,而單片機這門技術(shù)是否有前景,則不做闡述。

如何系統(tǒng)地學(xué)習(xí)單片機?我感覺很難系統(tǒng)學(xué)習(xí),因為這是一個多學(xué)科交叉的技術(shù);

另外,如果你用單片機做不同的項目,應(yīng)用到不同的領(lǐng)域,那有可能會涉及新的知識盲區(qū);

所以是掌握好單片機這個技術(shù)的理論知識作為基礎(chǔ)支撐,然后不斷拓展自己的知識面,不斷提高知識深度;

下圖是我平時整理的思維導(dǎo)圖,做的不是很好,都是每次想到一些就補充一些,所以還有些凌亂;

如果覺得對你有幫助,可以在[小麥大叔]公眾號后臺回復(fù)[技術(shù)思維導(dǎo)圖]領(lǐng)取xmind格式的文件;

貼這張圖的目的是什么呢?只是想說明和單片機相關(guān)的技術(shù)會涉及到很多東西,所以著眼點應(yīng)該是加強基礎(chǔ)知識的建設(shè);

基礎(chǔ)編程

C語言必須精通,但絕非一朝一夕的事情,需要大量時間去實踐,去寫代碼,去調(diào)試,去做項目,同時還得學(xué)習(xí)理論,通過實踐加深理解,推薦書籍《C 和指針》,《C 陷阱與缺陷》等;

語言只是工具,學(xué)會了C語言,你已經(jīng)知道如何砌磚了,但是如何把樓蓋高,蓋牢,蓋的好看呢?

這時候,就需要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu),算法和設(shè)計模式,這里推薦《算法導(dǎo)論》,《代碼大全》都不錯,也是經(jīng)典了,而且這兩本書也會長期陪伴著你;

再到后面,發(fā)現(xiàn)裸機編程已經(jīng)很難滿足學(xué)習(xí)欲望了,這時候可能會學(xué)習(xí)實時系統(tǒng)了,FreeRTOS,RTThread,都是十分優(yōu)秀的項目;

慢慢地學(xué)會讀這些項目的源碼,讀優(yōu)秀項目的源碼,這是提高很快的途徑;

這時候,還不夠,操作系統(tǒng),微機原理(EE)/計算機組成原理(CS),這些書可以操作起來了;

后來還可能會接觸到Linux,這是個龐然大物,LKD,LDD,ULK,這三本書,就夠啃了;當(dāng)然前提還得學(xué)會Linux環(huán)境下編程,shell腳本,makefile等等等,內(nèi)容太多了,我對Linux涉獵不是很深入,如果是做應(yīng)用的話,AUPE啃一下,一定會受益匪淺的;

硬件部分

模擬電子技術(shù)和數(shù)字電子技術(shù),如果是EE科班都會開設(shè)這兩門課程的,如果是非科班,零基礎(chǔ),可以自學(xué)一下;

推薦麻省理工的公開課《電路與電子學(xué)》,教授講得很好,里面已經(jīng)涵蓋了模電和數(shù)電的內(nèi)容;

原理圖設(shè)計,能看懂?dāng)?shù)據(jù)手冊,根據(jù)項目需求進行電子元器件的選型;

前提是,熟悉最基本的電子元器件,阻容,磁珠,MOS管,二極管等等;

另外還有功能元器件也需要了解,運放,數(shù)字IC,存儲芯片等等;

但是這還遠遠不夠,可能還要板載電源,用LDO,還是DCDC,如果是DCDC還得考慮紋波,噪聲等等,不過這好像和單片機又扯遠了(通常會有專門電源工程師),如果沒有,那你上;

PCB的Layout,需要學(xué)習(xí)一款EDA軟件,Altium designer用的比較多,Pads,開源的KiCad也不錯,多用用就熟練了,不懂的多問搜索引擎;

Layout的設(shè)計規(guī)范可以參考一下華為的設(shè)計規(guī)范,注意一下板機的EMC,布線,鋪銅,接地方式以及回流面積,如果是低速板,相對難度會小一點,硬件的坑很深,甚踩;

最后我想說的是最重要的還是實踐,實踐,實踐,自己做個板子,發(fā)出去打樣,現(xiàn)在打樣還是很便宜了,甚至連SMT都包了,軟件靠精力,硬件靠經(jīng)歷,多爬坑,學(xué)的就多了,會的也就多了,技術(shù)在于積累。

總結(jié)

本文簡單介紹了學(xué)習(xí)單片機的技術(shù)路線,分別從軟件角度和硬件角度給出了簡單的方法,單片機開發(fā)是軟硬結(jié)合的,所以軟件的學(xué)習(xí)和硬件的學(xué)習(xí),缺一不可;

筆者能力和水平有限,文中難免存在錯誤和紕漏,請大佬不吝賜教。

原文標(biāo)題:我的單片機成長之路

文章出處:【微信公眾號:傳感器技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6067

    文章

    44991

    瀏覽量

    650394
  • 元器件
    +關(guān)注

    關(guān)注

    113

    文章

    4834

    瀏覽量

    95129

原文標(biāo)題:我的單片機成長之路

文章出處:【微信號:WW_CGQJS,微信公眾號:傳感器技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    KF32A136系列單片機產(chǎn)品介紹

    F32A136 系列單片機是基于 KF32 內(nèi)核架構(gòu)開發(fā)的單片機。
    的頭像 發(fā)表于 06-27 11:42 ?527次閱讀
    KF32A136系列<b class='flag-5'>單片機</b>產(chǎn)品介紹

    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機學(xué)習(xí)之路!

    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機學(xué)習(xí)之路!即刻開啟W55MH32學(xué)習(xí)之旅!本教系列程配套官方手冊與W55MH32L開發(fā)板,從外設(shè)功能框圖解析到代碼實操,助你掌握高性能以太網(wǎng)單片機的架構(gòu)和核心原理,輕松駕馭多接口及以
    的頭像 發(fā)表于 05-07 18:51 ?367次閱讀
    即刻啟程,踏上W55MH32高性能以太網(wǎng)<b class='flag-5'>單片機</b>學(xué)習(xí)<b class='flag-5'>之路</b>!

    單片機科普總結(jié),建議收藏!

    單片機(MicrocontrollerUnit,MCU)作為嵌入式系統(tǒng)的核心之一,在現(xiàn)代電子產(chǎn)品中無處不在。從智能家居、汽車電子,到工業(yè)控制、醫(yī)療設(shè)備,單片機支撐著無數(shù)智能化應(yīng)用的發(fā)展。對于初學(xué)者
    的頭像 發(fā)表于 04-07 11:58 ?2041次閱讀
    <b class='flag-5'>單片機</b>科普總結(jié),建議收藏!

    什么是單片機的ADC接口

    在嵌入式系統(tǒng)和工業(yè)自動化領(lǐng)域,單片機(Microcontroller)作為核心控制單元,承擔(dān)著數(shù)據(jù)采集、處理和控制的重要任務(wù)。其中,模數(shù)轉(zhuǎn)換器(Analog-to-Digital Converter
    的頭像 發(fā)表于 02-03 11:27 ?2265次閱讀

    51單片機pwm和spwm

    51單片機pwm
    發(fā)表于 01-08 15:54 ?3次下載

    單片機Debug工具性能對比 單片機調(diào)試常用命令

    單片機(Microcontroller Unit, MCU)調(diào)試是嵌入式開發(fā)中的一個重要環(huán)節(jié),它幫助開發(fā)者發(fā)現(xiàn)和修復(fù)代碼中的錯誤,優(yōu)化程序性能。不同的單片機和開發(fā)環(huán)境可能使用不同的調(diào)試工具和命令
    的頭像 發(fā)表于 12-19 09:56 ?1419次閱讀

    如何優(yōu)化單片機項目的功耗

    在現(xiàn)代電子設(shè)計中,功耗優(yōu)化已成為一個不可忽視的重要議題。對于單片機(MCU)項目而言,功耗不僅關(guān)系到產(chǎn)品的能效比,還直接影響到電池壽命和熱管理。 硬件層面的功耗優(yōu)化 1. 選擇合適的單片機 選擇一個
    的頭像 發(fā)表于 11-01 14:16 ?1279次閱讀

    單片機編程語言有哪些選擇

    單片機(Microcontroller Unit,MCU)編程是指為單片機編寫程序的過程,這些程序控制單片機的行為和功能。單片機廣泛應(yīng)用于嵌入式系統(tǒng),如家用電器、汽車電子、工業(yè)控制等領(lǐng)
    的頭像 發(fā)表于 11-01 14:13 ?2423次閱讀

    單片機怎么寫入程序

    單片機(Microcontroller Unit,MCU)是一種集成電路芯片,它將計算機的CPU、存儲器、輸入/輸出接口等功能集成在一個芯片上。單片機廣泛應(yīng)用于嵌入式系統(tǒng)和物聯(lián)網(wǎng)設(shè)備中。編寫單片機
    的頭像 發(fā)表于 10-21 11:21 ?2421次閱讀

    單片機的中斷機制

    單片機的中斷機制是一種重要的處理方式,它允許單片機在執(zhí)行主程序的過程中,能夠暫停當(dāng)前任務(wù),轉(zhuǎn)而處理外部或內(nèi)部緊急事件。這種機制極大地提高了系統(tǒng)的響應(yīng)速度和處理能力,使得單片機在各種應(yīng)用領(lǐng)域中得到廣泛應(yīng)用。以下是對
    的頭像 發(fā)表于 10-17 18:03 ?1970次閱讀

    單片機出現(xiàn)故障怎么維修

    單片機出現(xiàn)故障時,維修過程需要系統(tǒng)地檢查和診斷,以確定故障的根本原因,并采取相應(yīng)的修復(fù)措施。以下是一個詳細的單片機維修指南,旨在幫助技術(shù)人員或愛好者有效地解決單片機故障問題。
    的頭像 發(fā)表于 10-17 17:57 ?3640次閱讀

    單片機異常復(fù)位的原因

    單片機異常復(fù)位是指單片機在正常工作過程中,非預(yù)期地返回到初始狀態(tài)或重啟。這種異常復(fù)位現(xiàn)象可能由多種因素引起,以下是對單片機異常復(fù)位原因的詳細分析:
    的頭像 發(fā)表于 10-17 17:56 ?3106次閱讀

    單片機燒錄程序用什么軟件

    單片機燒錄程序是單片機開發(fā)過程中的一個重要環(huán)節(jié),涉及到將編寫好的程序代碼通過燒錄器寫入單片機的ROM中,以實現(xiàn)對單片機的控制。 燒錄器的類型 燒錄器是用于將程序代碼寫入
    的頭像 發(fā)表于 09-02 10:05 ?3434次閱讀

    單片機燒錄程序的基本步驟是什么

    單片機燒錄程序是單片機開發(fā)過程中非常重要的一步,它涉及到將編寫好的程序代碼通過一定的方式傳輸?shù)?b class='flag-5'>單片機內(nèi)部的存儲器中,使單片機能夠按照預(yù)定的邏輯執(zhí)行任務(wù)。 一、硬件準(zhǔn)備
    的頭像 發(fā)表于 09-02 09:47 ?2754次閱讀

    單片機引腳懸空是什么電平

    單片機引腳懸空是指單片機的I/O引腳在沒有連接任何外部電路的情況下,引腳的電平狀態(tài)。懸空引腳的電平狀態(tài)取決于單片機的內(nèi)部結(jié)構(gòu)和外部環(huán)境因素。 單片機引腳懸空的電平狀態(tài)
    的頭像 發(fā)表于 08-28 09:51 ?4842次閱讀