




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第一課:
如何學(xué)習(xí)單片機學(xué)習(xí)單片機四部曲步驟:
第一步:鸚鵡學(xué)舌第二步:照葫蘆畫瓢第三步:他山之石可以攻玉第四步:理論實踐結(jié)合要領(lǐng)在實踐中成長!
條件:
1、信心和恒心。2、C語言教材一本。(譚浩強)3、開發(fā)板一塊。
金沙灘工作室1、知識共享2、充分交流3、共同進(jìn)步
king----金色st----沙灘金沙灘工作室小宋老師以實驗的方式傾情奉獻(xiàn)《手把手教你學(xué)單片機》第二課:
點亮你的LED單片機的選擇STC89C52:8KFLASH、512字節(jié)RAM、32個IO口、3個定時器、1個UART、8個中斷源。
P89V51RD+:64KFLASH、1024字節(jié)RAM、32個IO口、3個定時器、1個UART、8個中斷源、1個SPI、PWM、并且支持與KEIL連機進(jìn)行在線仿真。單片機最小系統(tǒng)三要素:電源電路、復(fù)位電路、晶振電路。特點:單片機可以運行程序,是單片機控制系統(tǒng)的核心。點亮一個LED發(fā)光二極管發(fā)光二極管(LED):
通常紅色貼片LED:電壓1.6V~2.4V,電流2到20mA,在2到5mA亮度有所變化,5mA以上亮度基本無變化。(5-2)/r=2ma(5-2)/R=20ma150-1.5K單片機(MCU),最小控制單元。首先,我們用單片機來控制一個燈的亮滅。1號:2號:3號:4號:5號:6號:7號:8號:9號:10號:11號:12號:作業(yè)1、牢記發(fā)光二極管參數(shù)和限流電阻計算方法。2、理解單片機基本外圍電路,以及單片機的FLASH、RAM、SFR的概念。3、初步了解單片機程序的基本方式,并且通過查看數(shù)據(jù)手冊來了解SFR的有關(guān)內(nèi)容。第三課:
硬件基礎(chǔ)學(xué)習(xí)去耦電容的使用低頻濾波電容,平常應(yīng)用最多的是鉭電容,電解電容,陶瓷電容,起到去除電源低頻紋波,穩(wěn)定電源的作用。高頻濾波電容,電源附近,通常用104電容來進(jìn)行去除高頻干擾。三極管三極管是我們的日常應(yīng)用電路中經(jīng)常會用到的一個器件。分為PNP和NPN型。三極管常用功能:1、開關(guān)控制2、信號放大 3、電平轉(zhuǎn)換PNP型三極管NPN型三極管三極管的型號記憶方式:箭頭朝哪腿朝哪,導(dǎo)通電壓順箭頭過,電壓導(dǎo)通,電流控制b:基極e:射極c:集電極作業(yè)1、理解并掌握電源輸入端濾波電路及其電容的應(yīng)用和原理。2、記憶三極管的型號和導(dǎo)通原理。3、理解三八譯碼器的原理,并且學(xué)會使用。第四課:
流水燈常用延時辦法非精確延時1、for(i=0;i<100;i++); 2、i=100;while(i--);精確延時辦法1、利用庫函數(shù)_nop_();(需要include<intrins.h>) 2、利用定時器進(jìn)行定時 (后邊的課程進(jìn)行介紹)流水燈實驗8個LED發(fā)光二極管,分別對應(yīng)單片機IO口的P0.0到P0.7口,8個單片機IO口組成一個字節(jié),在程序編寫過程中,可以直接用P0來進(jìn)行操作。C語言的8位二進(jìn)制數(shù)代表了8個IO口P0=0xfe;P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.011111110C語言運算符左移<<右移>>X<<2X>>2左移,最低位填0補充;右移,最高位填0補充0xf01110000001111000按位取反符號~取反后1變成0,0變成10x0F取反后成為0xF0,即00001111->11110000數(shù)碼管數(shù)碼管真值表根據(jù)單片機連接電路,計算出數(shù)碼管的真值表
012345
0xc00xf90xa40xb00x990x92
6789Ab0x820xf80x800x900x880x83
CdEF0xa70xa10x860x8e作業(yè)1、記住C語言2個變量類型及其范圍,掌握C語言的位操作和字節(jié)操作。2、用3個LED小燈做一個交通燈的程序。3、根據(jù)原理圖和流水燈程序,獨立完成流水燈反方向流動以及小燈一個個點亮直到全亮的功能。4、明白數(shù)碼管的原理,寫出數(shù)碼管真值表。第五課:
定時器時鐘周期和機器周期時鐘周期T是時序中最小的時間單位。具體計算就是1/時鐘源。我們開發(fā)板上單片機使用的時鐘周期=1/11059200s。機器周期CPU完成一個操作的最短時間。普通51一個機器周期是12個時鐘周期。定時器和計數(shù)器2個定時器/計數(shù)器:定時器0和定時器1定時器:每經(jīng)過一個機器周期,寄存器加1。因此,可以將機器周期看作為計數(shù)周期。計數(shù)器:后續(xù)課程介紹。特殊功能寄存器TCONTF:定時器溢出標(biāo)志。溢出時,該位自動置1。中斷執(zhí)行時硬件清零,或者軟件清零。TR:定時器運行控制位,置1開始計時,清0停止計時。位76543210符號TF1TR1TF0TR0IE1IT1IE0IT0定時器的特殊功能寄存器TMODT1和T0分別代表單片機兩個計數(shù)器GATE:該位被置位時為門控位。僅當(dāng)TR1被置位并且INT1腳為高,定時器開始計數(shù)。當(dāng)該位被清零時,只要TR1被置位,定時器1馬上開始計數(shù)。C/T:該位為0的時候,用作定時器,該位為1的時候,用做計數(shù)器。位76543210符號T1GATET1C/TT1M1T1M0T0GATET0C/TT0M1T0M0M1,M000011011模式0模式1模式2模式3模式1:16位的計數(shù)器。(TH1,TL1)模式2:自動裝載8位計數(shù)器。主要應(yīng)用在串口波特率發(fā)生器。模式0&模式3:幾乎不用。TCON和TMOD復(fù)位后都會自動變成0x00.12*(65536-x)/11059200=0.001使用定時器的方法第一:設(shè)置特殊功能寄存器TMOD,使之工作在需求的狀態(tài)。第二:設(shè)置計數(shù)寄存器的初值,精確設(shè)定好定時時間。第三:設(shè)置特殊功能寄存器TCON,通過打開TR來讓定時器進(jìn)行工作。(也可設(shè)置為中斷模式)TH1=0xfc;TL1=0X66;12(65536–x)/11059200=0.02s第六課:
定時器+數(shù)碼管數(shù)組數(shù)組是一組變量,這組變量需要滿足三個條件:1、具有相同的數(shù)據(jù)類型2、具有相同的名字3、在存儲器中是被連續(xù)存放的a[5]={1,2,3,4,5}a[]={1,2,3,4,5}a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5;動態(tài)顯示動態(tài)顯示:輪流向各位數(shù)碼管送入數(shù)據(jù),并且將數(shù)據(jù)輸入速度控制在人肉眼所分辨不出來的范圍內(nèi),利用發(fā)光二極管的余暉讓人的視覺能夠識別的過程。switch語句適合多選一的選擇性語句,具體使用方法:switch(表達(dá)式){case表達(dá)式一:語句1;case表達(dá)式二:語句2;……default:語句n;}函數(shù)函數(shù):實現(xiàn)一個特定功能的模塊。Main()函數(shù)為主函數(shù),且唯一。注意:如果函數(shù)體放在main函數(shù)的后邊,則需要進(jìn)行函數(shù)聲明才能使用。作業(yè)1、理解清楚定時器在工作方式1下的編程方式和使用方法,并且獨立使用定時器進(jìn)行流水燈實驗操作。2、學(xué)會通過查找設(shè)置特殊功能寄存器SFR的方式來編寫程序。3、理解清楚數(shù)碼管的原理,和使用數(shù)碼管進(jìn)行數(shù)字顯示的原理的方法。4、理解動態(tài)顯示的原理和方法。第七課:
基礎(chǔ)學(xué)習(xí)+習(xí)題課變量1、局部變量:
在函數(shù)內(nèi)部聲明的變量是內(nèi)部變量,它只在本函數(shù)內(nèi)有效,在此函數(shù)外是不能作用的。函數(shù)體內(nèi)占內(nèi)存,出了函數(shù)釋放內(nèi)存。2、全局變量:在函數(shù)外邊聲明的變量就是外部變量,也叫做全局變量,一個源文件(.c)可以包含一個或者多個函數(shù),全局變量的作用范圍是從聲明的位置一直到文件結(jié)束,一直占用內(nèi)存。3、靜態(tài)變量在函數(shù)體內(nèi)聲明,前邊加static關(guān)鍵字聲明,屬于局部變量,和局部變量的區(qū)別是一直占用內(nèi)存,和全局變量的區(qū)別是只能在函數(shù)體內(nèi)使用。注意:只有第一次賦值有效。
晶振電路1、晶振選擇:
根據(jù)實際系統(tǒng)需求選擇,6M,12M,11.0592M,20M等等2、負(fù)載電容:對地接2個10到30pF的電容即可,常用20pF。3、萬用表測晶振:直接用紅表筆對晶振引腳,黑表筆接GND,測量電壓即可。
復(fù)位電路復(fù)位:把單片機內(nèi)部電路設(shè)置成為一個確定的狀態(tài),所有的寄存器初始化。51單片機的復(fù)位時間大約在2個機器周期左右,具體需要看芯片數(shù)據(jù)手冊。一般通過復(fù)位芯片或者復(fù)位電路,具體的阻容參數(shù)的計算,通過google查找。單片機IO口狀態(tài)1、普通IO口2、強推挽3、開漏(開集)4、單片機IO口的驅(qū)動能力5、74HC245的應(yīng)用上下拉電阻上拉就是將不確定的信號通過一個電阻嵌位在高電平,下拉同理。1、電平轉(zhuǎn)換,提高輸出電平數(shù)值。2、OC門必須加上拉電阻才能使用。3、加大普通IO引腳驅(qū)動能力。4、懸空引腳上下拉抗干擾。
上拉電阻選取原則1、從節(jié)約功耗及芯片灌電流能力考慮應(yīng)當(dāng)足夠大;電阻大,電流小。2、從確保足夠的驅(qū)動電流考慮應(yīng)當(dāng)足夠?。浑娮栊?,電流大。3、對于高速電路,過大的上拉電阻可能會導(dǎo)致邊沿變平緩。綜合考慮:上拉電阻常用值在1K到10K之間選取,下拉同理。在線仿真ISP:In-SystemProgramming,是指在系統(tǒng)可編程,指電路板上的空白器件(單片機)可以編程寫入最終用戶代碼,而不需要從電路板上取下器件,已經(jīng)編程的器件也可以用ISP方式擦除或再編程。Ice:InCircuitEmulator,是指在線仿真器,ICE是最為常用的調(diào)試設(shè)備,它的核心思想是完全模擬CPU工作,通過外圍電路捕獲CPU的各種狀態(tài)信息,輸送到PC端,通過PC來查看當(dāng)前CPU的工作狀態(tài)。
&和|對于不能進(jìn)行直接位操作的SFR進(jìn)行位操作的辦法:某一位置1的辦法:a=a|10000000,將要置1的位為1,其他為0。a|=0x01;低位置1a=xxxxxxx1某一位清0的辦法:a=a&xxxxxxx0,將要清0的位為0,其他為1。a&=0xef;xxx0xxxx作業(yè)1、充分理解并且學(xué)會使用晶振電路、復(fù)位電路。2、理解單片機的IO口的狀態(tài),并且具有以后閱讀數(shù)據(jù)手冊進(jìn)行IO口設(shè)計的能力。3、理解并且牢記上下拉電阻的原理和選用方式。4、學(xué)會如何使用在線仿真進(jìn)行調(diào)試程序,要學(xué)會定位問題并且解決問題。第八課:
中斷中斷的介紹比如說我正在廚房用煤氣燒一壺水,這樣就只能守在廚房里,苦苦等著水開——如果水溢出來澆滅了煤氣,有可能就要發(fā)生一場災(zāi)難了。門外忽然又傳來了鏗鏘有力的歌聲,我最喜歡的古裝劇要開演了,真想奪門而出,然而,聽著水壺發(fā)出“咕嘟咕嘟”的聲音,我清楚:除非等到水開,否則沒有我享受人生的時候。這個場景跟中斷有什么關(guān)系呢?在這個場景中,我是唯一具有處理能力的主體,不管是燒水、還是看電視,同一個時間點上我只能干一件事情。但是,在我專心致志干一件事情時,總有許多或緊迫或不緊迫的事情突然出現(xiàn)在面前,都需要去關(guān)注,有些還需要我停下手頭的工作馬上去處理。只有在處理完之后,方能回頭完成先前的任務(wù),“把一壺水徹底燒開!”中斷機制不僅賦予了我處理意外情況的能力,如果我能充分發(fā)揮這個機制的妙用,就可以“同時”完成多個任務(wù)了。事實上燒水需要10分鐘完成,但是提下水壺和關(guān)煤氣我只要幾秒鐘就可以完成。為了這幾秒,我需要在廚房等候10分鐘。如果使用鬧鐘定時10分鐘,10分鐘一到,鬧鐘就會提醒我該去關(guān)煤氣了,那么我就可以去安心看電視了。實際上就是用了鬧鐘這樣一個中斷信號來提示我完成提水壺和關(guān)煤氣的任務(wù)。中斷的SFR中斷使能控制寄存器IEEA:總中斷使能位,總閥門。EC:PCA中斷使能位ET2:定時器2中斷使能位ES:串口中斷位76543210符號EAECET2ESET1EX1ET0EX0ET1:定時器1溢出中斷使能EX1:外部中斷1使能ET0:定時器0溢出中斷使能EX0:外部中斷0使能位76543210符號保留PPCPT2PSPT1PX1PT0PX0位76543210符號保留PPCHPT2HPSHPT1HPX1HPT0HPX0H中斷優(yōu)先級寄存器IPIPHPPC:PCA中斷優(yōu)先級PT:定時器中斷優(yōu)先級PS:串口中斷優(yōu)先級PX:外部中斷優(yōu)先級中斷優(yōu)先級的說明當(dāng)設(shè)置為默認(rèn)中斷優(yōu)先級時:當(dāng)幾個中斷同時發(fā)生時,則先處理中斷優(yōu)先級高的中斷程序,在處理任意中斷期間發(fā)生中斷,都不會響應(yīng)。當(dāng)人為配置了中斷優(yōu)先級,同時發(fā)生中斷,優(yōu)先級高的先響應(yīng),在處理任意中斷時,發(fā)生同級別或低級的中斷,則不響應(yīng),發(fā)生優(yōu)先級更高的中斷時,則先處理高優(yōu)先級中斷,處理完畢,再回來處理當(dāng)前中斷。中斷優(yōu)先級的說明當(dāng)設(shè)置為默認(rèn)中斷優(yōu)先級時:假設(shè)“水開”默認(rèn)優(yōu)先級高于“門鈴”優(yōu)先級,當(dāng)先聽到“水開”則先處理“水開”這件事,當(dāng)先聽到“門鈴”則先處理“門鈴”這件事。只有當(dāng)兩件事同時發(fā)生時,則會先去處理“水開”,再處理“門鈴”。中斷優(yōu)先級的說明當(dāng)人為配置了中斷優(yōu)先級配置“水開”為高優(yōu)先級,則當(dāng)“水開”事件發(fā)生時,直接處理“水開”,在處理“水開”的過程中,即使“門鈴”響了,也不會去理會。當(dāng)“門鈴”響了,正在走向門口時,這個時候,“水開”事件又發(fā)生了,那么從門口轉(zhuǎn)向,先去處理“水開”,處理好了后,再回頭到門口,處理“門鈴”事件。
作業(yè)1、充分理解中斷的意義。2、使用照葫蘆畫瓢將這節(jié)課的全部程序重新編寫并且下載到單片機里邊,看是否能夠?qū)⒐δ苓M(jìn)行實現(xiàn)。3、將數(shù)碼管的顯示功能加以改進(jìn),使其只顯示有效位。第九課:
LED點陣1、關(guān)于51的位聲明2、關(guān)于P89V51的仿真功能3、水滴程序演示4、項目開發(fā)模式5、第一個開源項目點陣LED1、led燈是整齊排列的,被鑲嵌到一塊塑料板上,可以顯示漢字和圖形,用來介紹商品,吸引顧客。1、點陣led顯示屏作為一種現(xiàn)代電子媒體,具有靈活的顯示面積(可分割、任意拼裝)、高亮度、長壽命、大容量、數(shù)字化、實時性的特點。點陣LED點陣LED原理作業(yè)1、仿照水滴程序,做個類似的作業(yè)。2、弄明白點陣LED原理和硬件設(shè)計3、自己用點陣led畫出漂亮的圖片。4、進(jìn)行單個漢字的靜態(tài)顯示和多個漢字的動態(tài)顯示。第十課:
按鍵1、跳動的心2、程序空間占用大小3、數(shù)據(jù)手冊下載地址
4、關(guān)鍵字設(shè)置獨立式按鍵矩陣按鍵蝦米I代開發(fā)板矩陣鍵盤頭文件的建立.h#ifndef_MAIN_H_#define_MAIN_H_…….…….#endif按鍵抖動硬件去抖軟件去抖檢測出鍵閉合后執(zhí)行一個延時程序,產(chǎn)生5ms~10ms的延時,讓前沿抖動消失后再一次檢測鍵的狀態(tài),如果仍保持閉合狀態(tài)電平,則確認(rèn)為真正有鍵按下。作業(yè)1、理解按鍵掃描,和按鍵消抖原理2、發(fā)揮想象力,利用矩陣按鍵控制數(shù)碼管的數(shù)字變化。3、用定時中斷的方式去抖動4、在主函數(shù)中不占時間的方式去抖動第十一課:
異步串口通信UART1、關(guān)于按鍵去抖的問題2、計算器程序3、仿真芯片使用說明常用串行通信方式1、UART異步串口通信2、I2C總線串行同步通信3、SPI串行總線同步通信UART異步串口通信UART是單片機與PC之間的最簡單的通信方式之一,也是單片機之間常用通信。UART的四種模式模式0:使用較少,暫時不講或自學(xué)。模式1:以TXD為例,平時沒數(shù)據(jù)時TXD為高電平,來了數(shù)據(jù),一位起始位0,八位數(shù)據(jù)位(一個字節(jié)),一位停止位1。模式2和3:原理和模式1一樣,只是添加了一位奇偶校驗位(防止通信出錯)。串口波特
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中西醫(yī)結(jié)合內(nèi)科學(xué)之呼吸系統(tǒng)疾病知到課后答案智慧樹章節(jié)測試答案2025年春湖南中醫(yī)藥大學(xué)
- 應(yīng)急預(yù)案管理辦法
- 高二下學(xué)期開學(xué)考試卷
- 廣西桂林賀州崇左三市高三第二次聯(lián)合調(diào)研考試英語試題
- 綠色健康養(yǎng)殖?維護(hù)食品安全-安徽省無為市畜禽養(yǎng)殖場獸用抗菌藥使用減量化實施行動概述
- 貴州六盤水食用菌產(chǎn)業(yè)發(fā)展的SWOT分析
- 浙江專用2025版高考地理大三輪復(fù)習(xí)非選擇題專練專練三意義和影響描述類新人教版
- 辦理資質(zhì)合同范例
- 地采暖施工方案
- 東莞就業(yè)補貼申請合同范例
- 新教材 人教版高中物理選擇性必修第一冊 第三章 機械波 知識點考點重點難點提煉匯總
- 項目經(jīng)理培訓(xùn)課件
- 體系基礎(chǔ)知識培訓(xùn)
- 污水處理廠安全教育培訓(xùn)
- 同課異構(gòu)知識講座
- 計算機應(yīng)用基礎(chǔ)(Windows10+Office2016)
- 支氣管肺炎個案護(hù)理查房
- Unit+6+The+Admirable+Lesson+2+History+makers 高一英語北師大版(2019)必修第二冊
- 九年級數(shù)學(xué)一輪復(fù)習(xí)全部教案
- 調(diào)車作業(yè)和安全管理
- 設(shè)計變更流程圖
評論
0/150
提交評論