




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
電協(xié)初級組培訓
—51單片機通講
主講人:柏明明時間:2015年5月29日預備知識認識51
應用51題目講解預備知識電平特性進制邏輯運算C—51電平特性數(shù)字電路中電平只有兩種狀態(tài):高電平和低電平電平分很多類:TTL、CMOS、EIA等。51單片機為TTL電平:高+5V低0V
(L<0.8VH>2.4V)TTL特點:速度快但是功耗高計算機RS232電平(EIA電平):高-12V低+12V所以計算機與單片機之間通訊時需要加電平轉(zhuǎn)換芯片max232二進制十進制二進制十進制二進制0081000101910012101010103111110114100121100510113110161101411107111151111十六進制是二進制的簡短表示形式。十進制中的0-15分別表示為十六進制的0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F熟練掌握二進制與十六進制之間的轉(zhuǎn)換。規(guī)律:一般把四個二進制數(shù)放在一起轉(zhuǎn)換成一個十六進制數(shù),轉(zhuǎn)換時先把二進制數(shù)轉(zhuǎn)換成十進制數(shù),再把十進制數(shù)轉(zhuǎn)換成十六進制數(shù)。如:0001B->1->1HB表示為二進制,H為十六進制
1001B->9->9H1010B->10->AH00101100->44->2CH
各種進位制的對應關(guān)系十進制二進制十六進制十進制二進制十六進制000910019111101010A2102111011B3113121100C41004131101D51015141110E61106151111F71117161000010810008
邏輯運算1.“與”運算“與”是實現(xiàn)“必須都有,否則就沒有”邏輯關(guān)系的運算。運算符為“&”,其運算規(guī)則如下:0&0=0,0&1=1&0=0,1&1=1
2.“或”運算“或”是實現(xiàn)“只要其中之一有,就有”邏輯關(guān)系的運算,其運算符為“|”。其運算規(guī)則如下:0|0=0,0|1=1|0=1,1|1=13.“非”運算“非”是實現(xiàn)“求反”這種邏輯的一種運算,“非”運算記作!其運算規(guī)則如下:
!1=0,!0=14.“異或”運算“異或”是實現(xiàn)“必須不同,否則就沒有”邏輯的運算,運算符為^。其運算規(guī)則如下:0^0=0,1^1=0,1^0=0^1=1C—51類型符號關(guān)鍵字數(shù)的表示范圍所占位數(shù)整型字符型實型有無(signed)int16-32768~32767(signed)short16-32768~32767(signed)long32-2147483648~214748364716unsignedint0~65535320~4294967295unsignedlongintunsignedshortint160~65535有float323.4e-38~3.4e38有double321.7e-308~1.7e308有char8-128~127無unsignedchar80~255C-51的數(shù)據(jù)類型擴充定義sfr:特殊功能寄存器聲明(reg52.h)sfr16:sfr的16位數(shù)據(jù)聲明(TL0、TH0)sbit:特殊功能位聲明例:sfrSCON=0X98;sfr16T2=0xCC;sbitOV=PSW^2;C-51的包含的頭文件通常有:reg51.h
reg52.hmath.hstdio.hreg51.h/reg52.h:定義特殊功能寄存器和位寄存器的物理地址math.h:定義常用數(shù)學運算:sin()cos()tan()abs()fabs()等Stdio.h:putchar()getchar()puts()printf()等與C語言基本相同:+-*/(加減乘除)>>=<<=(大于大于等于小于小于等于)==!=(測試等于測試不等于)&&||!(邏輯與邏輯或邏輯非)&|(按位與按位或)>><<(位右移位左移)^~(按位異或按位取反)C-51的運算符
C-51的基本語句與標準C語言基本相同:
if選擇語言
while循環(huán)語言
for循環(huán)語言
switch/case多分支選擇語言
do-while循環(huán)語言
格式:voidmain(void)
特點:無返回值,無參。
任何一個C程序有且僅有一個main函數(shù),它是整個程序開始執(zhí)行的入口。
例:voidmain()
{
總程序從這里開始執(zhí)行;
其他語句;
}主函數(shù)中斷服務程序void函數(shù)名()interruptn{
函數(shù)內(nèi)部實現(xiàn)….}預備知識認識51
應用51題目講解什么是單片機將CPU、隨機存儲器RAM、只讀存儲器ROM、中斷系統(tǒng)、定時器/計數(shù)器以及I/O接口電路等微型計算機的主要部件集成在一塊芯片上(單片化),使其具有計算機的基本功能的芯片。
主要型號:Atmel公司AT89C51、AT89C52臺灣STC(宏晶)公司STC89C51、STC89C5251單片機的內(nèi)部結(jié)構(gòu)時鐘信號源外部事件信號BUS時鐘電路8KBFlashROM256BRAM128BSFR16位×3個定時/計數(shù)器64KB總線擴展控制器可編程并行口可編程全雙工串行口CPU中斷控制器外中斷8位×4個并行口串行通信總線控制BUS52單片機內(nèi)部主要包括9個部分:一個8位的微處理器CPU8KB的片內(nèi)程序存儲器FlashROM256B的片內(nèi)數(shù)據(jù)存儲器RAM、128B特殊功能寄存器(SFR)3個16位的定時器/計數(shù)器有一個管理6個中斷源的中斷控制器4個8位并行I/O端一個全雙工的串行接口(UART)片內(nèi)振蕩電路和時鐘發(fā)生器
可擴展64KB程序、64KB數(shù)據(jù)存儲器的三總線控制電路單片機的引腳封裝: 常用40DIP40個引腳分為4類:電源引腳晶振引腳控制信號輸入/輸出引腳T2/P1.0T2EX/P1.1P1.2P1.3P1.4P1.5P1.6P1.7RSTRXD/P3.0TXD/P3.1GATE0/INT0/P3.2GATE1/INT1/P3.3T0/P3.4T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1Vss89C5289C5140393837363534333231302928272625242322211234567891011121314151617181920VccP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPSENP2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A8一、電源引腳 Vcc(40腳):接5V電源正端 Vss(20腳):接5V電源地端二、晶振引腳XTAL1(19腳)XTAL2(18腳)晶振XTAL2XTAL1單片機C1C21819三、控制信號引腳:1、RST(9腳)
RST:復位信號輸入端,高電平有效。
單片機正常工作時:RST保持兩個機器周期的高電平就會使單片機復位;
上電時:RST上的高電平必須保持10ms以上才能保證有效復位,由于振蕩器需要一定的起振時間。
P3口控制引腳引腳第二、第三功能P3.0RXD:串行口輸入P3.1TXD:串行口輸出P3.2INT0/GATE0
:外部中斷0請求輸入/定時器/計數(shù)器0運行外部控制輸入P3.3INT1/GATE1
:外部中斷1請求輸入/定時器/計數(shù)器1運行外部控制輸入P3.4T0:定時器/計數(shù)器0外部計數(shù)脈沖輸入P3.5T1:定時器/計數(shù)器1外部計數(shù)脈沖輸入P3.6WR:外部數(shù)據(jù)存儲器寫控制信號輸出P3.7RD:外部數(shù)據(jù)存儲器讀控制信號輸出
時鐘與周期
狀態(tài)周期、機器周期、指令周期
機器周期:指CPU訪問一次存儲器所需要的時間。機器周期是量度時間的基本單位。機器周期與振蕩周期的關(guān)系:1個機器周期包含12個振蕩周期,即 機器周期=12/fosc 例如,單片機的振蕩頻率fosc為12MHz,則 機器周期=12/fosc=10-6s=1us
CPU:由運算和控制邏輯組成,同時還包括中斷系統(tǒng)和部分外部特殊功能寄存器;RAM:用以存放可以讀寫的數(shù)據(jù),如運算的中間結(jié)果、最終結(jié)果以及欲顯示的數(shù)據(jù);ROM:用以存放程序、一些原始數(shù)據(jù)和表格;I/O口:四個8位并行I/O口,既可用作輸入,也可用作輸出;T/C:兩個定時/記數(shù)器,既可以工作在定時模式,也可以工作在記數(shù)模式;內(nèi)部資源六個中斷源的中斷控制系統(tǒng);一個全雙工UART(通用異步接收發(fā)送器)的串行I/O口,用于實現(xiàn)單片機之間或單片機與微機之間的串行通信;片內(nèi)振蕩器和時鐘產(chǎn)生電路,石英晶體和微調(diào)電容需要外接。最高振蕩頻率取決于單片機型號及性能??偩€(BUS)是計算機各部件之間傳送信息的公共通道。微機中有內(nèi)部總線和外部總線兩類。內(nèi)部總線是CPU內(nèi)部之間的連線。外部總線是指CPU與其它部件之間的連線。外部總線有三種:數(shù)據(jù)總線DB(DataBus),地址總線AB(AddressBus)和控制總線CBControlBus)。預備知識認識51
應用51題目講解I/O口流水燈數(shù)碼管按鍵中斷定時器中斷串口中斷外部中斷LED電路加上拉電阻,低電平點亮sbitLED0=P1^0;voidmain(void){ LED0=1; while(1) { LED0=!LED0; DelayMs(200); } }閃爍LED數(shù)碼管
數(shù)碼管其實就是幾個連在一起LED燈,操作方法與LED燈一樣使用數(shù)碼管時要注意區(qū)分這兩種不同的接法。為了顯示數(shù)字或字符,必須對數(shù)字或字符進行編碼。共計8段,編碼是一個字節(jié),dp、g在高位端。共陰極共陽極共陰數(shù)碼管碼表
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0 1 2 3
450x7d,0x07,0x7f,0x6f,0x77,0x7c,6 7 8 9
AB0x39,0x5e,0x79,0x71,0x00C
D
EF
無顯示數(shù)碼管電路靜態(tài)顯示的特點是每個數(shù)碼管的段選必須接一個8位數(shù)據(jù)線來保持顯示的字形碼。當送入一次字形碼后,顯示字形可一直保持,直到送入新字形碼為止。字形碼即是段選信號。靜態(tài)顯示動態(tài)掃描
動態(tài)顯示的特點是將所有數(shù)碼管段選并聯(lián)在一起,由位選控制是哪一位數(shù)碼管有效。選亮數(shù)碼管采用動態(tài)掃描顯示。所謂動態(tài)掃描即輪流向各位數(shù)碼管送出段選和位選,利用發(fā)光管的余輝和人眼視覺暫留作用,使人的感覺數(shù)碼管同時都在顯示。動態(tài)顯示的亮度比靜態(tài)顯示要差一些,選擇限流電阻時應略小于靜態(tài)顯示電路中的。sbitdula=P2^6;sbitwela=P2^7;unsignedcharcodetable[]=0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};voidmain(void){ dula=1;//先送段選 P0=table[0]; dula=0; wela=1; P0=0XFE; wela=0; while(1);}靜態(tài)顯示
dula=1; P0=table[0]; dula=0; P0=0XFF;//??ó° wela=1; P0=0XFE; wela=0; DelayMs(50);//體現(xiàn)器實現(xiàn)過程 dula=1; P0=table[1]; dula=0; P0=0XFF;//??ó° wela=1; P0=0XFD; wela=0; DelayMs(50);動態(tài)掃描按鍵:分為按鍵和矩陣鍵盤抖動問題if(KEY1==0) { DelayMs(10); if(KEY1==0) {
操作語句;……… while(!KEY1); } }獨立按鍵核心代碼:P3=0XFE; temp=P3; temp&=0XF0; if(temp!=0XF0) { DelayMs(10); temp=P3; temp&=0XF0; if(temp!=0XF0) { temp=P3; switch(temp) { case0XEE:Key=0;break; case0XDE:Key=1;break; case0XBE:Key=2;break; case0X7E:Key=3;break; }
矩陣鍵盤核心代碼:while(temp!=0XF0){temp=P3; temp&=0XF0;}
} }
P3=0XFD;………執(zhí)行主程序主程序繼續(xù)執(zhí)行主程序斷點中斷請求中斷響應執(zhí)行中斷處理程序中斷返回中斷關(guān)鍵寄存器:IE、IP
可以通過IP設置為高低兩個優(yōu)先級,默認為低優(yōu)先級。作用:當兩個中斷源同時發(fā)生時,執(zhí)行的順序。高的先執(zhí)行。同一優(yōu)先級中斷源按以下順序處理。中斷響應條件中斷源有中斷請求;此中斷源的中斷允許位為1;
CPU開中斷(即EA=1)。以上三條同時滿足時,CPU才有可能響應中斷。模式1voidTimer_Init(void)
{
TMOD=0X01; //IETMODTCON
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
EA=1;
ET0=1;
TR0=1;
}模式2:初值自動重裝voidTimer_Init(void)
{
TMOD=0X02; //IETMODTCON
TH0=0x06;
TL0=0x06;
EA=1;
ET0=1;
TR0=1;
}//任務:LED=~LED;SCON是一個特殊功能寄存器,用以設定串行口的工作方式、接收/發(fā)送控制以及設置狀態(tài)標志:
關(guān)鍵寄存器:SCON、PCON
串口SCON中關(guān)鍵位:SM0、SM1、REN、TI、RI其余位:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 啤酒生產(chǎn)質(zhì)量規(guī)則測試題附答案
- 2025年棗莊數(shù)學中考真題及答案
- 服裝專業(yè)綜合試卷及答案
- 2025年客服英文入職試題及答案
- 城管隊員筆試題目及答案
- 化學實驗安全與環(huán)保意識考查試題
- 固廢建材考試題及答案
- 2025年高考物理名校聯(lián)考仿真試題(五)
- 2025年高考物理電磁感應與路力綜合問題試題
- 2025年班組環(huán)保考試試題及答案
- GB/T 46256-2025生物基材料與制品生物基含量及溯源標識要求
- 社交APP用戶社群運營創(chuàng)新創(chuàng)業(yè)項目商業(yè)計劃書
- 2025年互聯(lián)網(wǎng)醫(yī)療市場份額動態(tài)趨勢研究報告
- 2025至2030鋁合金行業(yè)市場深度分析及競爭格局與行業(yè)項目調(diào)研及市場前景預測評估報告
- 醫(yī)院中醫(yī)科常見病癥診療規(guī)范
- 2025廣東廣州市白云區(qū)民政局招聘窗口服務崗政府雇員1人筆試備考試題及答案解析
- 《電子商務概論》(第6版) 教案 第11、12章 農(nóng)村電商;跨境電商
- 車輛改裝施工方案模板
- 到夢空間使用講解
- 大象牙膏教學課件
- 【《老年高血壓患者護理措施研究》6600字(論文)】
評論
0/150
提交評論