




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第五章 MCS-51單片機的內部結構中斷系統(tǒng)1定時/計數器2串行口3中斷處理過程中斷的基本概念MCS-51的中斷系統(tǒng)結構中斷應用舉例一二三四第一節(jié) 中斷系統(tǒng)日常生活中的中斷與單片機中斷的比較: 某同學 單片機 過程說明正在看書 執(zhí)行主程序電話鈴響 中斷請求信號 中斷請求暫??磿?暫停執(zhí)行主程序 中斷響應書中作記號 當前PC入棧 保護斷點接電話 執(zhí)行中斷程序 中斷服務回來繼續(xù)看 返回主程序 中斷返回一、中斷的基本概念3對突發(fā)事故,做出緊急處理。解決快速CPU與慢速外設之間的矛盾。 中斷技術的優(yōu)點4二、MCS-51單片機中斷系統(tǒng)結構 中斷源 中斷標志 中斷允許 中斷優(yōu)先級 中斷控制寄存器5 MCS
2、-51的中斷系統(tǒng)中斷源MCS-51單片機有5個中斷請求源:單片機INT0或 外部輸入中斷源INT0(P3.2)INT1或 外部輸入中斷源INT1(P3.3)T0 定時器T0溢出中斷源T1 定時器T1溢出中斷源串行口 串行口發(fā)送或接收中斷源6 MCS-51的中斷系統(tǒng)中斷標志CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TIRI中斷源中斷標志位 每一個中斷源都有相應的中斷標志位; 某一個中斷源申請中斷,相應中斷標志位置1。7 MCS-51的中斷系統(tǒng)中斷允許CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TIRI中斷源中斷標志位 EA: 總中斷允許位,EA=1開放所
3、有中斷,EA=0禁止 所有中斷; 某一個中斷源還有相應的中斷允許位,置1允許相應 中斷源的中斷,置0禁止相應中斷源的中斷。中斷允許ESET0EX0EX1ET1EA8 MCS-51的中斷系統(tǒng)中斷優(yōu)先級CPU主程序INT0INT1T0T1串口IE0TF0IE1TF1TISI中斷源中斷標志位 單片機中有兩個中斷優(yōu)先級,即高優(yōu)先級和低優(yōu)先級 中斷,前者優(yōu)先權高于后者(在程序中設置,相應位 =1,為高優(yōu)先級); 同一優(yōu)先級別的中斷源按照自然優(yōu)先級順序確定優(yōu)先 級別(硬件形成,無法改變)。中斷允許ESET0EX0EX1ET1EA自然優(yōu)先級高低優(yōu)先控制PSPT0PX0PX1PT19 MCS-51的中斷系統(tǒng)結
4、構圖 IE0TCONSCONINT0 IT0=0 IT0=1INT1 IT1=0 IT1=1TF0 IE1TF1T0T1TIRITXDRXDESET0EX0EX1ET1EA自然優(yōu)先級矢量地址高級中斷請求自然優(yōu)先級矢量地址低級中斷請求PX0PT0PX1PT1PSIEIP中斷標志位中斷源允許總允許中斷優(yōu)先級作用:控制中斷類型、中斷的開關、中斷的優(yōu)先級TCON(6位)SCON(2位)IEIP 中斷控制寄存器都是特殊功能寄存器,均可位尋址或字節(jié)尋址11TCON寄存器T0和T1控制寄存器 TF1 TF0 IE1 IT1 IE0 IT0TCON7654321012TF1/0:T1/0溢出中斷標志 T1/0
5、啟動計數后,計滿溢出由硬件置位TF1/0=1,向CPU請求中斷,此標志一直保持到CPU響應中斷后,才由硬件自動清0。也可用軟件查詢該標志,并由軟件清0。(演示) TF1 TF0 IE1 IT1 IE0 IT0TCON 88H76543210TCON寄存器T0和T1控制寄存器IE0/1:外部中斷INT0/1中斷標志位 IE0/11,外部中斷0/1向CPU申請中斷IT0/1:外部中斷INT0/1觸發(fā)方式控制位: IT0/1=0,電平觸發(fā)方式 IT0/1=1, 下降沿觸發(fā)方式13 TI (SCON.1)串行發(fā)送中斷標志。 RI (SCON.0)串行接收中斷標志。 TI RISCON寄存器串行口控制寄
6、存器SCON 98H7654321014硬件置1,軟件清0IE寄存器中斷允許寄存器 IE A8H EA ESET1EX1ET0EX0例:允許定時器T0中斷:76543210 SETB EA SETB ET0 或 MOV IE,#82H15 51單片機有兩個中斷優(yōu)先級高級和低級 相應位為1,對應的中斷源被設置為高優(yōu)先級 相應位為0,對應的中斷源被設置為低優(yōu)先級 系統(tǒng)復位時,均為低優(yōu)先級 該寄存器可以位尋址 PSPT1PX1PT0PX0IP寄存器中斷優(yōu)先級寄存器 IP B8H 7654321016中斷系統(tǒng)初始化對IE、IP、TCON、SCON中的控制位進行賦值開相應中斷源的中斷允許位設定所有中斷源
7、的優(yōu)先級若為外部中斷,應規(guī)定中斷觸發(fā)方式中斷處理過程分為三個階段:中斷響應、中斷處理 和中斷返回。中斷響應中斷處理(又稱中斷服務)中斷返回中斷響應中斷返回三、中斷處理過程1、中斷響應條件在滿足CPU的中斷響應條件之后,CPU對中斷源的中 斷請求予以處理。中斷響應條件:有中斷請求開中斷中斷沒有被屏蔽無同級或更高優(yōu)先級中斷正被服務當前指令周期已經結束若現行指令是RETI或訪問IE/IP指令,則緊接著的另一條指令也已執(zhí)行完。2、中斷響應過程中斷響應過程:1、將相應的優(yōu)先級狀態(tài)觸發(fā)器置1(以阻斷后來的同級或低級的中斷請求)。2、執(zhí)行一條硬件LCALL指令,即把程序計數器PC的內容壓入堆棧保存,再將相應
8、的中斷服務程序的入口地址送入PC。3、執(zhí)行中斷服務程序中斷響應斷點地址中斷服務子程序的入口地址程序存儲器ROM0000H:復位后,程序的入口地址(PC=0000H)0023H:串行口中斷入口0003H:外部中斷0入口000BH:定時器0溢出中斷入口0013H:外部中斷1入口001BH:定時器1溢出中斷入口002AH 使用時:通常在這些入口地址處存放一條跳轉指令,使程序跳轉到用戶安排的中斷服務程序起始地址上去!程序存儲器ROM0000H:復位后,程序的入口地址(PC=0000H)0023H:串行口中斷入口0003H:外部中斷0入口000BH:定時器0溢出中斷入口0013H:外部中斷1入口001B
9、H:定時器1溢出中斷入口002AH 包含T0中斷服務子程序的程序結構:ORG 0000HAJMP MAINORG 000BHAJMP INTT0ORG 0100HMAIN: . . SJMP $INTT0: . . RETI END;(演示T0)AJMP MAINAJMP INTT03、中斷響應時間某中斷的響應時序如圖:80C51的中斷響應時間(從標志置1到進入相應的中斷服務),至少要3個完整的機器周期。 4、中斷處理中斷服務程序從中斷服務程序入口地址開始執(zhí)行,直到返回指令RETI為止,這個過程稱為中斷處理(或中斷服務)。INTT0:PUSH ACC PUSH DPH PUSH DPL PUS
10、H PSW 中斷源服務 POP PSW POP DPL POP DPH POP ACC RETI保護現場恢復現場5、中斷返回 RETI指令功能:把斷點地址取出,送回到程序計數器PC中去。另外,它還通知中斷系統(tǒng)已完成中斷處理,將清除優(yōu)先級狀態(tài)觸發(fā)器。 特別注意:不能用RET指令代替RETI指令!中斷響應中斷返回四、中斷應用舉例26程序結構27交通燈主程序28BGREENBGREENAGREEN中斷服務子程序29#0F6HABRED課堂練習:1、請寫出外部中斷1為低電平觸發(fā),高優(yōu)先級的中 斷系統(tǒng)初始化程序。2、思考:當單片機應用需要處理多個外部中斷事件 ,如何擴展外部中斷源?1 解:采用位操作指令
11、:SETB EA SETB EX1 ;開外部中斷1SETB PX1 ;令外部中斷1高優(yōu)先級CLR IT1 ;令外部中斷1為電平觸發(fā)采用字節(jié)操作指令:MOV IE,#84H;開外部中斷1ORL IP,#04H;令外部中斷1高優(yōu)先級ANL TCON,#0FBH;令外部中斷1為電平觸發(fā)四種工作方式結構和工作原理控制寄存器應用舉例一二三四第二節(jié) 定時/計數器一、定時/計數器的結構一、定時/計數器的工作原理 定時對內部時鐘信號進行加1計數,每來一個機器周期,加1。主要用于定時、延時。計數對外部脈沖源計數,每來一個負跳變,加1。主要用于統(tǒng)計外部事件的個數。1. 定時控制寄存器(TCON)TF0、TF1:計
12、數溢出中斷請求標志位。 TF0=1或TF1=1時計數溢出; TF0=0或TF1=0時計數未滿。TR0、TR1:啟/停控制位。 TR0=1或TR1=1,使T0或T1啟動計數; TR0=0或TR1=0,使T0或T1停止計數。二、定時/計數器的控制寄存器TCON (88H)TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0T1和T0外部中斷方式控制寄存器(TMOD)GATE門控選擇位 : =0,非門控方式,定時/計數器由內部軟件啟動: TRx=1,啟動定時器工作; TRx=0,停止定時器工作。(x=0或1) =1,門控方式,定時/計數器由內、外部啟動: TRx=1,同時必須引腳INTx=
13、1,才啟動。二、定時/計數器的控制寄存器GATE C / T M1 M0 GATE C / T M1 M0TMOD (89H)T0T1常作為波特率發(fā)生器C/T: C/T =1,計數方式,對 T0、T1引腳輸入的負 脈沖計數; C/T =0,定時方式,對機器周期計數。M1、M0:計數器工作方式選擇位:三、定時/計數器的工作方式1、方式0 (M1M0=00)計數外部脈沖個數范圍:18192 (213)定時時間范圍 :T8192T2、方式1(16位定時/計數器,M1M0=01 )計數外部脈沖個數范圍:165536(216)定時時間范圍 :T65536T3、方式2(自動再裝入8位定時/計數器, M1M
14、0=10 ) 用于需要重復定時和計數的場合,多用作串口的波特率發(fā)生器。計數外部脈沖個數范圍:1256(28)定時時間范圍 :T256T4、方式3(M1M0=11,僅適用于T0)T0分成兩個8位定時/計數器TL0和TH0:TL0:既可計數也可定時,是一個8位定時/計數器。占 用了T0所有控制位: C/T,TR0,GATE,TF0和INT0、 T0引腳;TH0:只能作為定時器,因為T0已被TL0占用, TH0用 T1的控制位:TR1、TF1;T0在方式3時T1的工作模式四、定時/計數器的應用1、定時/計數器初始化若采用中斷方式,則應設置IE初值= 最大計數值-所需計數值 定時/計數器T0工作于門控
15、計數方式,所需計數值=1,允許中斷,使用工作方式2。進行初始化編程。例 11) T0定時/計數器工作于門控、計數、方式2, 可確定T0的GATE = 1, C/T = 1,M1M0=102)計數器位數n = 8,計數器初值:Count = 28-1 = 11111111B = FFH即,TH0 = FFH,TL0 = FFHMOV TMOD, #0EH ;設置T0工作于門控計數方式2MOV TL0, #0FFH ;計數器TL1賦初值FFHMOV TH0, #0FFH ;重裝寄存器TH1賦初值FFHSETB ET0 ;T0開中斷SETB EA ;CPU開中斷SETB TR0 ;預啟動T0 (當I
16、NT0輸入高電平時啟動)T0工作于方式2的初始化程序分析:周期為2ms的方波要求定時間隔為1ms,每次 時間到將P1.0取反。機器周期T=12/fosc=1s。 每個機器周期定時器計數加1,1ms=1000s, 定時器賦初值65536-1000=64536=0FC18H。 設單片機的fosc=12MHz,要求在P1.0引腳上輸出周期為2ms的方波。用定時器1的方式1編程,采用中斷方式。例 2-應用實例(1)匯編語言程序: ORG 0000H ;復位入口 AJMP START ORG 001BH ;T1中斷服務程序入口地址 AJMP T1INT ORG 0030HSTART: MOV SP, #
17、60H ;初始化程序 MOV TMOD, #10H ;設置T1工作于定時方式1 MOV TH1, #0FCH ;設置加1計數器的計數初值高字節(jié) MOV TL1, #18H ;設置加1計數器的計數初值低字節(jié) SETB TR1 ;啟動T1 SETB ET1 ;開T1中斷 SETB EA ;開總允許中斷MAIN: AJMP MAIN ;主程序T1INT: CPL P1.0 ;T1中斷服務程序 MOV TH1, #0FCH MOV TL1, #18H RETI思考:若以方式2編程,該如何修改?盡管MCS-51為用戶只提供了兩個外部中斷源,但用戶可以根據實際需求,進行外部中斷請求的擴展,如用定時器中斷作
18、為外部中斷的擴展。當引腳T0或T1上發(fā)生負跳變時,T0或T1計數器則加1。若設定計數初值為滿量程,計數器加1,就會產生溢出中斷請求,TF0或TF1變成了外部中斷請求標志位,T0或T1的中斷入口地址被擴展成了外部中斷源的入口地址。2、采用定時/計數器擴展外部中斷-擴展外部中斷 設某用戶系統(tǒng)中已使用了兩個外部中斷源,并置定時器T1工作在模式2,作串行口波特率發(fā)生器用?,F要求再增加一個外部中斷源,并由P1.0輸出一個5KHz的方波。Fosc = 12MHz。例 3分析:目的:1) 增加一個外部中斷; 2) 使P1.0輸出一個方波。條件:1)兩個外部中斷源已被使用 2)定時器T1已用于串行口波特率發(fā)生
19、器 因此:可利用定時/計數器T0,使之工作在模式3, 1)利用TL0擴展外部中斷源 2)利用TH0作定時器使用,輸出方波 設置初值: 1) TL0 = 0FFH 2) 因為輸出方波f = 5kHz,故方波周期為 200us,用TH0產生100us的定時,故TH0 的初值 X = 256 (定時時間/機器周期) = 256 - (100us*晶振頻率/12) = 156設定T0工作方式,TMOD,TCON.程序: MOV TMOD,#27H;T0:模式3、計數,T1:模式2、定時 MOV TL0,#0FFH ;一旦加1,馬上溢出,申請中斷 MOV TH0,#156 ;TH0初值 MOV TH1,
20、#data ;根據波特率要求而定 MOV TL1, #data MOV TCON,#55H;01010101 MOV IE,#9FH ;開放全部中斷 . ORG 000BHTL0INT:MOV TL0,#0FFH ;TL0重新賦值 RETI ORG 001BHTH0INT: MOV TH0,#156 ;TH0重新賦值 CPL P1.0 RETI 例:脈沖參數測量GATE功能的使用。 脈沖高電平(計數)長度值存于21H、20H中, 脈沖低電平長度存于23H、22H中。 電路連接如下圖所示。解: 復習GATE的用法: GATE = 0時,TRi = 1,即可啟動Ti定時 / 計數 GATE = 1
21、時,TRi = 1,且 =1,才啟動定時 / 計數。89C51P3.2P3.31被測信號21a3T0計數T1計數 ORG 0000H LJMP MAIN ORG 2000HMAIN:MOV TMOD,#99H ;T0、T1均工作在定時, ;模式1,GATE=1 MOV A,#00H ;T0、T1賦計數初值00H, ;定時最長時間為0000 65536 MOV TL0,A MOV TH0,A MOV TL1,A MOV TH1,A TEST0:JB P3.2,TEST0;檢測是否到a點 SETB TR0 ;到a點,TR0 = 1,做好取計時值準備TEST1:JNB P3.2,TEST1;檢測是否
22、到1點 SETB TR1;到1點T0計時,TR1 = 1,做好T1計時準備TEST2:JB P3.2,TEST2;檢測是否到2點 CLR TR0 ;到2點,停止T0計時,T1開始計時 MOV 20H,TH0;保存T0計時結果 MOV 21H,TL0TEST3:JB P3.3,TEST3;檢測是否到3點 CLR TR1 ;到3點,停止T1計數 MOV 22H,TH1;保存T1計數結果 MOV 23H,TL1 LCALL DISP SJMP 串行口的工作方式計算機串行通信基礎89C51的串行口一二三第三節(jié) 串行口串行口應用四2并行通信和串行通信異步通信和同步通信串行通信的傳輸方向串行通信的傳輸速率
23、135一、計算機串行通信基礎4串行通信的接口方式1、并行通信和串行通信 并行通信連線多,速度快,適合近距離通信;串行通信連線少,速度慢,適合遠距離通信。 異步通信:以字符(構成的幀)為單位進行傳輸,字 符之間是異步的,同一字符內的各位是同步的。2、異步通信與同步通信同步通信:保持位同步也保持字符同步 外同步 自同步3、串行通信的傳輸方向 單工 半雙工 全雙工比特率波特率4、串行通信的傳輸速率Bits per second (bps)每秒鐘調制信號變化的次數 波特率和比特率不總是相同的,對于將數字信號1或0直接用兩種不同電壓表示的所謂基帶傳輸,比特率和波特率是相同的。所以,我們也經常用波特率表示
24、數據的傳輸速率 如每秒鐘傳送240個字符,而每個字符格式包含10位(1個起始位、1個停止位、8個數據位),這時的比特率為:10位240個/秒 = 2400 bps 根據串行通信格式及約定(如同步方式、通信速率、數據塊格式等)不同,形成了許多串行通信接口標準。UARTUSBI2CSPI5、串行通信接口種類CAN總線485總線289C51串口概述51串口的結構51串行接口寄存器13二、89C51串行口 Universal Asynchronous Receiver/Transmitter通用異步收發(fā)傳輸器 UART引腳四種工作方式波特率可設置TXD(P3.1)RXD(P3.0)幀格式有8、10、1
25、1位。1、 89C51的串行口概述 有兩個物理上獨立的接收、發(fā)送緩沖器SBUF,它們占用同一地址99H ;MOV SBUF, A ;發(fā)送數據到串口引腳 MOV A , SBUF ;接收數據2、 51串口的結構3、 MCS-51串行接口寄存器SBUFSCONPCON控制寄存器SCONSM0SM1SM2RENTB8RB8TIRI工作方式選擇多機通信控制位允許串行接收位接收數據的第9位發(fā)送數據的第9位接收中斷標志發(fā)送中斷標志9FH9EH9DH9CH9BH9AH99H98HSM2置1,多機通信,用于方式2和方式3D81,地址幀D80,數據幀SM2置0,不屬于多機通信電源及波特率選擇寄存器PCONSMO
26、DXXXGF1GF0PDIDL串行通信只用該位,為1時,波特率2;為0時,波特率不變。69SM0 SM1工作方式功能波特率0 0方式08位同步移位寄存器fosc/120 1方式110位UART可變1 0方式211位UARTfosc/64或fosc/321 1方式311位UART可變三、串口的工作方式1、串口的工作方式0不適用于單片機之間的數據通信,可通過外接移位寄存器實現單片機的接口擴展。RXD為數據輸入或輸出TXD為移位時鐘,作為外接部件的同步信號。收/發(fā)數據為8位低位在前,無起始位、奇偶校驗位及停止位波特率是固定的。方式0真正用于串行發(fā)送或接收。TXD用于發(fā)送RXD用于接收收/發(fā)數據為10
27、位1位起始位、8位數據位(低位在前)、1位停止位波特率可調。方式12、串口的工作方式1第9位數據作為奇偶校驗位或地址/數據標志位。每幀11位:即1位起始位、8位數據位(低位在前)、1位可編程的第9數據位和1位停止位。方式2和方式3方式2,波特率為fosc/32或fosc/64;方式3,波特率可調,同方式1。3、串口的工作方式2和方式3發(fā)送時,第9位(D8)數據裝入TB8;MOV A ,DATAMOV TB8, CMOV SBUF, A接收時,第9位(D8)數據裝入RB8;-串口自動完成D0D7 SBUFD8RB8RI =1743、串口的工作方式2和方式3方式1和方式3的波特率可變,由定時器1的
28、溢出率決定波特率/(b/s)fosc/MHzSMOD定時器1C/模式初始值方式0:1 M方式2:375 k方式1、3:62.5 k19.2 k9.6 k4.8 k2.4 k1.2 k137.5 k11011012121211.05911.05911.05911.05911.05911.9866121110000000000000000222222221FFHFDHFDHFAHF4HE8H1DH72HFEEBHT波特率=2方式0的同步應用雙機串行通信PC與單片機的通信13四、串行口應用同步方式應用異步方式應用4多機通信1、同步方式應用(方式0) 用于擴展I/O口,外接74HC164(串入并出)或
29、165(并入串出)。RXD作為數據輸入/輸出端,TXD作為同步時鐘信號,接至時鐘端。 8位數據為1幀,由低位到高位,無起始位和停止位。 波特率: fosc/12例:用89C52串行口外接164串入/并出移位寄存器擴展8位并行輸出口,外接165并入/串出移位寄存器擴展8位并行輸入口。8位并行輸出口的每位都接一個發(fā)光二極管,要求從8位并行輸入口讀入開關的狀態(tài)值,使閉合開關對應的發(fā)光二極管點亮。同步方式應用舉例ORG 0000HSJMP MAINORG 23HSJMP S_SRV ;串行口中斷服務程序MAIN:MOV SCON,#10H ;串行口方式0初始化SETB ESSETB EAMOV A,#
30、0CLR P1.0;關閉并行輸出MOV SBUF,A;開始串行輸出SETB P1.1CLR P1.1SJMP $;等待中斷匯編語言程序清單:S_SRV:JBC TI,SENDCLRRIMOV A,SBUFCLR P1.0CPL AMOV SBUF,ASETB P1.1CLR P1.1RETISEND:SETB P1.0RETI思考串口的方式0還可以有哪些同步應用呢?雙機串行通信的硬件連接2、異步方式應用(雙機串行通信)AT89S51串行口的輸入、輸出均為TTL電平??垢蓴_性差,傳輸距離短,傳輸速率低。為提高串行通信的可靠性,增大串行通信的距離和提高傳輸速率,都采用標準串行接口,如RS-232、
31、RS-422A、RS-485等。TTL電平通信接口RS-422A雙機通信接口RS-232C雙機通信接口RS-485雙機通信接口兩個單片機相距在1.5m之內,甲機RXD與乙機TXD端相連。雙機通信距離在1.515m之間傳輸速率低、通信距離短、接口處信號容易產生串擾等雙機串行通信接口能在長距離、高速率下傳輸數據。最大傳輸率為10Mbit/s,電纜允許長度為12m,如果采用較低傳輸速率時,最大傳輸距離可達1219m。RS-422A為全雙工,采用兩對平衡差分信號線;需四芯傳輸線,不經濟;與RS-422A一樣,最大傳輸距離約為1219m,最大傳輸速率為10Mbit/s。 RS-485為半雙工,采用一對平
32、衡差分信號線。雙絞線傳輸對于多站互連是十分方便的,很容易實現多機通信。比較分析四種雙機串行通信接口圖確定通信的波特率首先確定通信雙方的數據傳輸速率由數據傳輸速率確定采用的串行通信接口標準確定收發(fā)雙方使用的通信協議1234串行通信設計需要考慮的問題通信線的選擇,一般選用雙絞線較好5通信軟件編程6雙機通信應用舉例(方式2)用第9個數據位作奇偶校驗位, 編制串行口方式2的發(fā)送程序。例:設計一個發(fā)送程序,將片內RAM 50H5FH中的數據串行發(fā)送;串行口設定為方式2狀態(tài),TB8作奇偶校驗位,采用偶校驗。P取反校驗位奇校驗偶校驗收到奇數個1,正確收到偶數個1,錯誤發(fā)送方接收方奇偶校驗 P校驗位收到奇數個
33、1,錯誤收到偶數個1,正確串行口初始化地址指針R0長度計數器R7置初值取數據APTB8ASBUFTI =1?0TI,指針R0+1(R7)-1=0?返回YYNN程序流程圖TRT: MOV SCON, #80H ; 方式2設定MOV PCON, #80H ; 波特率=fosc/32MOV R0, #50H ; 首地址R0 MOV R7, #10H ; 數據長度LOOP:MOV A, R0 ; 取數據 MOV C, PSW.0 ; PTB8MOV TB8, CMOV SBUF, A ;數據SBUF,啟動發(fā)送WAIT: JBC TI, CONT ;判斷發(fā)送中斷標志SJMP WAITCONT: INC
34、R0DJNZ R7, LOOPRET90請設計單片機發(fā)送程序,通過89C51單片機的串口發(fā)送片內RAM 40H-6FH中的數據;串行口設定為方式3狀態(tài),TB8作奇偶校驗位,采用奇校驗。要求傳送碼率為2400b/s,fosc=11.059MHz。雙機通信應用舉例(方式3)TRT:MOV TMOD, #20H; MOV TL1, #0F4H;MOV TH1, #0F4H;SETB TR1;MOV SCON, #0D0H)(或0C0H) ;MOV PCON, #00H MOV R0,#40H ;首地址R0 MOV R7, #20H ;數據長度LOOP: MOV A,R0 ;取數據MOV C, PSW
35、.0 ;PTB8CPL C MOV TB8, CMOV SBUF, A ;數據SBUF,啟動發(fā)送WAIT: JBC TI, CONT ;判斷發(fā)送中斷標志SJMP WAITCONT: INC R0DJNZ R7, LOOPRET思考請寫上以上例題對應的串口接收程序。3、PC機與單片機的串行通信C1+C1-C2+C2-AT88C51GNDGNDIBM-PCTXDTXDRXDRXDT1outT1inR1inR1outGNDV+V-VCCMAX232C4C1C2C3C5+5V+單片機與PC機之間的電平規(guī)范不一致,需進行電平轉換,短距離雙機通信時可通過MAX232進行電平轉換。串口調試助手:可測試單片機串口通信的要求編寫PC機上的上位機軟件。開發(fā)串行通信程序主要有兩種方法,一種是利用Windows的API函數;另一種是采用VB或VC的通信控件MSComm利用API函數編寫串行通信程序較為復雜,需要掌握大量的通信知識,其優(yōu)點是可實現的功能更豐富、應用面更廣泛,適合于編寫較為復雜的低層次通信程序。而MSComm通信控件提供了標準的事件處理函數、事件、方法,并通過控件屬性對串口參數進行設置,比較容易地解決了串口通信問題。 PC機串行通信設計964、異步通信應用(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人事代理服務合同主要條款
- 大數據分析項目服務采購合同
- 智能家電產品研發(fā)與生產合同
- 半包裝修項目合同書
- 戰(zhàn)略咨詢服務合同協議書
- 仔豬買賣合同及注意事項
- 26《好的故事》教學設計-2024-2025學年語文六年級上冊統(tǒng)編版
- 沈陽理工大學《醫(yī)學倫理學理論》2023-2024學年第二學期期末試卷
- 陜西服裝工程學院《建筑生態(tài)環(huán)境》2023-2024學年第二學期期末試卷
- 中學聯盟浙江省平陽縣昆陽鎮(zhèn)第二中學歷史與社會七年級上(人教版)第2單元第1課第2子目《海洋對人類的影響》教學設計
- 城市綠化與生態(tài)環(huán)境改善
- 2024-2025學年中小學校第二學期師德師風工作計劃:必看!新學期師德師風建設秘籍大公開(附2月-7月工作安排表)
- xxx項目財務評價報告
- 《急性心力衰竭的急救處理》課件
- 2025年高壓電工作業(yè)考試國家總局題庫及答案(共280題)
- 初中圖書室閱覽室建設實施方案范文(2篇)
- 2024年中國養(yǎng)老產業(yè)商學研究報告-銀發(fā)經濟專題
- 印刷公司生產部2025年年度工作總結及2025年工作計劃
- 2025年中考語文一輪復習:八年級下冊知識點梳理
- 高教版2023年中職教科書《語文》(基礎模塊)下冊教案全冊
- 川教版四年級《生命.生態(tài).安全》下冊全冊 課件
評論
0/150
提交評論