單片機入門知識_第1頁
單片機入門知識_第2頁
單片機入門知識_第3頁
單片機入門知識_第4頁
單片機入門知識_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、單片機入門單片機是什么?單片機是什么?單片機就是一臺小型電腦。通過軟件編程可單片機就是一臺小型電腦。通過軟件編程可以讓它實現(xiàn)許多功能。我們通過以讓它實現(xiàn)許多功能。我們通過C語言與它語言與它進行交流。而且它很聽話,我們讓它干什么,進行交流。而且它很聽話,我們讓它干什么,它就能干什么!它就能干什么!如何與單片機交流?如何與單片機交流?C語言:就跟我們學(xué)習英語跟外國人交流是語言:就跟我們學(xué)習英語跟外國人交流是一樣的!一樣的!單片機都能做什么? 我們身邊所接觸的很多電子產(chǎn)品都離不開單片機,像電腦、手機、洗衣機、數(shù)碼相機、冰箱等等很多電子產(chǎn)品。 實物展示: 心形跑馬燈、點陣屏、紅外解碼、心形跑馬燈、點陣

2、屏、紅外解碼、LCD演演示、溫度計、電子時鐘、機器人等示、溫度計、電子時鐘、機器人等 如果以后想從事電子方面工作的話一定要學(xué)好單片機這門課。51單片機更是基礎(chǔ)。我們的實驗板MCS-51單片機Atmel公司:AT89系列宏晶科技:STC單片機。STC單片機是國內(nèi)生產(chǎn)的基于51內(nèi)核推出的高性能單片機。在原來51單片機的基礎(chǔ)上加以改進。而且功能也比傳統(tǒng)的51單片機豐富,如內(nèi)置AD、EEPROM、P4口、外部中斷2等。而且下載方便,是目前國內(nèi)用的最多的51系列單片機。我們所學(xué)習的單片機是STC89C52RC,與傳統(tǒng)的89S52單片機相比,內(nèi)置EEPROM功能,掉電不丟失數(shù)據(jù);WDT看門狗定時器;軟件復(fù)

3、位等。而且下載方便使用靈活。怎么學(xué)習51單片機? 其實單片機這門課主要是多實踐,做的多也就學(xué)的多。1、掌握好C語言。匯編語言不會沒關(guān)系。2、多動手寫程序3、最好有自己的一塊學(xué)習板4、充分利用網(wǎng)絡(luò)資源(視頻教程和實例)5、多動手、多思考。學(xué)習基礎(chǔ) 1、C語言中二進制與十六進制的轉(zhuǎn)換關(guān)系 2、單片機0與1的概念:與數(shù)電里面的邏輯電平時一樣的,51單片機是標準的TTL電平:00V15V000 x00110 x01220 x02330 x03440 x04550 x05660 x06770 x07880 x08990 x0910A0 x0A11B0 x0B12C0 x0C13D0 x0D14E0 x0

4、E15F0 x0F3、二進制中的“與”、“或”、“非”、“異或”等運算。與:全為1則1,否則為0或:全為0則0,否則為1非:取反異或:將原來的所有位取反!4、掌握C語言中常用的語句:for、while,do.while,switch.case,if等5、掌握C語言中的函數(shù):函數(shù)的形參、函數(shù)定義、函數(shù)的調(diào)用和聲明。MCS51MCS51單片機中基本的運算符單片機中基本的運算符與與C C語言基本相同:語言基本相同:+ - * / (加(加 減減 乘乘 除)除) = B)?C:DC51知識 C語言是一種編譯型程序設(shè)計語言,它兼顧了多種高級語言的特點,并具備匯編語言的功能。目前,使用C語言進行程序設(shè)計已

5、經(jīng)成為軟件開發(fā)的一個主流。 相比匯編而言,結(jié)構(gòu)清晰,可讀性強,最重要的是學(xué)習者不用去了解器件本身內(nèi)部的結(jié)構(gòu)就可以編程,而且便于移植。 但是匯編語言執(zhí)行的效率高。建議先學(xué)習好C語言,再學(xué)習下匯編語言,不要求你會寫,但起碼能讀懂程序的意思。 C語言是必須要學(xué)好的一門課,C語言基礎(chǔ)不好的同學(xué)可以參考清華大學(xué)出版的譚浩強教授編寫的C語言程序設(shè)計一書。 其實剛開始學(xué)習單片機C語言不熟也沒關(guān)系,但是C語言中常用的知識要掌握!其他的知識以后可以慢慢再學(xué)! 最好大家到圖書館借一本關(guān)于51單片機的書籍,邊看邊學(xué),這樣效果會更好一些,不懂的也可以向別人請教!也可以問我!單片機C語言 單片機C語言與普通的C語言幾乎

6、是一模一樣的,只是存在細微的差別。 bit只能為0或者為1 sbit聲明和定義單片機的某一位 sfr特殊功能寄存器定義和聲明 51多任務(wù)中的_task_聲明 中斷函數(shù)的編寫 其他的如unsigned char、unsigned int、float等跟標準的C語言是一樣的!C51C51的數(shù)據(jù)類型的數(shù)據(jù)類型基本數(shù)據(jù)類型基本數(shù)據(jù)類型類型類型符號符號關(guān)鍵字關(guān)鍵字數(shù)的表示范圍數(shù)的表示范圍所占位數(shù)所占位數(shù)整型整型字符型字符型實型實型有有無無(signed) int16-3276832767(signed) short16-3276832767(signed) long32-2147483648214748

7、364716unsigned int0655353204294967295unsigned long intunsigned short int16065535有有float323.4e-383.4e38有有double641.7e-3081.7e308有有char8-128127無無unsigned char 80255用法 bit flag;/flag要么為0,要么為1 sbit LED1=P00;/定義P0口第0位為LED1 sfr P0=0 x80;/定義特殊功能寄存器P0地址為0 x80; sfr16:sfr:sfr的的1616位數(shù)據(jù)聲明位數(shù)據(jù)聲明 void timer0(void)

8、 interrupt 1主函數(shù)的編寫 void main(void) /用戶代碼 一般在主函數(shù)里面有while(1)循環(huán),使程序一直執(zhí)行下去!通過調(diào)用其他函數(shù)來實現(xiàn)相應(yīng)的功能!在接下來的例程中會加以介紹!認識STC89C52STC89C52特點 8K的flash內(nèi)部程序存儲器 256字節(jié)的RAM數(shù)據(jù)存儲器 5個中斷源 3個定時計數(shù)器 512字節(jié)的EEPROM 看門狗定時器 一個全雙工串行口(UART) ISP/IAP功能 其他類型的STC單片機還有AD、PWM、SPI等硬件資源。詳細的參看宏晶公司芯片手冊。單片機中基本的時序周期 振蕩周期:指振蕩源的周期-晶振頻率的倒數(shù) 時鐘周期:振蕩周期的2

9、倍。 機器周期:12個振蕩周期。 指令周期:14個機器周期。 若晶振頻率為12Mhz,則有如下轉(zhuǎn)換關(guān)系: 振蕩周期=1/12us 時鐘周期=1/6us 機器周期=1us 指令周期=14us單片機的引腳簡介 VCCVCC、GNDGND:VCCVCC接標準的接標準的+5V+5V,GNDGND接地。為單片接地。為單片機供電。機供電。 XTAL1, XTAL2: XTAL1, XTAL2: 片內(nèi)振蕩電路輸入、輸出端。片內(nèi)振蕩電路輸入、輸出端。連接方法見連接方法見5151單片機最小系統(tǒng)。單片機最小系統(tǒng)。 RSTRST:單片機復(fù)位端口,高電平有效!高電平有:單片機復(fù)位端口,高電平有效!高電平有效持續(xù)時間至

10、少為效持續(xù)時間至少為2424個振蕩周期以上個振蕩周期以上 ALE/PROG:ALE/PROG:地址所存信號輸出端。地址所存信號輸出端。 PSENPSEN:外部程序存儲器選通信號:外部程序存儲器選通信號 EAEA:內(nèi)部與外部程序存儲器選擇線,:內(nèi)部與外部程序存儲器選擇線,EA=1EA=1選擇內(nèi)選擇內(nèi)部部ROMROM。EA=0EA=0,選擇外部,選擇外部ROMROM。 四組雙向四組雙向IOIO端口:端口:P0P0、P1P1、P2P2、P3P3。其中。其中P3P3口有口有第二功能??梢詫σ陨系诙δ???梢詫σ陨?232個個IOIO口操作輸出或輸入,口操作輸出或輸入,為為1 1或是為或是為0 0。 所

11、以建議大家還是能夠有自己的學(xué)習板,這樣自己學(xué)習會更快,仿真還是與真實硬件有差別的。學(xué)習工具 首先:最好擁有一臺電腦,學(xué)電子的是離不開電腦的。以后所做的工作都是在windows平臺上運行的。 學(xué)習好兩個軟件:單片機仿真軟件Proteus和單片機集成開發(fā)環(huán)境(IDE)KEIL軟件。這兩個軟件學(xué)好就行了51單片機很多東西都可以在上面仿真。但有時仿真還是與真實有所差別的,建議大家先學(xué)完硬件再學(xué)習仿真。剛開始的簡單的設(shè)計還是可以用Proteus解決的。而且,學(xué)習好這兩個軟件對于大家今后的學(xué)習幫助很大,比如課程設(shè)計、畢業(yè)設(shè)計等! 下面著重講一下這兩個軟件基本的使用方法Proteus軟件 Proteus是英

12、國開發(fā)的一款單片機仿真的EDA工具: 是目前世界上最好用的單片機仿真工具,而且功能強大! 學(xué)習好Proteus軟件對于我們今后的學(xué)習很有幫助!仿真實例跑馬燈仿真實例液晶萬年歷一、Proteus入門 打開Proteus軟件,進入查找元件模式,按P鍵進入選擇元件對話框。鍵入關(guān)鍵字后雙擊后添加。 幾個簡單的元件代號: res-電阻、AT89C52、button、cap、crystal等,以后會給大家一一介紹。 學(xué)會修改元件參數(shù):雙擊選中的原件,彈出元件屬性對話框,輸入?yún)?shù),確定即可! 鼠標右鍵雙擊刪除、單擊鼠標左鍵執(zhí)行先前連線操作、鼠標滑輪放大與縮小等等。 更詳細的資料參看PDF文檔! 學(xué)習Prot

13、eus軟件關(guān)鍵是多練,多操作幾次慢慢就會了。軟件使用也很簡單,只要大家認真學(xué)! Proteus是一個強大的單片機仿真軟件,仿真8051單片機只是它功能范圍的一小部分還可以仿真AVR、MSP430、PIC甚至是嵌入式ARM7單片機。 Proteus另外一個特點是提供很多的外圍元器件和虛擬儀器。KEIL軟件 KEIL軟件是德國開發(fā)的8051系列開發(fā)工具,現(xiàn)在的KEIL軟件還支持其他型號的單片機開發(fā)。 它是目前最流行的單片機開發(fā)工具。生成的代碼質(zhì)量也比較高Keil軟件編寫代碼二、KEIL軟件的使用 KEIL是51單片機最好用的集成開發(fā)環(huán)境,支持匯編和C語言。 建立第一個工程 配置工程、生成HEX文件

14、 調(diào)試(DEBUG) Proteus和KEIL聯(lián)調(diào)的實現(xiàn)個人總結(jié)學(xué)習51的次序首先學(xué)習如何點亮一個LED。制作一個跑馬燈數(shù)碼管:數(shù)碼管的靜態(tài)和動態(tài)顯示單片機的內(nèi)部資源:定時計數(shù)器、中斷按鍵:獨立按鍵的檢測,矩陣鍵盤的檢測LCD1602:入門級液晶的使用。AD與DA的工作原理:ADC0809 DAC0832、TLC549、TLC5615等IIC:IIC總線協(xié)議,用51模擬IIC協(xié)議與IIC協(xié)議的芯片進行通信DS1302:實時時鐘芯片的使用DS18B20:溫度傳感器LCD12864:圖形 液晶的使用最后自己用液晶和DS1302+DS18B20制作一個多功能萬年歷51就掌握的差不多了!還有其他的器件

15、如:蜂鳴器、繼電器、直流電機、步進電機、點陣學(xué)習51單片機的內(nèi)部資源等等 當然還有其他的很多東西都可以用51單片機,如紅外解碼,家里面的遙控器就是一種應(yīng)用;還有超聲波測距,出租車后面的廣告牌,讀SD卡,讀U盤等等很多很多。學(xué)習是不止的,等你學(xué)到這里你就會發(fā)現(xiàn)要學(xué)的東西有很多很多! 當然了,51學(xué)習的差不多了,你還可以學(xué)習AVR、PIC、凌陽或者是MSP430單片機這些都要比51功能強大很多,現(xiàn)在學(xué)習51單片機也是為將來的學(xué)習打基礎(chǔ)的! 學(xué)習單片機首先:不要怕自己學(xué)不會,我們實驗室?guī)缀跛腥硕际亲詫W(xué)的。只要你肯學(xué),就一定能學(xué)好!況且我們現(xiàn)在的條件又這么優(yōu)越。 學(xué)習電子不學(xué)單片機,幾乎是沒聽說過的,單片機是一門很重要的課程。學(xué)習好單片機,畢業(yè)找工作很容易。 單片機入門以后你就會發(fā)現(xiàn)它很有意思。這些都需要大家慢慢去體會 學(xué)習單片機先從最簡單的開始,一步步學(xué)習。 其實學(xué)習單片機就是控制它的IO口何時輸出或者輸入高低電平,以及學(xué)習如何使用一些常見的外圍器件如時鐘芯片、存

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論