怎么學單片機?也常看到有人說學了好幾個月可就是沒有什么進展。當然,受限于每個人受到的教育水平不同和個人理解能力的差異,學習起來會有快慢之分,但我感覺最重的就是學習方法。一個好的學習方法,能讓你事半功倍,這里說說我學習單片機的方法。
1、萬事開頭難、要勇敢邁出第一步。
開始的時候,不要老是給自己找借口,說KEIL不會建項目啦、沒有實驗板啦之類的。遇到困難要一件件攻克,不會建項目,就先學它,這方面網上教程很多,隨便找找看一下,做幾次就懂了。
然后可以參考別的人程序,抄過來也無所謂,寫一個最簡單的,讓它運行起來,先培養一下自己的感覺,知道寫程序是怎么一回事,無論寫大程序還是小程序,要做的工序不會差多少,總得建個項目,再配置一下項目,然后建個程序,加入項目中,再寫代碼、編譯、生成HEX,刷進單片機中、運行。
必須熟悉這一套工序。個人認為,一塊學習板還是必要的,寫好程序在上面運行一下看結果,學習效果會好很多,仿真器就看個人需要了。單片機是注重理論和實踐的,光看書不動手,是學不會的。
2、知識點用到才學,不用的暫時丟一邊。
厚厚的一本書,看著人頭都暈了,學了后面的,前面的估計也快忘光了,所以,最好結合實際程序,用到的時候才去看,不必說非要把書從第一頁看起,看完它才來寫程序。比如你寫流水燈,完全就沒必要看中斷的知識,專心把流水燈學好就是了,這是把整本書化整為零,一小點一小點的啃。
3、程序不要光看不寫,一定要自己寫一次。
最開始的時候,啥都不懂,可以抄人家的程序過來,看看每一句是干什么用的,達到什么目的,運行后有什么后果,看明白了之后,就要自己寫一次,你會發現,原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距。當你自己能寫出來的時候,說明你就真的懂了。
4、必須學會掌握調試程序的方法。
不少人寫程序,把代碼寫好了,然后一運行,不是自己想要的結果,就暈了,然后跑到論壇上發個帖子,把程序一貼,問:為什么我的程序不能正常運行?然后就等別人來給自己分析。這是一種很不好的行為,應該自己學會發現問題和學會如何解決問題。
這就需要學習調試程序的方法,比如KEIL里,可以下斷點啦,查看寄存器內容等等,這些都是調試程序的手段,當你發現你寫的程序運行結果和你想象中不一樣的時候,你可以單步,也可以下斷點,然后跟蹤,查看各相關寄存器內容,看看程序運行過中是不是有什么偏差,找出影響結果的地方,改正過來。這一個過程非常重要,通過程序的排錯,你可以學到的知識是書上得不到的。
5、找到解決問題思路比找到代碼更重要。
我們用單片機來控制周邊器件,達到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學會找出這個解題思路,比你找到代碼更為重要。
不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復制到自己的程序中,可以說,這不是一種學習的態度,無助于你編程水平的提高。
我幾乎不怎么看人家的代碼,多數時候是看別人的思路,有方框圖最好,沒有的話文字說明也可以,要從代碼中看出別人處理問題的思路,是相當困難的,特別是大型的程序,看起來是非常的累人,所以現在我也明白了,以前讀書時說的程序流程圖很重要。當你知道一個問題怎么去解決了,那么剩下的只是你安排代碼去完成,這就已經不是什么問題了。
6、開動腦筋,運用多種方法,不斷優化自己的程序。
想想用各種不同方法來實現同一功能。這是一個練習和提高的過程,一個問題,你解決了,那么你再想想,能不能換種寫法,也可以實現同一功能,或者說,你寫出來的代碼,能不能再精簡一點,讓程序執行效率更高,這個過程,就是一個進步的過程。很多知識和經驗的獲得,并不是直接寫在書讓你看就可以得到的,需要自己去實踐,開動腦筋,經驗才能得到積累,編程水平才能有所提高。
7、看別人的代碼,學習人家的思路。容-源-電-子-網-為你提供技術支持
本文地址:http://www.189yp.com/dz/22/15486397143121.shtml
本文標簽:
猜你感興趣:
運用單片機便是了解單片機硬件結構,以及內部資源的運用,在匯編或C語言中學會各種功用的初始化設置,以及完成各種功用的程序編制。 運用按鈕輸入信號,發光二極管顯現輸出
關鍵詞:51單片機PIC單片機單片機 所屬欄目:設計編程
現場總線技術已經廣泛應用于工業控制中,尤其是CAN(Controler Area Nerwork)總線由于具有可靠性高、成本低、容易實現等優點,在現場總線實際工程應用中占有了較大份額。
關鍵詞:單片機 所屬欄目:設計編程
我的答案是:不可以原因如下:一、軟件仿真多用于教學,把更多精力用在軟件的實現上由于學生學習時間寶貴,焊接一套單片機實驗板又比較花時間,并且實驗項目太多,所以為了
關鍵詞:PIC單片機51單片機單片機 所屬欄目:設計編程
對于新手來說,首先根據自己學的什么樣單片機就選什么類型的單片機,熟悉什么類型的單片機就選什么類型的單片機。因為單片機不僅要設計電路,還要設計控制軟件。選自己熟悉的單片機上手最快,也最容易獲得成功。下面介紹如何選擇最適合的單片機。
關鍵詞: 所屬欄目:設計編程
單片機晶振的作用是什么
在初學單片機的時候,總是伴隨很多有關于晶振的問題,其實晶振就是如同人的心臟,是血液的脈搏,把單片機的晶振問題搞明白了,51單片機的其他問題
關鍵詞:51單片機PIC單片機單片機 所屬欄目:設計編程
Keil單片機編程軟件Keil C51是單片機C語言軟件開發系統,與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。Keil提供了包括C編譯器、宏匯
關鍵詞:51單片機PIC單片機 所屬欄目:設計編程
詳解51單片機運行過程 注:1.ROM:只讀存儲器,單片機的只讀存儲區大多用于存儲程序固又稱程序存儲器。51單片機是EPROM,所謂的EPROM是可擦除的只
關鍵詞: 所屬欄目:設計編程
pic單片機和c51有什么區別(區別1)總線結構:MCS-51單片機的總線結構是馮-諾依曼型,計算機在同一個存儲空間取指令和數據,兩者不能同時進行;而PIC單片機的總線結構是哈佛結構
關鍵詞:單片機PIC單片機51單片機 所屬欄目:設計編程
實例分析51單片機出現故障及解決辦法。詳細如下:
故障現象:做了一個單片機溫度監測系統,仿真機上一切正常,燒寫芯片無法工作。相關電路框圖: 用51做處理器,外圍電路如
關鍵詞:單片機51單片機 所屬欄目:設計編程
PIC單片機匯編語言指令詳解
pic單片機為最常用單片機之一,許多程序均基于pic單片機進行開發。因此,熟練pic單片機編程尤為重要。為保證大家能準確、熟練掌握pic單片機的使
關鍵詞:PIC單片機單片機 所屬欄目:設計編程
三種51單片機程序下載方法介紹
一般只能通過三種方式下載程序到單片機中:1.JTAG 2.ISP 3.IAP1.JTAG要使用JTAG方式下載程序,不管是使用J-LINK、ULINK、ST-LINK,只需要把
關鍵詞:PIC單片機51單片機單片機 所屬欄目:設計編程
I2C每一位信號的時序流程,而I2C通信在字節級的傳輸中,也有固定的時序要求。I2C通信的起始信號(Start)后,首先要發送一個從機的地址,這個地址一共有 7位,緊跟著的第 8
關鍵詞:PIC單片機51單片機單片機 所屬欄目:設計編程
越來越多的測量儀器提供GPIB(General Purpose Intefface Bus)總線接口,通過該總線可以方便快捷地連接帶有GPIB接口的儀器及計算機,組成一個GPlB網絡。GPIB設備與計算機連
關鍵詞:PIC單片機51單片機單片機 所屬欄目:設計編程
每個單片機系統里都有晶振,全程是叫晶體震蕩器,在單片機系統里晶振的作用非常大,他結合單片機內部的電路,產生單片機所必須的時鐘頻率,單片機的一切指令的執行都是建立
關鍵詞:51單片機PIC單片機單片機 所屬欄目:設計編程
引言變頻調速作為交流電機調速的主要手段已經在工業領域中應用的十分廣泛,其具有的調速范圍寬、穩速精度高、動態響應快、適用范圍廣、運行可靠等技術性能,已逐步取代直流
關鍵詞:單片機變頻器 所屬欄目:設計編程
電子密碼鎖按照輸入密碼方式的不同可分為好多種,其中最常用的一種是用數字鍵盤輸入密碼的電子密碼鎖。這一講主要介紹用ATmega8和LCD1602液晶顯示器等組成的電子密碼鎖,這
關鍵詞:單片機 所屬欄目:設計編程
1.實驗任務如圖所示,監視開關K1(接在P3.0端口上),用發光二極管L1(接在單片機P1.0端口上)顯示開關狀態,如果開關合上,L1亮,開關打開,L1熄滅。2.電路原理圖3.系統
關鍵詞:單片機LEDLED電路圖 所屬欄目:設計編程
近日,有媒體報道稱,北京微電子技術研究所日前成功研制出國內首個自主可控的宇航用千萬門級高性能高可靠FPGA(現場可編程門陣列)芯片。FPGA一直是國內的短板,市場基本被
關鍵詞:單片機 所屬欄目:設計編程
在單片機中有一些獨立的存儲單元是用來控制這些器件的,被稱之為特殊功能寄存器(SFR)。 <特殊功能寄存器地址映象表(一)> <特殊功能寄存器地址映象表(二)> <
關鍵詞:單片機寄存器 所屬欄目:設計編程
倒立擺作為一種典型的控制系統實驗裝置,具有非線性、自然不穩定等特性,常用來作為檢驗某種控制理論或方法是否合理的典型方案。一階倒立擺系統能用多種理論和方法來實現其
關鍵詞:單片機 所屬欄目:設計編程