① 單片機學習的難點在哪裡,本人從事多年的電氣維修和弱電工程工作,對模擬電路比較熟,一直想學單片機
單片機的難點在於,很多人想脫離硬體而妄想用軟體來控制硬體,這就是它的難點。其實,你只要記住,單片機的作用就是控制IO口和控制寄存器的操作,所有的單片機操作都離不開這兩個。IO口就是輸入輸出口,而寄存器則可能是單片機內部寄存器和外部資源的寄存器。如果你已經清楚的知道,硬體和軟體是不可分離的,那麼像C語言這種只要靠時間,總會掌握的東西,就不算是難事。有些人,自以為單片機很簡單,以為單片機就是C語言,那就大錯特錯了,切忌不要重軟體輕硬體,這樣,你的程序才能比別人更高效,更精練。至於C語言,其實就是一種編程的方式罷了,C語言如果沒有涉及,沒有把握去掌握,那麼你就試試掌握匯編。匯編是一種低級語言,但它比C語言高效,更能充分的利用單片機的性能。但無論哪種語言,都是用英文構成,誰讓這是他們發明的呢。建議你先從匯編學起,在學C語言,匯編能讓你更了解單片機,而C語言則能用更簡單的語言寫單片機,但這並不意味著它更高效,只是對於我們更容易寫,對於單片機則不一定了,我只能告訴你匯編更高效。而且,你也要清楚一點,匯編不比C語言簡單,也正因為其不夠靈活和自由,所以很多人不喜歡,但牛人都懂匯編。還有,建議你理論和實踐相結合,自己買個板練練,如果你會畫PCB,那就自己做個板,晶元也不貴,至少低端的就幾塊錢,不然就淘寶上買個,不用太貴的,幾十塊夠了。還有,要有耐心,不過你既然有耐心搞模擬電路,那麼應該是很有耐心的。重點:不要脫離硬體,我所謂的硬體是指單片機的內部構造。
② 單片機到底難學嗎
單片機難學。
單片機(Microcontroller)是一種在一個晶元上集成了中央處理器(CPU)、存儲器(RAM和ROM/Flash)、輸入輸出設備(I/O ports)和定時器(Timers)等核心功能的小型計算機系統。
3. 需要動手實踐:
學習單片機不僅僅是理論知識,還需要實際動手進行項目開發。這需要具備一定的實際操作能力,包括使用開發板、連接電路、調試程序等。
解決方法: 可以購買單片機開發板,按照相關教程進行實際操作。在實踐中,你會學到很多實用的技能和經驗。
4. 需要耐心和實踐:
學習單片機需要不斷的實踐和耐心。有時候,你的程序可能不會一次就成功,需要不斷調試和修改。這就需要有足夠的耐心和毅力。
解決方法: 在遇到問題時,不要輕易放棄。可以查閱資料、向社區求助,或者嘗試不同的方法解決問題。實踐和錯誤都是學習的過程,通過不斷的實踐和調試,你會積累豐富的經驗。
③ 學習單片機難么
學習單片機的難度因個人的背景知識和學習能力而異。以下是一些常見的因素,可能會影響學習單片機的難度。首先,編程經驗對學習單片機有很大幫助。如果你已經熟悉C語言或其他類似編程語言,學習單片機將更為容易。其次,電子基礎知識對於理解單片機至關重要。掌握電壓、電流、電阻和數字與模擬信號等基本概念,有助於更好地學習單片機。
學習資源的豐富性也會影響學習難度。你可以選擇多種學習資源,如教科書、在線教程、視頻教程等。根據自己的需求和學習風格,挑選適合自己的學習資源,有助於更好地理解和掌握單片機的概念和技術。此外,實踐經驗是學習單片機的重要部分。通過實際操作和項目練習,可以加深理解並提高技術能力。有機會進行實際項目設計和電路連接,將有助於鞏固知識。
盡管學習單片機可能具有一定的挑戰性,但對於有興趣並投入足夠時間和努力的人來說,並不會很難。通過系統學習、實踐和堅持,你可以逐漸掌握單片機的知識和技能。學習單片機的過程中,不斷挑戰自我,勇於嘗試,你會發現自己在電子領域中逐漸有所建樹。
為了更好地學習單片機,建議制定一個詳細的學習計劃。首先,確定學習目標,明確需要掌握的知識點。然後,選擇適合自己的學習資源,並制定學習時間表。在學習過程中,定期回顧和總結所學內容,確保理解並掌握知識點。同時,積極參與實際操作和項目練習,通過實踐加深理解。
最後,保持積極的學習態度,相信自己能夠克服學習中的困難。學習單片機的過程可能會遇到挫折,但不要輕易放棄。遇到問題時,可以向老師、同學或在線社區尋求幫助。積極解決問題,不斷積累經驗,你會逐漸提高自己的技能水平。
④ 單片機難學嗎
學習單片機其實並不困難,如果你已經具備了良好的C語言編程基礎,以及模擬電路和數字電路的知識,那麼掌握單片機技術將會更加容易。單片機的學習重點在於實踐,只要入門之後,通過持續學習和反復練習,你就能逐步提升自己的能力。
有條件的話,建議購買一塊開發板,這將極大地幫助你進行實際操作。初學者可以先從學習別人的常式開始,通過這些常式了解單片機的基本工作原理和編程方法。一旦掌握了這些基礎知識,就可以開始嘗試編寫自己的小程序。在這個過程中,你可能會遇到一些問題,但正是這些問題和挑戰,會促使你不斷學習和進步。
單片機的學習是一個循序漸進的過程。剛開始時,可能需要花費更多的時間和精力去理解和掌握基本概念,但隨著你不斷積累經驗和知識,你會發現這個過程變得越來越輕松。關鍵是保持耐心和持續的努力,不要因為初期的困難而放棄。
實踐是學習單片機的關鍵。通過實際操作,你不僅能加深對理論知識的理解,還能培養解決實際問題的能力。你可以從簡單的程序開始,逐漸挑戰更復雜的功能。在這個過程中,你將會發現自己的進步,並且越來越享受這個學習過程。
總之,單片機的學習並不難,重要的是要有耐心,不斷實踐,並且善於總結經驗。只要你願意付出時間和努力,你就能克服學習中的困難,最終成為一名優秀的單片機工程師。
⑤ 單片機原理及應用難學嗎
單片機原理及應用需要學習低級匯編語言和C語言。學習具有一定難度。但只要有恆心是一定能學好的。
1)編程語言:
a)匯編語言(assembly language)是一種用於電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。在匯編語言中,用助記符(Mnemonics)代替機器指令的操作碼,用地址符號(Symbol)或標號(Label)代替指令或操作數的地址。在不同的設備中,匯編語言對應著不同的機器語言指令集,通過匯編過程轉換成機器指令。
b)C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
2)單片機(Microcontrollers)是一種集成電路晶元,是採用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊矽片上構成的一個小而完善的微型計算機系統,在工業控制領域廣泛應用。從上世紀80年代,由當時的4位、8位單片機,發展到現在的300M的高速單片機。
3)由於單片機對成本是敏感的,所以目前占統治地位的軟體還是最低級匯編語言(近幾年,C語言也開始廣泛被應用),它是除了二進制機器碼以外最低級的語言了,既然這么低級為什麼還要用呢?很多高級的語言已經達到了可視化編程的水平為什麼不用呢?原因很簡單,就是單片機沒有家用計算機那樣的CPU,也沒有像硬碟那樣的海量存儲設備。一個可視化高級語言編寫的小程序裡面即使只有一個按鈕,也會達到幾十K的尺寸!對於家用PC的硬碟來講沒什麼,可是對於單片機來講是不能接受的。 單片機在硬體資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計算機上的操作系統和應用軟體拿到家用PC上來運行,家用PC也是承受不了的。
4)應用分類
a.通用型/專用型,這是按單片機適用范圍來區分的。例如,80C51是通用型單片機,它不是為某種專用途設計的;專用型單片機是針對一類產品甚至某一個產品設計生產的,例如為了滿足電子體溫計的要求,在片內集成ADC介面等功能的溫度測量控制電路。
b.匯流排型/非匯流排型,這是按單片機是否提供並行匯流排來區分的。匯流排型單片機單片機普遍設置有並行地址匯流排、 數據匯流排、控制匯流排,這些引腳用以擴展並行外圍器件都可通過串列口與單片機連接,另外,許多單片機已把所需要的外圍器件及外設介面集成一片內,因此在許多情況下可以不要並行擴展匯流排,大大減省封裝成本和晶元體積,這類單片機稱為非匯流排型單片機。
c.控制型/家電型,這是按照單片機(Microcontrollers)大致應用的領域進行區分的。一般而言,工控型定址范圍大,運算能力強;用於家電的單片機多為專用型,通常是小封裝、低價格,外圍器件和外設介面集成度高。 顯然,上述分類並不是惟一的和嚴格的。例如,80C51類單片機既是通用型又是匯流排型,還可以作工控用。
⑥ 為什麼說單片機難學呢大約要學它什麼東西呢
學習使用單片機就是理解單片機硬體結構,以及內部資源的應用,在匯編或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招降龍十八掌,但還不到打慎漏遍天下無敵手的境界。即使如此,也算是單片機
大蝦了。