




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、單片機(jī)原理(yunl)復(fù)習(xí)一、理論知識(shí)碼制(二進(jìn)制(B),八進(jìn)制(O),十六進(jìn)(H),十進(jìn)制(D)注:后面的B,H,O,D只是表示(biosh)進(jìn)制方式,不表示數(shù)值。舉例(j l):1101 0101B=0 xD5H=325O=213D四者之間的轉(zhuǎn)換技巧:二進(jìn)制轉(zhuǎn)十進(jìn)制比較簡單。二進(jìn)制轉(zhuǎn)十六進(jìn)制,從低位開始四位一次轉(zhuǎn)化,即1101 0101B就是0 xD5H,二進(jìn)制轉(zhuǎn)八進(jìn)制,則從低位開始三位一次轉(zhuǎn)化,即0 11 01 0 101B不夠的加0補(bǔ)上。其他之間的轉(zhuǎn)化可以按照:先轉(zhuǎn)化為二進(jìn)制再轉(zhuǎn)化成其他進(jìn)制數(shù)的順序轉(zhuǎn)化。對(duì)于反碼,補(bǔ)碼比較簡單看一遍書就可以理解。邏輯運(yùn)算(與&,或|,非!,取反,按位異
2、或)常用的幾個(gè) 比較簡單,例:(0010 0100) & (1001 0010)= 0000 0000 (0010 0100) | (1001 0010)= 1011 0110 (0010 0100)=1101 1011(0010 0100)(1001 0010)=1011 0110 對(duì)應(yīng)位相同則是0,不 同則按或運(yùn)算來C語言基礎(chǔ)知識(shí)(二級(jí)考過了的應(yīng)該都沒問題,心疼獅城632的人) 指針和結(jié)構(gòu)體不考。4.80C51單片機(jī)的組成ROM4KB RAM128B 并行I/O32個(gè)(P0,P1,P2,P3 4x8) 串行口UART 中斷源5個(gè) 定時(shí)器2個(gè) 最大晶振24M 引腳數(shù)40個(gè)注:1)8bit(位
3、)=1byte(字節(jié),簡稱B) 1024B=1KB 1024KB=1M ROM和RAM計(jì)算,“8051”中的“1”一般代表ROM=”1”x4KB RAM 記住就行 組成:CPU(運(yùn)算器,程序計(jì)數(shù)器PC,指令寄存器),存儲(chǔ)器(ROM程序 存儲(chǔ)器,RAM數(shù)據(jù)存儲(chǔ)器),I/O口5.8051的特殊功能寄存器(SFR)21個(gè)不連續(xù)的分布在80HFFH的128B地址空間中,地址是?0H和?8H是可位尋址的寄存器。具體寄存器表可以看下面的附件表,有些重要的下面會(huì)提到。6.8051堆棧及作用在這個(gè)涉及到比較(bjio)底層一點(diǎn)寄存器地址分布,如果要了解的話可以看書上P19的講解。這里說起來比較復(fù)雜,總之通俗來
4、說,就是給單片機(jī)的儲(chǔ)存空間進(jìn)行整理排序是用戶或者單片機(jī)內(nèi)部可以合理調(diào)用和儲(chǔ)存。時(shí)鐘電路(dinl)及CPU工作時(shí)序時(shí)鐘電路即晶振電路,兩等值電容一端同接地(jid)(GND),另一端分別接晶振的兩端,再接入XTAL1和XTAL2構(gòu)成。振蕩周期:1/fosc fosc為晶振頻率;狀態(tài)周期:2倍的振蕩周期;機(jī)器周期:12倍的振蕩周期,6倍的狀態(tài)周期;指令周期:14倍的機(jī)器周期,即12,24,36,48倍的振蕩周期;8.80C51的儲(chǔ)存結(jié)構(gòu)和地址空間1)地址空間:兩種結(jié)構(gòu)形式,即普林斯頓結(jié)構(gòu)和哈佛結(jié)構(gòu)普林斯頓結(jié)構(gòu)特點(diǎn)是,微型計(jì)算機(jī)只有一個(gè)地址空間,ROM和RAM安排在這一地址空間的不同區(qū)域,一個(gè)地址
5、對(duì)應(yīng)唯一的一個(gè)存儲(chǔ)器單元(一個(gè)存儲(chǔ)器單元存放一個(gè)8位二進(jìn)制數(shù)),CPU訪問ROM和訪問RAM用同一訪問指令。相當(dāng)于“串行”。哈 佛結(jié)構(gòu)結(jié)構(gòu)特點(diǎn)是,微型計(jì)算機(jī)的ROM和RAM分別安排在不同的地址空間,ROM和RAM可以有相同的地址,CPU訪問ROM和訪問RAM存儲(chǔ)器用不同的指令訪問。相當(dāng)于“并行”。2)4個(gè)物理地址:片內(nèi)ROM(程序存儲(chǔ)器),片外ROM,片內(nèi)RAM(數(shù)據(jù)存儲(chǔ)器),片外RAM。3)3個(gè)邏輯地址:片內(nèi)RAM,片外RAM,片內(nèi),外統(tǒng)一編址的ROM單片機(jī)正常工作時(shí)引腳EA=1內(nèi)部4KB ROM;當(dāng)用于調(diào)試時(shí)EA=0(接地) 64KB ROM全為片外;片外RAM,最高可以拓展64KB RA
6、M;片內(nèi)RAM是使用最多的地址空間, 所有操作指令的操作數(shù)只能在此地址空間或SFR中。6)8051片內(nèi)RAM 地址空間在前128B(00H7FH)儲(chǔ)存用戶變量,后128B地 址空間(80HFFH)用來儲(chǔ)存SFR,所以片內(nèi)RAM地址空間和SFR是連續(xù) 的。 單片機(jī)復(fù)位方式8051單片機(jī)復(fù)位引腳RST出現(xiàn)5ms以上高電平時(shí),就會(huì)完成復(fù)位。持續(xù)高電平則會(huì)循環(huán)復(fù)位無法執(zhí)行程序。復(fù)位形式有:上電復(fù)位(自動(dòng)),開關(guān)復(fù)位(一般由按鍵操作)10.單片機(jī)工作方式復(fù)位方式、程序執(zhí)行方式、低功耗方式、以及EPROM編程和校驗(yàn)方式11.單片機(jī)低功耗方式 單片機(jī)有兩種低功耗操作(cozu)方式:節(jié)電操作(cozu)方式
7、和掉電操作(cozu)方式。在節(jié)電方式時(shí),CPU停止工作,RAM、定時(shí)器、串行口和中斷系統(tǒng)繼續(xù)工作。在掉電方式時(shí),僅給片內(nèi)RAM供電,片內(nèi)所有其他的電路均不工作。單片機(jī)用軟件來選擇操作方式,由電源控制寄存器PCON中的有關(guān)位控制,這些有關(guān)的位是:IDL(PCON.0)節(jié)電方式位,IDL=1時(shí),激活節(jié)電方式PD(PCON.1)掉電方式位,PD=1時(shí),激活掉電方式單片機(jī)程序執(zhí)行方式程序執(zhí)行方式所執(zhí)行的程序可以在內(nèi)部ROM、外部ROM、或者同時(shí)放在內(nèi)外ROM中。數(shù)據(jù)指針DPTR作用16位寄存器,可分為DPL(低8位)和DPH(高8位)兩個(gè)8位寄存器。DPTR用來存放16位地址值,以便間接尋址或變址尋
8、址的方式對(duì)片外數(shù)據(jù)RAM或ROM進(jìn)行64KB范圍內(nèi)的數(shù)據(jù)操作。14.8051單片機(jī)總線 地址總線,數(shù)據(jù)總線,控制總線。15.8051指令系統(tǒng)(了解)尋址方式一、寄存器尋址:指令中地址碼給出的是某一通用寄存器的編號(hào),寄存器的內(nèi)容為操作數(shù)。MOV A,R0 ;8051可用寄存器尋址的空間是:R0R7,ACC,CY(位),DPTR,AB 6二、直接尋址:指令中地址碼部分直接給出了操作數(shù)的有效地址MOV A,4FH;可用于直接尋址的空間是,內(nèi)部RAM低于128字節(jié)(包括其中的可位尋址區(qū))、SFR 三、寄存器間接尋址:指令中給出的寄存器的內(nèi)容為操作數(shù)的地址,不是操作數(shù)本身,即寄存器為地址指針MOV A,
9、R1 四、立即尋址:指令中地址碼部分給出的就是操作數(shù)MOV A,#6FH 五、變址尋址:指定的變址寄存器的內(nèi)容與指令中給出的偏移量相加,結(jié)果為操作數(shù)地址MOVC A,A+DPTR 六、相對(duì)尋址:由PC提供的基地址與指令中提供的偏移量el相加,得到的操作數(shù)的地址,這時(shí)指出的地址是操作數(shù)與現(xiàn)行指令的相對(duì)位置SJMP rel 七、位尋址:操作數(shù)是二進(jìn)制的某一位,其位地址出現(xiàn)在指令中SETB bit 8051可用于位尋址的空間是,內(nèi)部RAM的可位尋址區(qū)和SFR區(qū)中的字節(jié)地址可以被8整除(即地址以“0”或“8”結(jié)尾)的寄存器所占空間。并行I/O口說明P0口:可以作為輸入/輸出口,但在實(shí)際應(yīng)用中常作為地址
10、/數(shù)據(jù)總線口,即低8位地址與數(shù)據(jù)分時(shí)使用P0口。低8位地址由ALE信號(hào)的下跳沿鎖存到外部地址鎖存器中,高8位則由P2口輸出。P1口:只作為(zuwi)普通輸入/輸出端口。P2口:可以作為輸入/輸出口,可與P0口一起組成(z chn)16位地址總線使用。對(duì)于內(nèi)部無ROM的單片機(jī),P2口一般不作為I/O口與外設(shè)直接相連。P3口:雙功能口,第一功能使用時(shí)與P1相同,第二功能如下(應(yīng)該要記住(j zh),可能會(huì)考簡答題):第二功能P3.0 RXD 串行輸入口P3.1 TXD 串行輸出口P3.2 INT0 外部中斷0輸入P3.3 INT1 外部中斷1輸入P3.4 T0 計(jì)數(shù)器0計(jì)數(shù)輸入P3.5 T1 計(jì)
11、數(shù)器1計(jì)數(shù)輸入P3.6 WR 外部數(shù)據(jù)RAM寫選通信號(hào)P3.7 RD 外部數(shù)據(jù)RAM讀選通信號(hào)定時(shí)器/計(jì)數(shù)器工作原理8051系列單片機(jī)至少有兩個(gè)16位內(nèi)部定時(shí)器/計(jì)數(shù)器,8052有三個(gè)定時(shí)器/計(jì)數(shù)器,兩個(gè)基本定時(shí)器/計(jì)數(shù)器是定時(shí)器/計(jì)數(shù)器0(T/C0)和定時(shí)器/計(jì)數(shù)器1(T/C1)。它們既可以編程為定時(shí)器使用,也可以編程為計(jì)數(shù)器使用,若是計(jì)數(shù)內(nèi)部晶振驅(qū)動(dòng)時(shí)鐘,它是定時(shí)器;若是計(jì)數(shù)8051的輸入管腳(看上面P3.4和P3.5)的脈沖信號(hào),它是計(jì)數(shù)器。1)當(dāng)T/C工作在定時(shí)器時(shí),每個(gè)機(jī)器周期計(jì)數(shù)值加1,例如當(dāng)晶振為6MHz時(shí),每2us計(jì)數(shù)值加1。2)當(dāng)T/C工作在計(jì)數(shù)器時(shí),計(jì)數(shù)脈沖來自外部脈沖輸入
12、管腳T0(P3.4)或T1(P3.5),當(dāng)T0或T1腳上負(fù)跳變時(shí)計(jì)數(shù)值加1。識(shí)別管腳上的負(fù)跳變需兩個(gè)機(jī)器周期,即24個(gè)振蕩周期。所以T0或T1腳輸入的可計(jì)數(shù)外部脈沖的最高頻率為1/24fosc,當(dāng)晶振為12MHz時(shí),最高計(jì)數(shù)率為500KHz,高于此頻率將出錯(cuò)。18.看門狗概念即看門狗一個(gè)定時(shí)器,實(shí)質(zhì)上為一個(gè)監(jiān)視定時(shí)器,他的定時(shí)時(shí)間是不可變的,到達(dá)時(shí)間則會(huì)產(chǎn)生中斷或者脈沖溢出,是系統(tǒng)復(fù)位。一般程序正常運(yùn)行的時(shí)候會(huì)在看門狗定時(shí)器到達(dá)規(guī)定時(shí)間前對(duì)其進(jìn)行刷新使其重新計(jì)時(shí)(重置定時(shí)器,“喂狗”)。若程序出現(xiàn)跑飛,則不會(huì)對(duì)其刷新,看門狗定時(shí)器到達(dá)規(guī)定時(shí)間則會(huì)產(chǎn)生中斷或溢出脈沖對(duì)程序進(jìn)行復(fù)位。串口工作原理及
13、多機(jī)通信方式,四種工作方式波特率和比特率:單位時(shí)間內(nèi)傳輸二進(jìn)制代碼的有效位(bit)數(shù)為比特率,單位為bit/s(bps)單位時(shí)間內(nèi)傳輸碼元符號(hào)的個(gè)數(shù)單位為Baud。說明一下,對(duì)于串口通信,一般碼元為8或10或11位的二進(jìn)制代碼組成,那么比特率分別等于8倍,10倍,11倍的波特率。工作(gngzu)原理:設(shè)兩個(gè)單片機(jī)之間通信甲機(jī)發(fā)送,乙機(jī)接受。甲機(jī)CPU向SBUF(發(fā)送緩存區(qū))寫入數(shù)據(jù),就啟動(dòng)了發(fā)送過程,在發(fā)送控制器的控制指令下,按設(shè)定好的波特率,每來一個(gè)移位(y wi)時(shí)鐘,數(shù)據(jù)移出一位,由低位到高位一位一位發(fā)送到電纜線上,移出的數(shù)據(jù)位通過線直達(dá)乙機(jī),按照波特率,每來一個(gè)移位時(shí)鐘,由低位到高
14、位一位一位移入SBUF(接收緩存區(qū));這樣,一個(gè)移出一個(gè)移入便實(shí)現(xiàn)數(shù)據(jù)傳輸。注意:雙方(shungfng)波特率必須相等,否則移位時(shí)鐘不同則會(huì)丟失數(shù)據(jù)。多機(jī)通信方式:單片機(jī)之間的通信(二者RXD,TXD交叉相接,共地,即接同一個(gè)GND。)單片機(jī)與PC通信(單片機(jī)需要利用MAX232芯片轉(zhuǎn)換電平,RS232連接線)四種工作方式及波特率計(jì)算:方式0(移位寄存器方式)數(shù)據(jù)通過RXD輸入/輸出,TXD輸出頻率為fosc/12的時(shí)鐘脈沖。數(shù)據(jù)格式為8位,低在前高位在后:Baud=(fosc為晶振頻率) 發(fā)送過程以寫SBUF開始,當(dāng)8位數(shù)據(jù)傳送完,TI(發(fā)送中斷標(biāo)志位)被置1。方可發(fā)送下一幀數(shù)據(jù)。接受時(shí)必
15、須REN=1(允許接受)和RI=0(接受中斷標(biāo)志位),當(dāng)8位接受完后RI置1,此時(shí),可通過讀SBUF指令,將串口數(shù)據(jù)讀入。方式1(波特率可變10位異步通信方式)TXD為發(fā)送端,RXD位接受端,每幀10位:1個(gè)起始位0,8個(gè)數(shù)據(jù)位,一個(gè)停止位1。其中,起始位和停止位會(huì)自動(dòng)插入。由T1定時(shí)器提供移位時(shí)鐘,即設(shè)置波特率: X為定時(shí)器初值舉個(gè)例子:當(dāng)SMOD=0(后面會(huì)介紹各寄存器)時(shí),晶振頻率為12MHz,需要設(shè)置波特率為9600。那么根據(jù)公式可以算出X=253??赡軙?huì)出現(xiàn)小數(shù),那就取整即可,但是實(shí)際得到的波特率會(huì)和9600不相等。補(bǔ)充一點(diǎn),如果問你晶振設(shè)置為11.0592MHz的原因,就可以回答,
16、方便設(shè)置波特率,這個(gè)晶振下設(shè)置的波特率算出來的多為整數(shù)比較準(zhǔn)確。方式2(波特率固定11位異步通信方式)TXD為發(fā)送端,RXD位接受端,每幀11位:一個(gè)起始位0,9個(gè)是數(shù)據(jù)位,1個(gè)停止位1。發(fā)送時(shí),第九位數(shù)據(jù)由SCON中的TB8為提供,接收到的第九位放在SCON的RB8中。他可用為校驗(yàn)位或者多機(jī)通信中地址還是數(shù)據(jù)的特征位:方式3(波特率可變11位異步通信方式)引腳使用和數(shù)據(jù)格式同方式(fngsh)2,波特率計(jì)算同方式1。中斷(zhngdun)系統(tǒng)8051單片機(jī)有5個(gè)中斷源,有一個(gè)中斷優(yōu)先級(jí),每個(gè)中斷源的優(yōu)先級(jí)可以(ky)編程控制,中斷允許受到CPU開中斷和中斷源開中斷的兩級(jí)控制。中斷源:外部中斷
17、請(qǐng)求0由INT0(P3.2)輸入;外部中斷請(qǐng)求1由INT1(P3.3)輸入;定時(shí)器/計(jì)數(shù)器0溢出中斷請(qǐng)求;定時(shí)器/計(jì)數(shù)器1溢出中斷請(qǐng)求;串行口發(fā)送/接收中斷請(qǐng)求。中斷優(yōu)先級(jí):由寄存器IP控制,只能實(shí)現(xiàn)二級(jí)中斷服務(wù)嵌套。簡單點(diǎn)說,進(jìn)入一個(gè)中斷后,再只能進(jìn)一個(gè)中斷,不能再再第二個(gè)中斷里進(jìn)入第三個(gè)中斷。如下圖說明:Main函數(shù) 中斷3 中斷2 中斷1 第三個(gè)中斷無法實(shí)現(xiàn)的!這就 是二級(jí)嵌套的含義。 END中斷處理過程:中斷請(qǐng)求,即中斷標(biāo)志位置1,請(qǐng)求中斷。CPU在每個(gè)指令周期的最后一個(gè)機(jī)器周期都會(huì)檢查是否有中斷請(qǐng)求,檢查到后如果相應(yīng)中斷允許位置1的話則會(huì)進(jìn)入中斷響應(yīng)。否則繼續(xù)執(zhí)行下條指令。中斷響應(yīng)階
18、段,如有多個(gè)中斷源,則CPU判斷優(yōu)先級(jí),優(yōu)先級(jí)高的先執(zhí)行。并阻斷低級(jí)中斷。中斷服務(wù)(fw)是完成中斷要處理的事務(wù),就是執(zhí)行中斷函數(shù)中的內(nèi)容。中斷返回是通過執(zhí)行一條RETI中斷返回指令完成的,該指令是堆棧(duzhn)中被壓入的斷點(diǎn)地址彈到PC,從而(cng r)返回主程序斷點(diǎn)繼續(xù)執(zhí)行主程序。(說這么多實(shí)際就是打波浪線這句話)程序解析主要內(nèi)容有定時(shí)器,中斷函數(shù),數(shù)碼管,流水燈,按鍵等。注:程序題需要根據(jù)具體電路編寫!兩個(gè)數(shù)碼管顯示兩位數(shù),一個(gè)顯示十位,一個(gè)顯示各位,按鍵按下一次對(duì)應(yīng)數(shù)碼管顯示數(shù)字將加1,加到50后清零。24Mhz晶振頻率1)參考電路圖:參考(cnko)程序:#include re
19、g51.hsbit Key=P32;/key位申明(shnmng)unsigned char count=0; /按鍵(n jin)次數(shù)紀(jì)錄變量unsigned char shi=0; /十位數(shù)字unsigned char ge=0;/個(gè)位數(shù)字bit buf=1; /用于儲(chǔ)存key的之前狀態(tài)unsigned char Buffer10=0 x03,0 x9f,0 x25,0 x0d,0 x99,0 x49,0 x41,0 x1f,0 x01,0 x09;/數(shù)碼管09編碼共陽極void delay();/延時(shí)函數(shù)void main()Key=1; /初始化P0=0 xFF;P2=0 xFF;wh
20、ile(1)buf=Key; /將key當(dāng)前狀態(tài)賦給buf if(Key!=buf) /如果key當(dāng)前的狀態(tài)值不等于之前狀態(tài),則有可能按下按鍵delay(); /延時(shí)消抖if(Key!=buf) /確認(rèn)(qurn)按鍵按下count+;if(count=50)/到50便請(qǐng)零count=0;shi=count/10;/十位(sh wi)賦值ge =count%10;/個(gè)位賦值P0=Buffershi;/數(shù)碼管1賦值P2=Bufferge;/數(shù)碼管2賦值void delay()unsigned int i;for(i=0;i500;i+);定時(shí)流水燈,8個(gè)LED依次(yc)發(fā)光間隔1s,晶振頻率1
21、2MHz參考電路圖參考(cnko)程序:#include reg51.hunsigned char count=0; /計(jì)數(shù)變量用來(yn li)計(jì)定時(shí)次數(shù)unsigned int tmp=0; /用于記錄(jl)定時(shí)器初值bit flag=0;unsigned char buf=0 x01;void main()EA=1; /開總中斷TMOD=0 x01; /選擇定時(shí)器0方式1,如果用T1的話則是 TMOD=0 x10;tmp=(12000000/12)*50/1000; /每次定時(shí)50ms,計(jì)算定時(shí)器初值 注:不要寫成(50/100),原因是這個(gè)結(jié)果為0,使得tmp會(huì)等于0;tmp=655
22、36-tmp;TH0=tmp/256; /初值高8位賦值TL0=tmp%256; /初值低8位賦值ET0=1; /開定時(shí)器0中斷TR0=1; /開啟定時(shí)器0while(1)if(flag=1)/判斷1s是否(sh fu)到達(dá)flag=0; /清除(qngch)標(biāo)志位P1=buf; /此時(shí)(c sh)P1=1111 1110B 即對(duì)應(yīng)第一個(gè)燈亮buf=buf=20) /中斷20次即,20 x50ms=1s;count=0;/計(jì)數(shù)變量清空flag=1; /1s時(shí)間達(dá)到標(biāo)志位三、程序技巧(寫給對(duì)單片機(jī)完全無法(wf)不理解,C語言也不是很好的朋友)1.寫程序的時(shí)候(sh hou)構(gòu)架不會(huì)寫算法函數(shù),
23、那也的寫一個(gè)完成的程序。下面(xi mian)是一個(gè)空程序,實(shí)在不會(huì)就先把這個(gè)擺上去:#include void main()這個(gè)程序是沒有語法錯(cuò)誤的,是可以運(yùn)行的,但是沒有算法。2.寫定時(shí)器的時(shí)候程序的時(shí)候?qū)嵲诓粫?huì)寫就把下面的幾句話寫上去:TMOD=0 x01;(或者TMOD=0 x10)TH0=(fosc/12)*ms/1000/256; TL0=(fosc/12)*ms/1000%256;TR0=1;ET0=1;注:其中fosc是題目給的晶振頻率,如果是12MHz,就應(yīng)該寫 12000000,ms是一次定時(shí)時(shí)間,如果50ms,就寫50,注意單位。有涉及到延時(shí)的程序就可以這樣寫:#incl
24、ude void delay();void main()delay();void delay()unsigned int i;for(i=0;i200;i+);一個(gè)設(shè)置定時(shí)器0工作方式1的函數(shù)(hnsh):(默認(rèn)的晶振是12MHz)#include unsigned char T0RH=0 x00;unsigned char T0RL=0 x00;void ConfigTimer0(unsigned int ms);void main() void ConfigTimer0(unsigned int ms) unsigned long tmp; tmp=(12000000/12)*ms/100
25、0; tmp=65536-tmp; T0RH=tmp/256; T0RL=tmp%256; TMOD=0 x01; TH0=T0RH; TL0=T0RL; ET0=1; TR0=1;對(duì)于有中斷(zhngdun)的程序:(加粗的都是關(guān)鍵字,要記得單詞)#include unsigned char T0RH=0 x00;unsigned char T0RL=0 x00;void ConfigTimer0(unsigned int ms);void main() EA=1; ConfigTimer0(50); /例如(lr)定時(shí)50msvoid ConfigTimer0(unsigned int m
26、s) unsigned long tmp; tmp=(12000000/12)*ms/1000; tmp=65536-tmp; T0RH=tmp/256; T0RL=tmp%256; TMOD=0 x01; TH0=T0RH; TL0=T0RL; ET0=1; TR0=1;void Timer0() interrupt 1TH0=T0RH;TL0=T0RL;總之,不會(huì)(b hu)寫就記一些成段有聯(lián)系的程序往上寫就行了。趕時(shí)間寫的,肯定會(huì)有遺漏的地方,多多(du du)包涵!附:重要寄存器(查找方便(fngbin)一點(diǎn),省得翻書)1.SFR(打星號(hào)為可位尋址,這個(gè)是52單片機(jī)的SFR多了一些(y
27、xi)東西)IP中斷(zhngdun)優(yōu)先級(jí)寄存器PS串行口中斷(zhngdun)優(yōu)先級(jí)控制位。PS=1,串行口中斷(zhngdun)定義為高 HYPERLINK /subview/1035789/1035789.htm t /item/IP/_blank 優(yōu)先級(jí)中斷。PS=0,串行口中斷定義為低優(yōu)先級(jí)中斷。PT1 HYPERLINK /subview/281961/281961.htm t /item/IP/_blank 定時(shí)器/計(jì)數(shù)器1中斷優(yōu)先級(jí)控制位。PT1=1,定時(shí)器/計(jì)數(shù)器1中斷定義為高優(yōu)先級(jí)中斷。PT1=0,定時(shí)器/計(jì)數(shù)器1中斷定義為低優(yōu)先級(jí)中斷。PX1 HYPERLINK /su
28、bview/494468/494468.htm t /item/IP/_blank 外部中斷1 HYPERLINK /subview/1206615/1206615.htm t /item/IP/_blank 中斷優(yōu)先級(jí)控制位。PX1=1,外部中斷1定義為高優(yōu)先級(jí)中斷。PX1=0,外部中斷1定義為低優(yōu)先級(jí)中斷。PT0定時(shí)器/計(jì)數(shù)器0中斷優(yōu)先級(jí)控制位。PT0=1, HYPERLINK /subview/281961/281961.htm t /item/IP/_blank 定時(shí)器/計(jì)數(shù)器0中斷定義為高優(yōu)先級(jí)中斷。PT0=0,定時(shí)器/計(jì)數(shù)器0中斷定義為低優(yōu)先級(jí)中斷。PX0外部中斷0中斷優(yōu)先級(jí)控制位
29、。PX0=1,外部中斷0定義為高優(yōu)先級(jí)中斷。PX0=0,外部中斷0定義為低優(yōu)先級(jí)中斷。IE中斷(zhngdun)允許寄存器SCON串行口控制(kngzh)寄存器SM0、SM1串行口工作方式(fngsh)控制位SM2多機(jī)通信(tng xn)控制位多機(jī)通信是工作(gngzu)于方式2和方式3,SM2位主要用于方式2和方式3。接收狀態(tài),當(dāng) HYPERLINK /view/1060187.htm t /_blank 串行口工作(gngzu)于方式2或3,以及SM2=1時(shí),只有當(dāng)接收到第9位數(shù)據(jù)(RB8)為1時(shí),才把接收到的前8位數(shù)據(jù)送入 HYPERLINK /view/3357584.htm t /_
30、blank SBUF,且置位RI發(fā)出中斷申請(qǐng),否則會(huì)將接收到的數(shù)據(jù)放棄。當(dāng)SM2=0時(shí),就不管第9位數(shù)據(jù)是0還是1,都會(huì)將數(shù)據(jù)送入 HYPERLINK /view/3357584.htm t /_blank SBUF,并發(fā)出中斷申請(qǐng)。工作于方式0時(shí),SM2必須為0。REN允許接收位REN用于控制數(shù)據(jù)接收的允許和禁止,REN=1時(shí),允許接收,REN=0時(shí),禁止接收。TB8發(fā)送接收數(shù)據(jù)位8在方式2和方式3中,TB8是要發(fā)送的即第9位 HYPERLINK /view/190231.htm t /_blank 數(shù)據(jù)位。在多機(jī)通信中同樣亦要傳輸這一位,并且它代表傳輸?shù)牡刂愤€是數(shù)據(jù),TB8=0為數(shù)據(jù),TB
31、8=1時(shí)為地址。RB8接收數(shù)據(jù)位8在方式2和方式3中,RB8存放接收到的第9位數(shù)據(jù),用以識(shí)別接收到的數(shù)據(jù)特征。TI發(fā)送中斷標(biāo)志位可尋址標(biāo)志位。方式0時(shí),發(fā)送完第8位數(shù)據(jù)后,由硬件置位,其它方式下,在發(fā)送或停止位之前由硬件置位,因此,TI=1表示幀發(fā)送結(jié)束,TI可由軟件清“0”。RI接收中斷標(biāo)志位可尋址標(biāo)志位。接收完第8位數(shù)據(jù)后,該位由硬件置位,在其他工作方式下,該位由硬件置位,RI=1表示幀接收完成。在串口 HYPERLINK /view/4499229.htm t /_blank 中斷處理時(shí),TI,RI都需要軟件清0,硬件置位后不可能自動(dòng)清0,此外,在進(jìn)行緩沖區(qū)操作時(shí),需要ES=0,以防止中
32、斷出現(xiàn)。TMOD定時(shí)器工作方式寄存器,GATE門控制(kngzh)。GATE=1時(shí),“與門”的輸出信號(hào)K由INTx輸入電平和TRx位的狀態(tài)一起決定(judng)(即此時(shí)K=TRxINTx),當(dāng)且僅當(dāng)TRx=1,INTx=1(高電平)時(shí),計(jì)數(shù)(j sh)啟動(dòng);否則,計(jì)數(shù)停止。當(dāng)INT0引腳為高電平時(shí)且TR0置位,TR0=1;啟動(dòng)定時(shí)器T0;當(dāng)INT1引腳為高電平時(shí)且TR1置位,TR1=1;啟動(dòng)定時(shí)器T1。GATE=0時(shí),“或門”輸出恒為1,“與門”的輸出信號(hào)K由TRx決定(即此時(shí)K=TRx),定時(shí)器不受INTx輸入電平的影響,由TRx直接控制定時(shí)器的啟動(dòng)和停止。當(dāng)TR0=1,啟動(dòng)定時(shí)器T0。當(dāng)T
33、R1=1,啟動(dòng)定時(shí)器T1。,C/T功能選擇位C/T=0時(shí)為定時(shí)功能: 加1計(jì)數(shù)器對(duì)脈沖f進(jìn)行計(jì)數(shù),每來一個(gè)脈沖,計(jì)數(shù)器加1,直到計(jì)時(shí)器TFx滿溢出;C/T=1時(shí)為計(jì)數(shù)功能: 加1計(jì)數(shù)器對(duì)來自輸入引腳T0(P3.4)和T1(P3.5)的外信號(hào)脈沖進(jìn)行計(jì)數(shù),每來一個(gè)脈沖,計(jì)數(shù)器加1,直到計(jì)時(shí)器TFx滿溢出;,M0、M1方式選擇功能MCS-51的定時(shí)器T0有4種工作方式:方式0,方式1,方式2,方式3。MCS-51的定時(shí)器T1有3種工作方式:方式0,方式1,方式2。M1M0工作方式功能說明00方式013位定時(shí)器/計(jì)數(shù)器01方式116位定時(shí)器/計(jì)數(shù)器10方式2自動(dòng)重載8位定時(shí)器/計(jì)數(shù)器11方式3T0分為2個(gè)8位獨(dú)立計(jì)數(shù)器,T1無方式3TCON定時(shí)器控制(kngzh)寄存器TF1:定時(shí)器1溢出(y ch)標(biāo)志位。當(dāng)定時(shí)器1計(jì)滿溢出時(shí),由硬件使TF1置“1”,并且申
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- T-ZNZ 286-2024 土壤中抗生素抗性基因檢測 高通量熒光定量PCR 法
- T-ZZB 3679-2024 汽車用熱塑性彈性體(TPE)腳墊
- 2025年度股權(quán)變更與員工激勵(lì)相結(jié)合的協(xié)議書
- 二零二五年度商標(biāo)共營協(xié)議及市場推廣合同
- 二零二五年度婚禮婚禮策劃與現(xiàn)場協(xié)調(diào)免責(zé)合同
- 2025年度綠化樹木修剪與智慧城市管理系統(tǒng)合同
- 2025隱名股東股權(quán)轉(zhuǎn)讓及公司股權(quán)激勵(lì)終止及補(bǔ)償協(xié)議
- 二零二五年度杉木木材行業(yè)人才培養(yǎng)與合作合同
- 二零二五年度健康養(yǎng)生產(chǎn)品傭金合作協(xié)議
- 2025年度車庫車位使用權(quán)股權(quán)轉(zhuǎn)讓合同
- 苗木采購服務(wù)方案以及售后服務(wù)方案2
- 高中英語-Studying abroad教學(xué)課件設(shè)計(jì)
- 6kvfc真空接觸器試驗(yàn)報(bào)告
- 醫(yī)療廣告法律制度
- 計(jì)算機(jī)應(yīng)用基礎(chǔ)教程(Windows10+Office2016)PPT全套完整教學(xué)課件
- 2023年06月北京市地質(zhì)礦產(chǎn)勘查院所屬事業(yè)單位公開招聘39人筆試題庫含答案詳解析
- 天津武清區(qū)事業(yè)單位考試真題2022
- 氣候變化與林業(yè)碳匯知到章節(jié)答案智慧樹2023年浙江農(nóng)林大學(xué)
- 2021年湖北省煙草專賣局系統(tǒng)招聘考試真題
- 造價(jià)咨詢重點(diǎn)、難點(diǎn)及控制措施
- 鐵路營業(yè)線施工安全管理培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論