導航:首頁 > 操作系統 > 51單片機學習

51單片機學習

發布時間:2022-03-31 09:34:30

『壹』 學習51單片機,應該先學什麼

應該先學習數字電路基礎和模擬電路基礎,然後用一款單片機入門,可以是STC系列的任何一款

『貳』 學習51單片機,應該先學什麼

你好,
一是必須得有較好的C語言基礎,如果是匯編語言非常熟練的話也行.
二是買一個單片機開發板,淘寶上有很多.
三是弄本關於51單片機應用的書,然後在網上看51單片機的介紹.
四是天天拿著電腦調試開發板贈送的程序,一定想清楚來龍去脈.
五是動手焊接一些外部電路吧.
o(∩_∩)o
希望回答對你有所幫助

『叄』 怎樣學習51單片機

單片機學習如何入門LUOKUI很多搞電子類行業的朋友都夢想自己成為搞硬體的高手,然而搞硬體難就難在沒有頭緒,學習硬體技術找到一個合適的入手點是最重要的。比較流行的硬體技術有數字系統設計、模擬電路系統設計、射頻電路系統設計以及以上三類的混合。模擬與射頻的設計入門門檻比較高而且市場份額比較小,因此學習硬體技術從數字電路入手是最容易而且是最具基礎性的,而數字電路的設計又以單片機的學習為基礎,學習單片機不僅僅是學習一項技術,更重要的是建立起一種數字系統設計的概念,為以後學習其他高檔數字器件以及模擬、射頻電路打下基礎。現在單片機的主流仍然是8位單片機(例如MCS51、AVR、PIC、NEC、瑞薩系列)以及少數16位單片機(例如MSP430、凌陽系列)。在學校的單片機教學中,幾乎都是以MCS51為主。但實際應用中卻不是這樣,在國外的DIY愛好者中,PIC單片機是最流行的;在國內,AVR單片機非常火。所以我要先談談單片機學習的兩種路子。其一是傳統的穩扎穩打型:從MCS51的匯編語言設計以及硬體電路設計開始入手,匯編語言程序設計熟悉了之後(這大概需要半年至一年的時間),對MCS51的內部硬體構成也有了很深的理解,這時再學習51單片機C語言設計(因為實際的大工程不可能用匯編完成),51的資源很有可能不夠用,就要換用其他型號的單片機(例如AVR、430)。這種路子的優點在於基礎厚實,MCS51的匯編語言運用熟練之後,學習其他單片機會很容易上手。但從匯編向C語言的思維轉變是一個比較痛苦的過程。其二是自頂向下型:選定一種實際工程中比較實用的單片機,直接學習怎樣使用C語言來開發它,在較短的時間內掌握對其IO口、定時器、中斷的操作,然後再慢慢了解晶元內部的硬體構成細節。這種路子的優點有很多:初入門時不需要花比較長的時間去學習單片機內部硬體構成結構之類很枯燥的東西,只要明白C語言的變數與單片機的IO口等模塊的寄存器、一個函數與單片機的一項功能、順序語句與單片機的順序輸出、條件語句與單片機的輸入輸出間條件關系、循環語句與單片機的反復型輸出是怎樣映射的就可以完成很多範例項目的開發,可以保持住學習的興趣;可以直接學習實際工程中用得到的東西,不必完成從MCS51向其他單片機的轉變。我推薦大多數的,尤其是已經參加工作的初學者朋友,走第二種路子,而且推薦大家採用AVR系列單片機中的ATmega16來入門。因為AVR相比51和其他單片機有諸多優點。首先是最小系統設計容易,只需要連接電源、焊接晶振就可以工作,尤其是對時鍾精度要求不太高的話晶振都可以省去,因為AVR帶有內部RC振盪器,相比之下51單片機需要外接上電復位電路(AVR內部自帶這個電路而且性能比51的RC復位要好)、EA/VPP引腳要上拉、P0口要上拉等等,光建立最小系統就是很麻煩的一件事。其次很多概念初學者理解起來更容易,AVR的時鍾源(晶振、內部RC等)不經過分頻直接提供給CPU使用,例如AVR外接10MHz的晶振其CPU的時鍾周期就是1/10MHz=0.1uS,而51的時鍾源要12分頻後提供給CPU,12MHz的晶振對應的CPU時鍾頻率是1MHz,這一點尤其是在計算定時器相關的設置時AVR非常方便。第三,相比例如PIC、430等其他單片機,AVR既具有簡單的、可以自製的ISP下載線和Jtag模擬器,又有DIP直插的封裝形式,而且網路上AVR有關的中文資料非常多,尤其是有Atmel公司官方翻譯的中文技術文檔,大大方便初學者的入門。.第四,AVR的C語言編程與教科書上學習的C語言語法是幾乎一樣的,不像51的C語言,一些bit、srf之類的變數定義在教科書中是找不到的,在更高層次的ARM、DSP的C語言中也是沒有那樣用的,僅僅是51獨有的用法,尤其是bit變數的用法很「匯編化」,會給後續的嵌入式系統的程序設計形成不好的思維模式。而AVR的設計很入嵌入式系統設計的主流,有利於後續的發展。說了這么多「空洞」的東西,我們說點比較實在的吧,我也是初學者過來的,比較了解初學者的心理,恨不得你給他制定出第一步、第二步、第三步該干什麼,那我就按照這個模式講一下:Step1,准備萬用板三塊,查找Jtag、ISP的電路,焊接,用掉兩塊板;剩下的一塊用來焊接AVR的最小系統。Step2,在ATmega16的一個8位IO口上焊接8個LED(注意要串接220歐姆限流電阻哦)。Step3,寫一個流水燈的小程序。

『肆』 怎麼學習51單片機如何入門

早了,起碼要學了數電和模電以後,尤其是數電

『伍』 51單片機,難不難學啊

51算是單片機里好學的了,在中國用的很廣泛,所以網上、書店裡可尋到的資料也很多,這一點對入門和提高尤為重要!在購買書籍資料這方面建議多多考慮清華大學出版社、北航出版社和國防科技大學出版社的,這幾個出版社的書講得比較好,而且很少出現錯誤。網站嘛,建議多去ednchina逛逛。最好在QQ里多加一些單片機方面的群,平時與大家交流交流進步會很快的!
希望我的回答對你有所幫助!最後祝你順利學會!

『陸』 怎樣自學單片機

我單片機也是自學的,不過我不太會說話,簡單說一下吧。
最重要的一個呢就是要有興趣,如果自己是沒有什麼興趣的,那就別學了。
有興趣,但沒基礎並不是什麼問題。
首先一個,數電的一些基本知識,邏輯,高低電平,觸發器,簡單的時序電路。這些都要會。
還有模電,(元增民的書很好)簡單的就可以了,現在不是設計電路。上拉,下拉,二極體,三極體,放大,運放,AD,DA轉換,了解一下這些,要知道這些是怎麼一回事。
C語言,可以直接學一下標准C,推薦譚浩強的《c語言程序設計》,入門容易,也系統些。然後學C51,很容易了。也可以兩樣一起學,把標准C作為工具書來查,比較推薦這個。
C語言的重要性不用說,但匯編也是同樣重要的。所以還要學一下匯編,可能剛開始看匯編很亂,不過可以先用C語言寫,C熟悉了,再用匯編來寫,把自己之前寫的C程序寫成匯編的。
還有常用常見的一些晶元器件要會用,比如說時鍾晶元,測溫晶元,鎖存器,解碼器,串列轉並行,並行轉串列等這些,這些在初學單片機時都會學到的,對以後也是很有用的。
其實,以上那些知識,數電,模電,C語言,匯編可以一起來,你用到哪些,就去學哪些,現學現在用,最重要的是多動手,多寫程序,多思考,不懂的自己想想,想不明白就問別人。
板子的話我學的時候自己是學有買板子的,一個是用模擬軟體,一個是去學校的實驗室,不過我知道天祥的板子做得很好,相信你也會知道網上有郭天祥十天學會單片機的視頻。當然啦,十天學會那是不可能的,不過他的板子確實很好,雖然貴了一點,但不一定說就一定要買他的板子。網上有一些是他的那板子的改進版,就是加進了其它的模塊和功能,也可以考慮,因為我自己沒買過,鏈接就給不了你了。你可以自己上去看一下,看評論好的買。
記住,不要自己閉門造車,那樣是不可能學會的。一定要多動手,實踐才是最重要的。而且要腳踏實地。等自己覺得有些上手了,我覺得你可以經常在網路知道留意這方面的問題,幫人家解決一些問題(不是寫程序),幫助別人的同時其實你自己也是在進步的,別人遇到的問題說不定也是你以後會遇到的。然後自己做一些小東西出來,比如說做一個時鍾啊,或是時鍾加測溫的。簡單的防盜,或是做一個萬用表,等等這些,都是很好用的。

『柒』 有關51單片機的學習

有了這些基礎你學起來相當快了,先做一個最小系統,再一步步地在最小系統上加一些外擴設備,這樣才能一步步地練會。別買人家現成的開發板,那樣,你什麼也學不會,除了編了幾個沒有用的程序。

書就不用買了,你去網路文庫下吧,那裡大部分經典的書都有!要先看講解匯編的,再看看C的

『捌』 51單片機該怎麼學

開發板的話就選 郭天祥的
淘寶上很多的
也不貴

1、熟悉單片機的原理,結構;
2、學好數電,模電,為設計電路打好基礎;
3、熟練使用C語言,多學習別人的程序;
4、對操作系統原理有一定的了解;
5、Protel至少要有點基礎;
6、要實際動手調試電路的能力。

學習單片機的步驟

當前的單片機種類很多,但是 51 是最基礎的,因此單片機的學習最好也是從 51 開始,不僅容易上手,而且相當實用。然而 51 單片機畢竟過於基礎,後來的很多單片機在功能上都有很大的擴展,因此按照我們實驗室多數人的路線接下來大多數人會學習 AVR 單片機, AVR 單片機在功能上較 51 有很大提升,集成了 A/D 、快速 PWM 等很多實用的功能,而且和很多大型的單片機在功能上有很多類似之處,因此如果以後還想掌握其他單片機 AVR 無疑是一個很好的跳板。

學習的過程

學習單片機最終要的是當然是練,我所說的學習跟課堂上的單片機學習不同,我以前也看過一些單片機教材,有些教材講的是單片機的工作原理和內部結構,這些東西對於我們暫時並不需要,等以後開課的時候在學習好了。現在要學習的是暫時拋開內部結構原理不談,如何能用單片機寫一些簡單的小程序,是從實用性的角度出發,網上有一種說法稱之為先實踐後理論的學習方法。

因此我的觀點如下,單片機的硬體結構首先要有一個基本的了解,最起碼要知道各引腳的功能、區別,能自己動手搭一個單片機的最小系統,然後就可以直接從程序入手,程序最好還是用 C 語言編程,從簡單的跑馬燈做起,逐漸深入,陸續可以做一些數碼管、液晶、 DS1302 、 DS18B20 等電子元器件的應用,在深入就可以結合一些具體實例擴展一些中斷、串口通訊等功能。還有一點要聲明的是單片機里用到的 C 語言其實很有限,課堂上學習 C++ 的很大一部分內容在初期單片機編程中都用不到,因此沒必要因為覺的自己的 C 語言基礎不是很好而對單片機望而止步!

學習的工具

軟體方面方面, 51 單片機用的是 KEIL 軟體,這個軟體在學校圖書館軟體下載和其他網站上都有,具體用法自己查找相關資料, AVR 的軟體就比較多了,我用的是 CVAVR ,另外還有 ICCAVR 等多款編譯軟體,這要看個人喜好了,建議有了一定的 51 基礎再學。另外就是燒寫軟體,燒寫軟體的作用就是將編譯器生成的 HEX 文件燒寫至單片機里,這要配合下載線實用,如果有並口的話最好用並口下載線,軟體最好用廣州雙龍的 SLISP 軟體,如果是筆記本沒有並口的話則要自己買一個下載器了,名稱為 USBASP ,網上電子市場有賣 20 塊錢左右,軟體會隨光碟自帶。

硬體方面,首先是要有單片機,對於單片機有一點要注意, 51 單片機最好買 89S51 、 89S52 這兩種型號,上面我所說的燒寫程序是 ISP 方式,這兩種單片機支持 ISP 下載,所以如果買其他型號的燒寫程序可能會不太方便, AVR 單片機常用的就是 ATmega16L 其它型號的區別也不是很大,甚至有些兼容。至於單片機開發板,目前的價格都很貴,從一百到幾百不等,不過像上次學校里廣告的那個六十多塊錢的最好還是免了,沒什麼作用。能買一塊當然好,沒有的話也不要緊,自己動手買個電路板搭一下也很方便,引出 ISP 介面,燒寫程序十分容易,然後將 I/O 口引出擴展也很方便。

學習單片機的其它幾個注意點:

1 .理論與實踐並重
對一個初學單片機的人來說,如果按教科書式的學法,上來就是一大堆指令、名詞,學了半天還搞不清這些指令起什麼作用,也許用不了幾天就會覺得枯燥乏味以致半途而廢。所以學習與實踐結合是一個好方法,邊學習、邊演練,循序漸進,這樣用不了幾次就能將所用到的指令理解、吃透、紮根於腦海,甚至 「 根深蒂固 」 。也就是說,當你學習完幾條指令後 ( 一次數量不求多,只求懂 ) ,接下去就該做實驗了,通過實驗,使你感受到剛才的指令產生的控制效果,眼睛看得見 ( 燈光 ) 、耳朵聽得到 ( 聲音 ) ,更能深刻理解指令是怎樣轉化成信號去實現控制的,通過實驗看到自己所學的成果不僅有一種成就感也能提升你對單片機的興趣。說句實在話,單片機與其說是學出來的,還不如說是做實驗練出來的,何況做實驗本身也是一種學習過程。因此邊學邊練的學習方法,效果特別好。
2 .合理安排時間持之以恆
學習單片機不能 「 三天打魚、兩天曬網 」 ,要有持之以恆的毅力與決 4 心。學習完幾條指令後,就應及時做實驗,融匯貫通,而不要等幾天或幾個星期之後再做實驗,這樣效果不好甚至前學後忘。另外要有打 「 持久戰 」 的心理准備,不要興趣來時學上幾天,無興趣時涼上幾星期。學習單片機很重要的一點就是持之以恆。

3 .遇到問題耐心檢查

單片機有軟硬體兩方面的內容,有時一個程序怎麼調都不出效果,然而從理論分析卻又是對的,這是就要仔細找原因了,學習單片機經常碰到很多問題,有時一兩天都不能解決,這是就要有耐心,從底層找起,相信每找出一個錯誤都會有一個新的收獲。切不可輕言放棄!!!
4 .對只短暫學過一遍的知識,充其量只比浮光掠影稍好。因此,較好的方法是過一段時間後 (1-2 個月 ) 再重新學一遍,學過的知識要經常運用,這樣反復循環幾次就能徹底弄懂消化,永不忘卻。
5 .要進行適當投資購買實驗器材及書籍資料
單片機技術含金量高,一旦學會後,給你帶來的效益當然也高,無論是應聘求職還是自起爐灶開廠辦公司,其前景都光明無限。因此在學習時要捨得適當投資購買必要的學習、實驗器材。另外還要經常去科技圖書店看看,購買一些適合自己學習、提高的書籍。一本好的書籍真的很重要,可以隨時翻閱,隨時補充不懂或遺忘的知識。

學習使用單片機就是理解單片機硬體結構,以及內部資源的應用,在匯編或C語言中學會各種功能的初始化設置,以及實現各種功能的程序編制。
第一步:數字I/O的使用
使用按鈕輸入信號,發光二極體顯示輸出電平,就可以學習引腳的數字I/O功能,在按下某個按鈕後,某發光二極體發亮,這就是數字電路中組合邏輯的功能,雖然很簡單,但是可以學習一般的單片機編程思想,例如,必須設置很多寄存器對引腳進行初始化處理,才能使引腳具備有數字輸入和輸出輸出功能。每使用單片機的一個功能,就要對控制該功能的寄存器進行設置,這就是單片機編程的特點,千萬不要怕麻煩,所有的單片機都是這樣。

第二步:定時器的使用 學會定時器的使用,就可以用單片機實現時序電路,時序電路的功能是強大的,在工業、家用電氣設備的控制中有很多應用,例如,可以用單片機實現一個具有一個按鈕的樓道燈開關,該開關在按鈕按下一次後,燈亮3分鍾後自動滅,當按鈕連續按下兩次後,燈常亮不滅,當按鈕按下時間超過2s,則燈滅。數字集成電路可以實現時序電路,可編程邏輯器件(PLD)可以實現時序電路,可編程式控制制器(PLC)也可以實現時序電路,但是只有單片機實現起來最簡單,成本最低。
定時器的使用是非常重要的,邏輯加時間控制是單片機使用的基礎。

第三步:中斷

單片機的特點是一段程序反復執行,程序中的每個指令的執行都需要一定的執行時間,如果程序沒有執行到某指令,則該指令的動作就不會發生,這樣就會耽誤很多快速發生的事情,例如,按鈕按下時的下降沿。要使單片機在程序正常運行過程中,對快速動作做出反應,就必須使用單片機的中斷功能,該功能就是在快速動作發生後,單片機中斷正常運行的程序,處理快速發生的動作,處理完成後,在返回執行正常的程序。中斷功能使用中的困難是需要精確地知道什麼時候不允許中斷發生(屏蔽中斷)、什麼時候允許中斷發生(開中斷),需要設置哪些寄存器才能使某種中斷起作用,中斷開始時,程序應該干什麼,中斷完成後,程序應該干什麼等等。
中斷學會後,就可以編制更復雜結構的程序,這樣的程序可以干著一件事,監視著一件事,一旦監視的事情發生,就中斷正在乾的事情,處理監視的事情,當然也可以監視多個事情,形象的比喻,中斷功能使單片機具有吃著碗里的,看著鍋里的功能。
以上三步學會,就相當於降龍十八掌武功,會了三掌了,可以勉強護身。

第四步:與PC機進行RS232通信

單片機都有USART介面,特別是MSP430系列中很多型號,都具有兩個USART介面。USART介面不能直接與PC機的RS232介面連接,它們之間的邏輯電平不同,需要使用一個MAX3232晶元進行電平轉換。

USART介面的使用是非常重要的,通過該介面,可以使單片機與PC機之間交換信息,雖然RS232通信並不先進,但是對於介面的學習是非常重要的。正確使用USART介面,需要學習通信協議,PC機的RS232介面編程等等知識。試想,單片機實驗板上的數據顯示在PC機監視器上,而PC機的鍵盤信號可以在單片機實驗板上得到顯示,將是多麼有意思的事情啊!

第五步:學會A/D轉換

MAP430單片機帶有多通道12位A/D轉換器,通過這些A/D轉換器可以使單片機操作模擬量,顯示和檢測電壓、電流等信號。學習時注意模擬地與數字地、參考電壓、采樣時間,轉換速率,轉換誤差等概念。
使用A/D轉換功能的簡單的例子是設計一個電壓表。

第六步:學會PCI、I2C介面和液晶顯示器介面

這些介面的使用可以使單片機更容易連接外部設備,在擴展單片機功能方面非常重要。

第七步:學會比較、捕捉、PWM功能

這些功能可以使單片機能夠控制電機,檢測轉速信號,實現電機調速器等控制起功能。
如果以上七步都學會,就可以設計一般的應用系統,相當於學會十招降龍十八掌,可以出手攻擊了。

第八步:學習USB介面、TCP/IP介面、各種工業匯流排的硬體與軟體設計學習USB介面、TCP/IP介面、各種工業匯流排的硬體與軟體設計是非常重要的,因為這是當前產品開發的發展方向。

到此為止,相當於學會15招降龍十八掌,但還不到打遍天下無敵手的境界。即使如此,也算是單片機大蝦了
是否可以解決您的問題?

『玖』 學習51單片機,如何起步

新手學習單片機,往往感覺到不好入門,無從下手。學習單片機過程,是一項理論與實踐並重的過程,只看書不實踐,或是只重視模仿,不重視理論的學習,是無法學習好單片機的,單片機的學習需要理論和動手,要學會抓住單片機的精髓,如定時器和中斷,多看書、多上網查資料、多記錄學習心得、看到別人遇到的問題,有能力幫助別人解決問題就多幫助,幫助的過程也是自己學習提高的過程。我相信每個人只要多加練習,假以時日,都可以成為一個精通單片機的能手!
一、新手學習單片機的步驟:
1、學習理論知識,了解單片機的基本原理、寄存器、中斷、定時器等的基本概念;
2、最好有一個開發板,在開發板上從最簡單的功能開始實現,比如做一個流水燈、蜂鳴器音樂盒等;
3、實現簡單的功能後,開始嘗試更復雜的程序,例如LCD顯示、數字時鍾、串口通信、中斷控制等;
4、在上述功能均可以實現之後,可以組合實現,做一個多功能的單片機系統了;
5、如果對硬體熟悉,可以自己嘗試做一個單片機開發板!
二、新手學習單片機的步驟:
1、理論是指導,要了解單片機的基本原理;
2、理論不是全部,需要動手去探索;
3、實際動手做出一個成品才是檢驗自己學習的理論是否正確的唯一標准
4、網上很多論壇,還有網路知道等,不會的先思考,自己找找原因。實在找不到的,多提問。
總之,新手學習單片機在持之以恆,不要一時興起學習一下,遇到困難就退縮。
51單片機超聲波DIY

『拾』 51單片機要學到什麼程度才能找到工作啊

①51單片機僅僅作為2個月左右的單片機入門型號。
②51單片機作為嵌入式學習的起點,與後面一貫相同的是看晶元手冊,看寄存器、通信協議等等。
③無論是51還是ARM(Cortex-M),重要的都不是玩轉晶元本身,而是與一些板載外設聯合起來實現項目需求,所以僅會玩晶元本身,進步是非常小的,找工作沒任何優勢。
④然後入門STM32,學習幾個RTOS(uCOS、FreeRTOS),再盡量往物聯網方向靠(學習RT-Thread、AliOS、LiteOS),現在找單片機工作,絕大多數都要求有藍牙、Wi-Fi、Zigbee、NB-Iot、Lora等開發經驗。
⑤單學51找到工作的概率 < 5%,即使真找到了,你的平台、待遇可想而知是非常糟糕的。
⑥若無意走嵌入式路線,更建議走互聯網方向(前端、Java啥的),嵌入式行業門檻確實高,相比來說互聯網方向簡單粗暴。

閱讀全文

與51單片機學習相關的資料

熱點內容
python集成包 瀏覽:303
如何用電腦解壓縮文件 瀏覽:446
pubg用什麼伺服器 瀏覽:526
田漢pdf 瀏覽:661
記錄儀如何安裝安卓系統 瀏覽:594
python求灰度均值 瀏覽:756
c編譯器是系統軟體嗎 瀏覽:694
獲取伺服器內網地址 瀏覽:536
新手媽媽如何帶新生兒APP 瀏覽:157
java日程管理 瀏覽:376
高清視頻鏈接加密 瀏覽:407
新買的阿里雲伺服器怎麼配置 瀏覽:612
在線編譯器為什麼刷新還在 瀏覽:213
雲伺服器系統盤可以裝資料庫 瀏覽:908
php繪制圖形 瀏覽:588
支付伺服器異常怎麼辦 瀏覽:77
java撥號 瀏覽:868
er5200如何設置虛擬伺服器 瀏覽:573
網路中心伺服器叫什麼 瀏覽:459
isplay單片機下載器 瀏覽:482