1. 51單片機怎麼入門
1、建議你買個開發板,200塊的配置都非常全了,硬體有個直觀認識
2、網上有視頻教程《十天學會單片機》、《力天手把手教你單片機》等一些可以讓你快速入門,看視頻做筆記,邊練習,進步很快。手頭應該有些比較全面的單片機的書,方便查閱。
3、如果沒有開發板,只有用proteus模擬軟體,我推薦《單片機C語言程序設計實訓100例——基於8051+Proteus模擬》這本書
請看郭天祥大師的《怎樣學習單片機》
很多單片機初學者問我的第一句話就是怎樣才能學好單片機?對於這個問題我今天就我自己是如何開始學單片機、如何開始上手、如何開始熟練這個過程給大家講講。先說說單片機,我們現在用的比較多的是8051單片機,它的資料比較多,用的人也較多,市場也很大,51單片機內部結構比較簡單,非常適合初學者學習,建議初學者將51單片機做為入門級晶元。單片機屬於硬體,我強烈不推薦大家使用單片機模擬軟體來學習單片機,也可以肯定的告訴大家,使用模擬軟體是學不會單片機的,硬體只有把它擺在你的面前,親自操作它,才會有深刻的體會,才能學明白它。單片機這門課是一科非常重視動手實踐的科目,不能總是看書,但是也不能完全不看書,我們需要從書中大概了解一下單片機的各個功能寄存器,如果看的多了反而容易搞亂,尤其是現在市場上大多數講單片機的書一開始就講解較復雜的內存、地址、存儲器什麼的,更讓初學者感到不知所雲、難以入門。簡單的說,當我們使用單片機時,實際上就是用我們自己編寫的軟體去控制單片機的各個功能寄存器,再簡單些,就是控制單片機哪些引腳的電平什麼時候輸出高,什麼時候輸出低。由這些高低變化的電平來控制外圍電路,實現我們需要的各個功能。
關於看書,大家只需大概了解單片機各引腳的功能,了解下寄存器。第一次、第二次你可能看不明白,但這不要緊,因為還缺少實際的感觀認識。所以我總是說,學單片機看書看兩三天就夠了,而我們要把更多的時間放到實踐中去,這才是最關鍵的,在實踐的過程有不懂之處再查書,這樣記憶才深刻。關於實踐有兩種方法你可以選擇,方法一、你自己花錢買一塊單片機的學習板,不要求那種價格上千塊功能太太全的,對於初學者來說你買功能太全的板子,上面有很多東西你這輩子都用不著,我建議有流水燈、數碼管、獨立鍵盤、矩陣鍵盤、AD 和DA、液晶、蜂鳴器、IIC匯流排、有USB擴展也最好,這些就差不多了。如果說我上面提到的這些功能你能熟練應用,那可以說對於單片機本身的操作你已經入門了,剩下的就是自己練習設計外圍電路,不斷的積累經驗。只要過了第一關,後面的路就好走多了,萬事開頭難,大家都聽過。方法二、你身邊如果有單片機方面的高手,向他求助,讓他幫你搭個簡單的最小系統板。對於高手來說,做個單片機的最小系統板可能只需要幾分鍾的時間,而對於初學者可就難多了,因為只有對硬體徹底了解了,你才能熟練的駕馭它。而如果你身邊沒有這樣的高手,又找不到可以幫助你的人,那我勸你還是選擇方法一,畢竟自己有一塊學習板要方便的多,以後做單片機類的小實驗時經常都能用得上,省時又省事。
有了單片機學習板之後你就要多練習,最好是自己有台電腦,少看電影,少打游戲,把學習板和電腦連好,打開調試軟體坐在電腦前,先學會怎麼用調試軟體,然後從最簡單的流水燈實驗做起,等你能讓那八個流水燈按照你的意願隨意流動時你已經入門了,你會發現單片機是多麼迷人的東西啊,太好玩了,這不是在學習知識,而是在玩,比起跑跑卡丁車,比起魔獸世界,要好玩的多的多。當你編寫的程序按你的意願實現時,你比做任何事都開心,你會上癮的,真的,做電子設計的人真的會上癮。然後讓數碼管亮起來,這兩項會了後,你已經不能自拔了。就是要這樣練習,在寫程序的時候你肯定會遇到很多問題,而這時你再去翻書找,或是問別人,或是上網搜索。當得到解答後你會記住一輩子的,知識必須應用於現實生活中,解決實際問題,這樣才能發揮它的作用,你自己好好想想,上了這么多年大學,天天上課,你在課堂上學到了什麼?是不是為了期末考試而忙碌呢?考完得了90分,哈哈哈好高興啊,過一個假期,甚至過一個周末,然後忘的一干二凈,是不是?你學到什麼了?我認為這樣的生活沒有意義。但是我告訴你單片機一旦學會,永遠不會忘了。
另外我再說說關於用匯編語言還是C語言編程的問題。很多同學大一、二就開設了C語言的課,我也上過,我知道那時上課老師講的就是幾乘幾、幾加幾、求個階乘、畫個星星、編個月亮什麼的。學完了有什麼用?雖然考試我考了90分,可我心裡比誰都明白,C語言到底是什麼?它有什麼用?到底它能做什麼我一無所知。我們不能過多的評價當今的高校教育,但我們必須得為自己負責任。讓你用C語言編單片機的程序你是不是就傻了?單片機編程用C語言或匯編語言都可以,但是我建議用C語言比較好,如果原來有C語言的基礎那學起來會更好,如果沒有,也可以邊學單片機邊學C語言,C語言很簡單,只是一門工具而已,我勸大家最好學好學精它,將來肯定用得著,要不然以後也得學,你一點匯編都不會根本無所謂,但你一點C語言都不會那你將來會吃苦頭。給大家推薦一本書,作者譚浩強,書名<程序設計>>,清華大學出版社,大家在學習本書的同時再參考上面提到的這本書更有利C語言學習。也根本沒必要再從頭把<程序設計>>學一邊,就算再學一邊也許結果還是和你現在一樣,最好的辦法就是用到哪裡學哪裡。匯編寫程序代碼效率高,但相對難度較大,而且很繁瑣,尤其是遇到演算法方面的問題時,根本是麻煩的不得了,現在單片機的主頻在不斷的提高,我們完全不需要那麼高效率的代碼,因為有高頻率的時鍾,單片機的ROM也在不斷的提高,足夠裝得下你用C語言寫的任何代碼,C語言的資料又多又好找,將來可移植性非常好,所以我勸大家用C語言。
總結上面,只要你有信心,做事能堅持到底,有不成功絕不放棄的強烈意志,那學個單片機對你來說就是件非常容易的事。建議步驟:
1 、看書大概了解一下單片機結構,大概了解就行。不用都看懂,又不讓你出書。
2 、用學習板練習編寫程序,學單片機主要就是練編程序,遇到不會的再問人或查書。
3 、自己網上找些小電路類的資料練習設計外圍電路。焊好後自己調試,熟悉過程。
4 、自己完全設計具有個人風格的電路、產品 … 你已經是高手了。
2. 單片機的學習方法
從剛開始接觸單片機,到現在已經有3年的時間了,在這期間學習和使用了51單片機、飛思卡爾單片機,LPC2138,PIC16F887等系列的單片機,每接觸一款單片機,都會經歷熟悉其基本開發,然後將其用於項目中的過程,對於如何學習一款單片機,自己做了如下的總結。
大家都知道,51單片機是最容易入門的,不僅因為其編程簡單,更重要的是網上的資料非常豐富。所以一般學習單片機開發的都將51單片機作為入門開發的首選。我學習51單片機的時候是採用這樣的一個步驟進行學習的:
第一步(熟悉的過程):在網上找學習資料,在網上看了很多。印像最深的要數王雲老師的雲龍51單片機視頻教程,因為這個教程從基礎到復雜的編程慢慢深入,邊講邊寫代碼,講的比較的全面,而且也生動,所以那一階段,也是我學習單片機進步最快的階段,這時對51單片機也就沒有感到陌生了。通過視頻讓我知道了該怎樣學習單片機,學習單片機,要從實驗入手,先熟悉單片機再說,開發語言開始使用的是C語言比匯編更好理解。
第二步(進階的過程):有了第一步的基礎之後,接下來的便是進階的過程,買了一款51單片機開發板,然後就開始了我的學習之旅,每次聽課的時候,按照上面的實驗,以及課堂上面調試程序時出現的一些問題,自己認真的在電腦上進行調試,並分析產生故障的原因,讓我有了一定的開發基礎。在看完了視頻教程之後,後面又對基礎的知識進行了下補習,主要是看單片機原理性的教材,因為有些細節性的東西還是要從教材上面獲得。圍繞單片機的LED燈進行控制,通過控制LED燈的亮、滅,熟悉了51單片機的內部的各種資源,這樣就能使我在很短的時間內,將51單片機內部的各個功能部件全部都使用到了。
第三步(項目實戰的階段):學習單片機的時候,雖然也編寫了一些程序,但是那些都是一些很小的模塊程序,並沒有起到綜合應用的目的,所以在這之後,我和另外一個學習硬體的同學一起組成了一個小的團隊,進行項目實踐開發,那時候,實驗室的條件比價好,有很多的器件可以自己使用。所以,我們就設計了我們的第一個作品,基於單片機的液體點滴監控系統。做這個系統時,就將以前單片機所學的知識,做了一個綜合的應用,包括有LCD1602控制,串口的控制等。
經過以上三個步驟的學習之後,對於51單片機的開發基本上就算入門了。而對於其他類型的單片機,如飛思卡爾單片機,LPC2148 ARM7單片機,PIC16F887等,雖然每個系列的功能不一樣,但是最基本的編程思想還是一樣的,不同的可能就是編譯器,程序下載的軟體等差別,所以有了51單片機的開發基礎之後,學習其他單片機所採用的方法就是一個差異化的學習,學習各種單片機不同的地方,這樣,就能很快的熟悉一款新的型號的單片機。
3. 怎樣學好單片機和C語言一起學可以嗎
應該分別系統的學習一下C語言和單片機
4. 本人以前一直學的單片機,現在想學STM32了,自學,請大家推薦一些視頻教程,不勝感激!
網上視頻很多,我當初看的正點原子的,感覺還可以。不過視頻時間有點短,最好配上他的書一起看
5. 請問哪位好友有51單片機學習ucosii跟我一起看書實踐的視頻
我有,這個是人家作者辛苦做出來的教學視頻,收費的,具體可以在淘寶上搜索。
6. 誰有跟我一起學單片機的教程
學習51單片機建議,網路打開嗶哩嗶哩網頁,找單片機的學習教程,很多。
網頁鏈接
7. 怎樣自學單片機
我單片機也是自學的,不過我不太會說話,簡單說一下吧。
最重要的一個呢就是要有興趣,如果自己是沒有什麼興趣的,那就別學了。
有興趣,但沒基礎並不是什麼問題。
首先一個,數電的一些基本知識,邏輯,高低電平,觸發器,簡單的時序電路。這些都要會。
還有模電,(元增民的書很好)簡單的就可以了,現在不是設計電路。上拉,下拉,二極體,三極體,放大,運放,AD,DA轉換,了解一下這些,要知道這些是怎麼一回事。
C語言,可以直接學一下標准C,推薦譚浩強的《c語言程序設計》,入門容易,也系統些。然後學C51,很容易了。也可以兩樣一起學,把標准C作為工具書來查,比較推薦這個。
C語言的重要性不用說,但匯編也是同樣重要的。所以還要學一下匯編,可能剛開始看匯編很亂,不過可以先用C語言寫,C熟悉了,再用匯編來寫,把自己之前寫的C程序寫成匯編的。
還有常用常見的一些晶元器件要會用,比如說時鍾晶元,測溫晶元,鎖存器,解碼器,串列轉並行,並行轉串列等這些,這些在初學單片機時都會學到的,對以後也是很有用的。
其實,以上那些知識,數電,模電,C語言,匯編可以一起來,你用到哪些,就去學哪些,現學現在用,最重要的是多動手,多寫程序,多思考,不懂的自己想想,想不明白就問別人。
板子的話我學的時候自己是學有買板子的,一個是用模擬軟體,一個是去學校的實驗室,不過我知道天祥的板子做得很好,相信你也會知道網上有郭天祥十天學會單片機的視頻。當然啦,十天學會那是不可能的,不過他的板子確實很好,雖然貴了一點,但不一定說就一定要買他的板子。網上有一些是他的那板子的改進版,就是加進了其它的模塊和功能,也可以考慮,因為我自己沒買過,鏈接就給不了你了。你可以自己上去看一下,看評論好的買。
記住,不要自己閉門造車,那樣是不可能學會的。一定要多動手,實踐才是最重要的。而且要腳踏實地。等自己覺得有些上手了,我覺得你可以經常在網路知道留意這方面的問題,幫人家解決一些問題(不是寫程序),幫助別人的同時其實你自己也是在進步的,別人遇到的問題說不定也是你以後會遇到的。然後自己做一些小東西出來,比如說做一個時鍾啊,或是時鍾加測溫的。簡單的防盜,或是做一個萬用表,等等這些,都是很好用的。
8. 如何自學單片機
當前的單片機種類很多,但是 51 是最基礎的,因此單片機的學習最好也是從 51 開始,不僅容易上手,而且相當實用。新手學習時注意以下幾點:
1、學習理論知識,書的話新手建議看看__王雲51單片機教程,結合書帶的視頻一起看好理解;王雲的單片機視頻網上到處都有。
2、最好有一個開發板,在開發板上從最簡單的功能開始實現,比如做一個流水燈、蜂鳴器音樂盒等;
3、實現簡單的功能後,開始嘗試更復雜的程序,例如LCD顯示、數字時鍾、串口通信、中斷控制等;
4、在上述功能均可以實現之後,可以組合實現,做一個多功能的單片機系統了;
5、如果對硬體熟悉,可以自己嘗試做一個單片機開發板!
9. 一起學單片機
匯編是為了應付考試,以後也會用到,不過不多。
C才是正道。