導航:首頁 > 操作系統 > 學單片機難嗎

學單片機難嗎

發布時間:2022-09-20 04:36:33

1. 單片機原理及應用難學嗎

單片機原理及應用需要學習低級匯編語言和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類單片機既是通用型又是匯流排型,還可以作工控用。

2. 單片機很難學嗎

單片機本身不難學,就看後續應用了。主要是學會控制其他外設。先從簡單的開始,動手去實現,用到什麼看什麼,學習起來比較快。

3. 為什麼說單片機難學呢大約要學它什麼東西呢

學習使用單片機就是理解單片機硬體結構,以及內部資源的應用,在匯編或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招降龍十八掌,但還不到打遍天下無敵手的境界。即使如此,也算是單片機

大蝦了。

4. 單片機好學嘛

難嗎?不難,就像用英語表示自己要說的話一樣簡單!

我在學校課程上掌握51單片機,然後自學掌握AVR,在工作之餘又自學了80C196單片機,然後只用幾天就入門了LPC2103——關鍵是方法,如果方法得當,任何單片機都難不倒你。

學習單片機的基礎:

數字電路和模擬電路:這兩樣是核心,必須的。

匯編語言程序設計和C語言程序設計(針對任何單片機):也是核心,必須的。

數學:你會發現數學在單片機中的分量不小。

英語:這個有點讓人糾結,畢竟單片機是外國生產的,看單片機的資料很多都是英文的(還好,沒有日語或者德語版本的……)。

開始學習單片機時,需要准備的材料:

電腦:自己有一台最好,而且要帶串口和並口。

開發板:學習單片機的平台,根據你學習的單片機來選擇開發板。

教材:強烈建議使用紙質的書本教材——你會發現這和看電子書的感覺和效率不一樣!

編譯環境:編寫單片機程序需要的軟體平台。

下載線、模擬器:根據需要來選擇,但是都要完成將程序寫入單片機的任務。

關於自學單片機:

自學完全可行,當然沒有專業指導的情況下自學單片機可能會走不少彎路和誤區,所以多上網看看別人的程序。

最後,強調一點:不要照搬別人的程序,要有自己的特色!

5. 初學者學習51單片機的難點在哪

如果不會C語言的話,用匯編語言就比較難,要記住所有的指令。用C語言比較簡單,但要了解單片機的硬體結構。

6. 單片機好學嗎

看你原來有沒有接觸過了,第一次學單片機從51開始入手,51是最基礎的單片機,編程語言選用C語言比較容易上手,開發軟體用keil4
for
c51!如果想掌握好的話,必須得買塊板子自己調試!以51入手,掌握了中斷、計數、通信等之後,再往外擴展其他單片機就容易的很多!我大學單片機就是學的51,後來用到stm32、430等單片機掌握起來就比較快了!另外頂樓上一句,如果想深入的話,一定要學好模電數電,編程離不開硬體調試!
單片機沒有好學不好學這個說法,只有看你願不願學,入門了你就會發現單片機的世界很精彩。

7. 學好單片機難么

最近在逛論壇,看到一個帖子,就分享了!
吳鑒鷹談一個單片機初學者的傲慢與偏見【轉載】

最近論壇上發了一個連載帖子——吳鑒鷹單片機實戰項目精講,因此受到不少網友的關注,在這里吳鑒謝謝各位網友的支持、關心和信任。
在帖子中留了幾個群號,有兩千多讀者加了群,通過QQ向我詢問了很多問題,如果在工作不是太忙的時候我看到了就會回答,但是有時候做項目太忙就沒時間解答。
為此,在這里應群內成員以及一些網友的要求,專門寫一篇文章來針對這些問題做一個總結。希望能為大家的疑惑有一點點幫助就足以。不足之處,也希望大家客觀指出,君子和而不同。

1、學習單片機有用嗎?
有很多初學者有這樣的困惑,單片機初學者感覺入門很難,學著學著,就會產生這樣的疑問——自己辛辛苦苦學習單片機,將來有用嗎?
單片機只是一個工具,重要的還是思想,有了自己的想法,電子行業地域遼闊,隨便你闖。單片機這個切入點入手還是不錯的,可以讓你盡快進入電子殿堂的大門,如果你還在上學,不要眼睛裡面只盯著暫時的薪水,哪怕是畢業兩三年的也一樣。重要的是掌握程度和對技術的理解程度,有句話叫「水到渠成」,到時候再去研究工資的事情也不晚。

2、學習嵌入式編程有必要從51單片機開始嗎?
我原本來在讀大學的時候,有很多同學聽說學習ARM很牛逼,於是就跑到圖書館借了一兩本關於ARM的書,學一兩天後發現跟自己想的不太像,於是學著學著就慢慢放棄了。所以我總結一下,與其邁很大的步子,不如放慢腳步一步步走。從最基本的做起,一步步走,等單片機學會之後再進行像ARM,DSP之類高端處理器的運用,也就能得心應手了,如果想一口吃成一個胖子,只怕最後沒胖起來,倒把自己給噎死了!

3、會用高端處理器就牛了嗎?
不少網友問我:是不是學會了ARM、嵌入式操作系統就會很牛?是不是單片機就是運用在低檔產品上,ARM做出來的產品就高端了。
首先,從本質上說,是同一類東西,都是嵌入式應用方面的主力。十八般兵器,沒有優劣之分,只是在乎持兵器的人修為高低,當年解放軍憑借小米加步槍不也取得了抗戰勝利。
微處理器,單片機、DSP、FPGA、ARM,每一種都有自己的側重點,都具備自己的優勢和劣勢。
單片機:技術比較成熟,運用在工控領域比較多,但進行嵌入式應用顯得太龐大,因而派生出ARM單片機進行高端應用,可以進行操作系統的移植,但是現在一些高端單片機也可以移植操作系統,單片機跟ARM並沒有什麼本質的區別。
DSP:是數據處理的縮寫。也可以做控制運用,它的優勢是運算,主要用在運算量大的領域,如數字信號處理,圖像處理,視屏處理,導彈雷達上也等等。如果要用的好,需要學會很多高深的演算法,需要有較強的數學功底。
FPGA:可編程邏輯陣列的縮寫。實際上就是做一個晶元,用軟體實現它的內部連接,達到用軟體的方法實現硬體的目標。是用硬體實現的一種方法。是早期單片機(功能簡單的邏輯應用)的現代實現方法。

總結:一個嵌入式軟體工程師,其實核心競爭力不是你會運用什麼晶元,當你會了一兩種以後,再學其他的,就會覺得很容易了。一個真正的有競爭力的工程師,應該是具備良好的編程習慣,編程思路,還應該具備扎實的數學功底。只有把握核心的東西,才能走的更遠。

4、單片機行業技術研發有前途嗎?
這也是初學者最為關心的一個話題,單片機行業的技術研發將來前途如何?
著名的高爾夫球手,老虎伍茲說過一句話:我只需成為高爾夫數一數二的高手,錢自然會追著我來。
單片機技術研發,也就是一個類型的職業崗位,同樣叫做「單片機工程師」,能力、經驗、學歷,參差不齊,因此待遇肯定也不盡相同。
高待遇者,年薪數百萬也有,低收入者,養家糊口都難。
只有倒閉的企業,沒有倒閉的行業!
不是行業沒有前景,只能反思自己為何沒有足夠的優秀。

5、單片機技術研發太苦太累,值得去堅持嗎?
在論壇里看到很多人在抱怨:現在電子行業的研發做起來太累,待遇又不是很好,感覺沒什麼出路。
既然我們選擇了單片機行業,就堅持做下去,不要輕信別人講的:單片機研發工程師沒有前途,太苦太累。
學好單片機你至少可以找一份技術性的工作,就算目前累一點,至少你可以看到希望,隨著自己經驗的積累,未來的路會越走越寬!至少可以坐在辦公室裡面,有自由的時間可以支配。
你知道那種專業課沒學好,只能去車間做一線工人的感覺嗎?坐在車間里像一個機器人一樣每天重復同樣的工作嗎?你喜歡過那種一點自由都沒有,在流水線上忙碌著,連上廁所時間都沒有的工作嗎?我相信沒有人喜歡!
所有不要被一些工作了幾年的工程師的話語所迷惑,說做技術很苦,拿的錢又少,當你真正有一天想去做技術,發現原來因為自己缺少知識的積累,沒有公司願意要你。

簡單地分享了自己對單片機領域一些問題的看法,歡迎同行積極分享自己的心得,能讓更多初學者少走彎路,擺正心態進行單片機的學習。

8. 學單片機難嗎

比學C稍微難那麼一點點,主要是學C基本不用關心硬體,而學匯編必須要懂得單片機的硬體結構和寄存器、中斷、IO口等模塊的知識。

9. 合泰杯單片機難度大么

不難。
只要你按照大綱的要求,用心去學習,包你不難。其實單片機並不難學,而參加單片機培訓最大的好處就是幫你規劃學習路徑,提供實際產品教學,提供簡歷和面試指導,讓你能在短時間內學習到自己想學的知識,系統的教學也能保障你學習的完整性。

閱讀全文

與學單片機難嗎相關的資料

熱點內容
android平滑滾動效果 瀏覽:841
什麼是編譯器指令 瀏覽:219
微控制器邏輯命令使用什麼匯流排 瀏覽:885
程序員在學校里是學什麼的 瀏覽:601
oraclejava數據類型 瀏覽:890
程序員考注冊會計師 瀏覽:957
怎麼使用access的命令按鈕 瀏覽:899
有點錢app在哪裡下載 瀏覽:832
博途v15解壓後無法安裝 瀏覽:205
什麼是根伺服器主機 瀏覽:438
安卓手游怎麼申請退款 瀏覽:555
安卓系統如何分享網頁 瀏覽:278
ad如何編譯pcb工程 瀏覽:414
除了滴滴app哪裡還能用滴滴 瀏覽:399
截圖怎麼保存文件夾然後壓縮 瀏覽:8
幻影伺服器怎麼樣 瀏覽:28
具體哪些廣東公司招程序員 瀏覽:870
嵌入式編譯器教程 瀏覽:307
ssl數據加密傳輸 瀏覽:87
51單片機定時器方式2 瀏覽:332