1. 單片機原理的學習方法
基礎理論知識包括模擬電路、數字電路和C語言知識。模擬電路和數字電路屬於抽象學科,要把它學好還得費點精神。在你學習單片機之前,覺得模擬電路和數字電路基礎不好的話,不要急著學習單片機,應該先回顧所學過的模擬電路和數字電路知識,為學習單片機加強基礎。否則,你的單片機學習之路不僅會很艱難和漫長,還可能半途而廢。筆者始終認為,扎實的電子技術基礎是學好單片機的關鍵,直接影響單片機學習入門的快慢。有些同學覺得單片機很難,越學越復雜,最後學不下去了。有的同學看書時似乎明白了,可是動起手來卻一塌糊塗,究其原因就是電子技術基礎沒有打好,首先被表面知識給困惑了。
單片機屬於數字電路,其概念、術語、硬體結構和原理都源自數字電路,如果數字電路基礎扎實,對復雜的單片機硬體結構和原理就能容易理解,就能輕松地邁開學習的第一步,自信心也會樹立起來。相反,基礎不好,這個看不懂那個也弄不明白,越學問題越多,越學越沒有信心。如果你覺得單片機很難,那就應該先放下單片機教材,去重溫數字電路,搞清楚觸發器、寄存器、門電路、COMS電路、時序邏輯和時序圖、進制轉換等理論知識。理解了這些知識之後再去看看單片機的結構和原理,我想你會大徹大悟,信心倍增。
模擬電路是電子技術最基礎的學科,她讓你知道什麼是電阻、電容、電感、二極體、三極體、場效應管、放大器等等以及它們的工作原理和在電路中的作用,這是學習電子技術必須掌握的基礎知識。一般是先學習模擬電路再去學習數字電路。扎實的模擬電路基礎不僅讓你容易看懂別人設計的電路,而且讓你的設計的電路更可靠,提高產品質量。
單片機的學習離不開編程,在所有的程序設計中C語言運用的最為廣泛。C語言知識並不難,沒有任何編程基礎的人都可以學,在我看來,初中生、高中生、中專生、大學生都能學會。當然,數學基礎好、邏輯思維好的人學起來相對輕松一些。C語言需要掌握的知識就那麼3個條件判斷語句、3個循環語句、3個跳轉語句和1個開關語句。別小看這10個語句,用他們組合形成的邏輯要多復雜有多復雜。學習時要一條語句一條語句的學,學一條活用一條,全部學過用過這些關鍵語句後,相信你的C基礎建立了。
當基礎打好以後,你會感覺到單片機不再難學了,而且越學越起勁。當單片機乖乖的依照你的邏輯思維和演算法去執行指令,實現預期控制效果的時候,成就感會讓你信心十足、夜以續日、廢寢忘食的投入到單片機的世界裡。可以這么說,扎實的電子技術基礎和C語言基礎能增強學習單片機信心,較快掌握單片機技術。 這是真正學習單片機的過程,既讓人興奮又讓人疲憊,既讓人無奈又讓人不服,既讓人孤獨又讓人充實,既讓人氣憤又讓人欣慰,既有失落感又有成就感。其中的酸甜苦辣只有學過的人深有體會。思想上要有刻苦學習的決心,硬體上要有一套完整的學習開發工具,軟體上要注重理論和實踐相結合。
1.有刻苦學習的決心
首先,明確學習目的。先認真回答兩個問題:我學單片機來做什麼?需要多長時間把它學會?這是你學單片機的動力。沒有動力,我想你堅持不了多久。其次,端正學習心態。單片機學習過程是枯燥乏味、孤獨寂寞的過程。要知道,學習知識沒有捷徑,只有循序漸進,腳踏實地,一步一個腳印,才能學到真功夫。再次,要多動腦勤動手。單片機的學習具有很強的實踐性,是一門很注重實際動手操作的技術學科。不動手實踐你是學不會單片機的。最後,虛心交流。在單片機學習過程中每個人都會遇到無數不能解決的問題,需要你向有經驗的過來人虛心求教,否則,一味的自己埋頭摸索會走許多彎路,浪費很多時間。
2.有一套完整的學習開發工具
學習單片機是需要成本的。必須有一台電腦、一塊單片機開發板(如果開發板不能直接下載程序代碼的話還得需要一個編程器)、一套視頻教程、一本單片機教材和一本C語言教材。電腦是用來編寫和編譯程序,並將程序代碼下載到單片機上;開發板用來運行單片機程序,驗證實際效果;視頻教程就是手把手教你單片機開發環境的使用、單片機編程和調試。對於單片機初學者來說,視頻教程必須看,要不然,哪怕把教材看了幾遍,還是不知道如何下手,尤其是院校里的單片機教材,學了之後,面對真正的單片機時可能還是束手無策;單片機教材和C語言教材是理論學習資料,備忘備查。不要為了節約成本不用開發板而光用Protur軟體模擬調試,這和紙上談兵沒什麼區別。
3. 要注重理論和實踐相結合
單片機C語言編程理論知識並不深奧,光看書不動手也能明白。但在實際編程的時候就沒那麼簡單了。一個程序的形成不僅需要有C語言知識,更多需要融入你個人的編程思路和演算法。編程思路和演算法決定一個程序的優劣,是單片機編程的大問題,只有在實際動手編寫的時候才會有深切的感悟。一個程序能否按照你的意願正常運行就要看你的思路和演算法是否正確、合理。如果程序不正常則要反復調試(檢查、修改思路和演算法),直到成功。這個過程耗時、費腦、疲精神,意志不堅強者往往被絆倒在這里半途而廢。
學習編寫程序應該按照以下過程學習,效果會更好。看到常式題目先試著構思自己的編程思路,然後再看教材或視頻教程里的代碼,研究人家的編程思路,注意與自己思路的差異;接下來就照搬人家的思路親自動手編寫這個程序,領會其中每一條語句的作用;對有疑問的地方試著按照自己的思路修改程序,比較程序運行效果,領會其中的奧妙。每一個常式都堅持按照這個過程學習,你很快會找到編程的感覺,取其精華去其糟粕,久而久之會形成你獨特的編程思想。當然,剛開始,看別人的程序源代碼就像看天書一樣,只要硬著頭皮看,看到不懂的關鍵字和語句就翻書查閱、對照。只要能堅持下來,學習收獲會事半功倍。在實踐過程中不僅要學會別人的常式,還要在別人的程序上改進和拓展,讓程序產生更強大的功能。同時,還要懂得通過查閱晶元數據手冊(DATASHEET)里有關晶元命令和數據的讀寫時序來核對別人常式的可靠性,如果你覺得常式不可靠就把它修改過來,成為是你自己的程序。不僅如此,自己應該經常找些項目來做,以鞏固所學的知識和積累更多的經驗。 當編寫自己的程序信手拈來、閱讀別人的程序能夠發現問題的時候,說明你的單片機編程水平相當不錯了。接下來就應該研究硬體了。硬體設計包括電路原理設計和PCB板設計。學習做硬體要比學習做軟體麻煩,成本更高,周期更長。但是,學習單片機的最終目的是做產品開發----軟體和硬體相結合形成完整的控制系統。所以,做硬體也是學習單片機技術的一個必學內容。
電路原理設計涉及到各種晶元的應用,而這些晶元外圍電路的設計、典型應用電路和與單片機的連接等在晶元數據手冊(DATASHEET)都能找到答案,前提是要看得懂全英文的數據手冊。否則,照搬別人的設計永遠落在別人的後面,你做的產品就沒有創意。電子技術領域的第一手資料(DATASHEET)都是英文,從第一手資料里你所獲得的知識可能是在教科書、網路文檔和課外讀物等所沒有的知識。雖然有些資料也都是在DATASHEET的基礎上撰寫的,但內容不全面,甚至存在翻譯上的遺漏和錯誤。當然,閱讀DATASHEET需要具備一定的英文閱讀能力,這也是阻礙單片機學習者晉級的絆腳石。良好的英文閱讀能力能讓你在單片機技術知識的海洋里自由遨遊。
做PCB板就比較簡單了。只要懂得使用Protel軟體或 AltimDesigner軟體就沒問題了。但要想做的板子布局美觀、布線合理還得費一番功夫了。
嫻熟的單片機C語言編程、會使用Protel軟體或 AltimDesigner軟體設計PCB板和具備一定的英文閱讀能力,你就是一個遇強則強的單片機高手了。
2. 大學單片機七彩流水燈(急急急)
一、點亮一個LED燈
程序:MOV A,#00FEH MOV P1,A JMP $ END
圖:
二、點亮1、3、5、7LED燈
程序:MOV A,#00AAH MOV P1,A JMP $ END
圖:
三、嘗試讓一個LED燈閃爍
程序:
STRAT:MOV A,#00FEH MOV P1,A LCALL DEL MOV A,#00FFH MOV P1,A LCALL DEL JMP STRAT
DEL:MOV R1,#127
DEL1:MOV R2,#200
DEL2:DJNZ R2,DEL2 DJNZ R1,DEL1 RET END
圖:
實驗三 延時子程序
實驗目的:
1、學會程序的嵌套以及熟練對指令的操作
實驗內容:
1、延時子程序的設計
2、I/O口的應用操作
實驗操作:
1、設計8個循環點亮的LED燈,1、2、3、4、5、6、7、8順序點亮。
程序: ORG 0000H LJMP START ORG 0100H START: MOV A,#007FH LOOP: RL A MOV P1,A LCALL DELAY1 JMP LOOP DELAY2: MOV R1,#127 DEL1: MOV R2,#200 DEL2: DJNZ R2,DEL2 DJNZ R1,DEL1 RET END
3. 我是一名大專生,想自學成為單片機硬體工程師,應該學些什麼知識呢
粗算我接觸單片機已經有兩年多了,從最初的MCS-51,到後來的AVR、MSP430、PIC,當然我還只算是一隻入門不久的菜鳥,人外有人,牛人真的太多了。也常有同學問我單片機應該怎麼學,我的回答都是兩個字:實踐。我覺得實踐才能出真知,不實踐是永遠也學不會單片機的,這和你看一百道菜譜不下廚永遠也做不出佳餚,看一百本游泳的書不下水永遠也學不會游泳是一個道理。那麼怎麼去實踐?這可能是初學者最關心的問題,網上類似的回答也很多,這都是老生常談了,只要你是有心人,一搜一大把。
簡單說一下學習單片機的步驟:
1.購買常用的工具(萬用表,烙鐵,烙鐵架,松香,焊錫,螺絲刀,吸錫器,攝子)和電子元件(萬能板,電阻,電容,發光二極體,整流橋,數碼管,常用接插件等),先做個5V的直流電源(變壓器/整流橋/7812/7805/電解電容若干,電容的極性可別反了),再從基本的發光二極體驅動電路開始,灌電流還是拉電流?限流電阻取多大?怎麼計算的?你是不是發現,很多基本的知識你都不懂,甚至連元件的型號你都叫不出來。沒有關系,多問人,論壇、QQ技術群里熱心人還是有的。准備一個筆記本,有用的知識應該記下來。
2.用萬能板搭建一個51的最小系統(當然要從51入手,資料太多了),點亮一個LED再說,接著是數碼管、蜂鳴器,繼電器,EEPROM,AD/DA,LCD,時鍾晶元,數字溫度計,紅外遙控編解碼等等,這裡面三極體用的很普遍,有時用作放大,有時用開關,一定要理解清楚。看來要做的工作還真不少,這可不能急,一樣一樣來,誰讓你想學到真本領。有條件買個開發板也很方便,若是能堅持DIY,也是趣味無窮。很多晶元是可以免費申請到的,最好申請的是美信公司的片子,我用的很多晶元都是從那申請的,例如:MAX1270、DS12C887、DS18B20、MAX518、MAX396、MAX7219、MAX145等,在此我是發自內心的感謝美信公司為我提供的免費午餐,確實要用的話就申請一下,只是好奇,或貪小便宜,那就別申請,別讓人家小瞧了咱中國未來的電子工程師。當然這些晶元的datasheet都是英文的,所以,大學生朋友們,盡管我們是學電的,英文還是要好好學的。
3.單片機的編程,多數人先接觸匯編,要學好單片機,匯編是要懂的,但最終你必須掌握C語言,C語言真的太強大、太方便了,其好處不用我多說了。IDE個人感覺最好的是Keil,在這推薦一下。剛開始
當然是從跑馬燈開始,網上有很多單片機實驗的源代碼,都是絕好的學習資料,好好消化一下,收獲會很大。
「hello
world」的串口通信例子應該盡早調通,在沒有模擬器的情況下,串口就是最好的調試工具,一個高人曾指點我:拿到一個處理器,首先要做的就是打通串口。串口一通就好比一個習武之人打通了全身筋脈,再學其它武功就會易如反掌。定時器是單片機非常重要的資源,其使用方法一定要整清楚。高人說過,沒有定時器的單片機不是單片機,事實上我也沒見過哪款單片機沒有定時器的。另外,一個好的編程風格也很重要,看一看相關的資料,你會受益很多,網上這樣的資料也很多。
4.程序寫好了,怎麼下載到單片機里,總是借別人的編程器總是不太好,現在一些單片機有ISP功能了,如89S5X和AVR單片機。網上有一個Easy51Pro
v2.0宇宙版,資料很全,感謝前輩的無私奉獻啊。照他說的電路自己做個ISP下載線,非常好用,若是自己做的不好用,買個現成的也不貴。這錢若還捨不得,那就試試STC的51系列單片機吧,可以用串口燒你的程序,這其實叫IAP,有興趣可以去網上搜一下。當然,等你以後的用的單片機多了,編程器還是不可缺少的。
5.
單片機故障的排查:對於單片機的問題,首先搞清楚一個CPU工作的三要素:電源,時鍾源(晶振),復位電路,是不是都沒有問題了,如果有示波器那就更好了,看一下ALE腳是不是有fosc/6的方波信號,有的話說明單片機在工作,三要素已經滿足了,沒有的話只能再不厭其煩的檢察了,其實很簡單,參照書上的電路一般沒問題。
等自己動手做出些東西來了,可以算是入門了,會有一種成就感,但是不要滿足於這點小成功,這些還都是小把戲,前面的路還是漫長的,如FPGA,PCB,DSP,ARM等,都是需要學習的。保存好你的電路和源代碼,這都是你的財富。會有用到它們的時候。另外,你做的東西可能只是功能上能實現,離一個成熟的產品還有很大差距,穩定性、抗干擾都不是小問題。這些知識必須有良好的電路基礎理論,大學里學的數電、模電、信號都是非常重要的,特別是模電,好好復習,保證每次復習你都會有新的收獲。路漫漫其修遠兮,耐心去求索吧。
矽谷芯微單片機培訓中心
4. 如何學好單片機
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招降龍十八掌,但還不到打遍天下無敵手的境界。即使如此,也算是單片機大蝦了
5. 求學習單片機51語言的書
從新華書店文軒網上搜索的書,供參考:
51單片機C語言應用程序設計實例精講(第2版)(含光碟1?
作者:戴佳//戴衛恆//劉博文
出版:電子工業出版社2 出版日期:2010年04月
本書通過大量的典型實例,詳細介紹了51單片機各種C語言應用專題程序設計的流程、方法、技巧及設計思想。全書共分31章,第1章~第3章為基礎知識,介紹了51單片機開發的硬體結構、指令系統、C語言設計以及Keil 8051 C編譯器知識;第4章~第31章為本書的重點,通過28個典型的C語言應用實例,詳細介紹了51單片機的各種應用開發和使用技術,包括輸入/輸出、數據採集、控制系統、存儲系統與外設擴展、信號與演算法實現、網路通信與傳輸、電源監控與抗干擾設計。全書實例豐富、代表性強,涉及領域廣,每個例子都調試
51單片機C語言開發與實例
作者:湯競南等
出版:人民郵電 出版日期:2010年02月
本書利用Keil公司最新版的Vision3集成開發環境,從應用的角度,全面地介紹了用C51開發調試單片機程序的方法、過程和應注意的事項。書中列舉了大量應用實例,著重介紹了51單片機的一些新技術及其應用方法,同時還介紹了幾款簡易編程器的編制和使用方法,使讀者盡快、盡可能容易地掌握利用C51對MCS一51單片機進行開發的方法。系統全面、突出重點、由淺入深、通俗易懂、學用結合、軟硬兼備、實例豐富是本書的主要特色,因此,本書適用於具備一定電子技術基礎和具有一定的單片機基礎知識的學生、教師、單片機愛好
51單片機應用開發範例大全(國家信息技術緊缺人才培養工程系列叢書)
作者:宋戈 等編著
出版:人民郵電出版社 出版日期:2010年02月
本書通過實例全面講解單片機開發中的各種技術,包括單片機介面的擴展、存儲器的擴展、輸入/輸出及顯示技術、實用電子製作、感測控制技術、智能儀表與測試技術、電氣傳動及控制技術、單片機數據處理、單片機通信技術、單片機實現信號與演算法、單片機的匯流排與網路技術、典型器件及應用技術等內容,最後通過智能手機充電器設計、單片機控制門禁系統設計、電機保護器的設計3個綜合實例,具體演示應用多種技術開發單片機系統的思路和方法。 本書內容注重各種技術的「實際開發過程」,所有實例均以提高讀者工程實踐開發能力為宗旨。
51單片機自學筆記(內附光碟1張)
作者:
出版:北京航空航天大學出版社 出版日期:2010年01月
《51單片機自學筆記》以89S51系列單片機為載體,結合作者多年教學與指導大學生電子設計競賽的經驗編寫而成。全書分三部分:匯編語言程序設計、C語言程序設計和RTX51實時多任務操作系統。內容編排符合初學者先了解單片機底層的工作原理,再掌握高效編程語言的使用方法,最後達到熟練應用RTX51實時多任務操作系統這一高級階段的學習過程。這三部分內容中許多常式所完成的任務是相同的,便於讀者比較對照,從而加深理解。書中的全部內容均是作者親自實踐調試通過的,其中大部分內容採用倒敘的寫作手法,即先給出設計內