freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

單片機(jī)技術(shù)及應(yīng)用--第七章單片機(jī)串行接口(參考版)

2024-12-11 08:02本頁面
  

【正文】 。允許接收 LOOP: JBC RI, REC AJMP LOOP REC: MOV A, SBUF MOV P1, A AJMP LOOP END 將程序燒錄到單片機(jī)后,啟動“ Awen串口調(diào)試助手”,設(shè)置好串口為 COM1(根據(jù)PC實(shí)際情況選擇 ),因?yàn)閱纹瑱C(jī)程序設(shè)定,設(shè)置波特率為 1920b/s,校驗(yàn)位為無,數(shù)據(jù)位為 8,停止位為 1,選擇十六進(jìn)制發(fā)送。定時(shí)器 1開始運(yùn)行 MOV SCON,01010000B 。定時(shí)初值 MOV TL1,0FDH ORL PCON,10000000B 。初始化堆棧 MOV TMOD,00100000B 。 4)異步通信應(yīng)用編程 —— PC向單片機(jī)送數(shù) 要求單片機(jī)把接收來的數(shù)據(jù)送給 P1口,從 P1口所接的 LED亮、滅情況反映接收是否正常。A的值是 AAH取反之后是 55H LJMP SEND DELAY: 。是否送完? AJMP LOOP NEXT: CALL DELAY 。串口工作方式 1 MOV A,0AAH 。SMOD=1 SETB TR1 。定時(shí)器 1工作于方式 2 MOV TH1,0FDH 。 3)異步通信應(yīng)用編程 —— 單片機(jī)向 PC送數(shù) 要求不斷地向 PC送出 AA和 55兩個(gè)十六進(jìn)制數(shù) , 程序如下: ORG 0000H LJMP START ORG 0030H START: MOV SP,5FH 。在使用時(shí)注意接 PC的是 COM1還是 COM2,“ Awen串口調(diào)試助手”可以選擇所接的 COM口。圖 721所示是單片機(jī)與 PC接口部分的電路。 4.實(shí)施過程 1)硬件設(shè)計(jì) 由于 PC上的串行接口為 MAX232形式的接口,其高、低電平的規(guī)定與單片機(jī)所規(guī)定的TTL電平不同,所以單片機(jī)必須也要有 232接口。 (2)串行接口 RS232的應(yīng)用。 (4)了解 PC端的串行通信軟件“ Awen串口調(diào)試助手”。 (2)掌握串行接口 RS232的應(yīng)用。 實(shí) 踐 訓(xùn) 練 任務(wù):單片機(jī)與 PC通信 1.實(shí)現(xiàn)任務(wù) 單片機(jī)與 PC通信,要求完成單片機(jī)向 PC發(fā)送數(shù)據(jù)和 PC向單片機(jī)發(fā)送數(shù)據(jù)兩個(gè)程序調(diào)試。發(fā) RRDY=1,準(zhǔn)備接收 LP2:JNB R1, $ CLR RI MOV R1,SBUF 。接收準(zhǔn)備好,轉(zhuǎn) SO5 MOV SBUF,00H 。發(fā) TRDY=1,準(zhǔn)備發(fā)送 CLR TI LP1: MOV SBUF,R0 。發(fā)送準(zhǔn)備好,轉(zhuǎn) SO4 MOV SBUF,00H 。是非法指令,發(fā)出出錯信息,返回 AJMP RETURN SO3: JZ CMOD 。檢查指令是否合法 JC SO3 。是復(fù)位指令,返回 SJMP RETURN SO2: MOV A,SBUF 。向主機(jī)發(fā)回本機(jī)地址 JNB RB8,SO2 。不是呼叫本機(jī),恢復(fù)現(xiàn)場返回 POP ACC RETI SO1: CLR SM2 。核對是否收到本機(jī)地址 JZ SO0 。保護(hù)現(xiàn)場 PUSH PSW CLR RS0 。接收完畢,返回 從機(jī)串行口中斷服務(wù)程序如下: S00: OCLR RI 。修改指針 DJNZ R4, SRX 。取出收到的數(shù)據(jù) MOV R0, A 。等待接收完畢 CLR RI 。發(fā)送完,返回 M05: JNB ,MO2 。修改指針 DJNZ R4, STX 。等待發(fā)送結(jié)束 CLR TI 。從機(jī)未準(zhǔn)備好接收,重新聯(lián)絡(luò) STX: MOV SBUF, R1。指令出錯,重發(fā) M04: CJNE R3,0, MO5。取應(yīng)答信息 JNB , MO4 。等待從機(jī)回答 CLR RI 。準(zhǔn)備發(fā)送指令 MOV SBUF, R3 。準(zhǔn)備重發(fā)地址 SETB TB8 。核對地址 JZ MO3 。從機(jī)回答后,清 RI MOV A, SBUF 。啟動發(fā)送,發(fā)送從機(jī)地址 JNB RI,$ 。 主機(jī)程序如下: MOV SCON, OD8H 。 CPU響應(yīng)后 , 進(jìn)入中斷服務(wù)程序 。 (4)從機(jī)狀態(tài)字格式如下: 注 :ERR=1表示收到非法指令; TRDY=1表示發(fā)送準(zhǔn)備完畢; RRDY=1表示接收準(zhǔn)備完畢。 (3)其余控制指令有: 00H接收指令; 01H發(fā)送指令 。 1)有關(guān)通信協(xié)議的幾條規(guī)定 (1)從機(jī)地址為 00H~ FEH, 即允許連接 255臺從機(jī) 。對于沒選中的從機(jī),因?yàn)?SM2=1, RB8=0,所以不會產(chǎn)生中斷,對主機(jī)發(fā)送的信息不予接收。 (4)主機(jī)發(fā)送控制指令和數(shù)據(jù)信息給被尋址的從機(jī)。對于地址相符的從機(jī),置SM2=0,以接收主機(jī)隨后發(fā)來的所有信息。設(shè)串行口為方式 3, SM2=1,允許接收 (3)各從機(jī)接收到地址信息,因?yàn)?RB8=1,則置中斷標(biāo)志 RI。設(shè)串行口為方式 3, TB8=1,允許接收 (2)所有從機(jī)初始化設(shè)置 SM2=1, 處于準(zhǔn)備接收一幀地址信息的狀態(tài) 。 主機(jī)應(yīng)置 TB8為 1, 表示發(fā)送的是地址幀 。 在主機(jī)想發(fā)送一個(gè)數(shù)據(jù)塊給某個(gè)從機(jī)時(shí) , 它必須先送出一個(gè)地址字節(jié) , 以辨認(rèn)從機(jī) 。 根據(jù)這個(gè)功能 , 就可以實(shí)現(xiàn)多機(jī)通信 。此時(shí)不產(chǎn)生中斷,信息將被丟失,不能接收。此時(shí)數(shù)據(jù)裝入 SBUF,并置 RI=1,向 CPU發(fā)中斷請求。 圖 720 多機(jī)通信連接示意圖 多機(jī)通信的實(shí)現(xiàn),主要依靠主機(jī)、從機(jī)之間正確地設(shè)置與判斷 SM2和發(fā)送或接收的第 9位數(shù)據(jù) (TB8或 RB8)來完成的。主機(jī)發(fā)送的信息可以傳送到各個(gè)從機(jī)或指定的從機(jī),各從機(jī)發(fā)送的信息只能被主機(jī)接收,從機(jī)與從機(jī)之間不能進(jìn)行通信。開中斷 RETI MCS51單片機(jī)多機(jī)通信 1. 多機(jī)通信原理 MCS51串行口的方式 2和方式 3有一個(gè)專門的應(yīng)用領(lǐng)域,即多機(jī)通信。累加和寄存器清零 RETURN: POP DPL 。接收出錯,恢復(fù)標(biāo)志位,重新開始接收 SETB 7EH MOV 31H,30H 。判斷數(shù)據(jù)塊是否接收完 CLR 7EH 。修改片外 RAM的地址 MOV 31H,DPH MOV 30H,DPL ADD A,40H 。接收數(shù)據(jù) MOV DPH,31H 。清長度標(biāo)志位 SJMP RETURN 。接收長度 MOV 41H, A 。二者不相等,錯誤,向甲機(jī)發(fā)送 FFH MOV SBUF,A WAIT2: JNB TI,WAIT2 CLR TI SJMP AGAIN 。二者相等,正確,向甲機(jī)發(fā)送 00H MOV SBUF,A WAIT1: JNB TI,WAIT1 CLR TI SJMP RETURN 。接收校驗(yàn)和 CJNZ A,40H,ERR。判斷是數(shù)據(jù)塊長度嗎? JB 6EH,DATA 。清中斷標(biāo)志 PUSH ACC。MAIN為主程序,根據(jù)用戶要求編寫 INTS: CLR EA 。清累加和寄存器 SETB EA 。置數(shù)據(jù)塊標(biāo)志位為 1 MOV 31H,30H 。串行口初始化 SETB 6FH 。設(shè)置預(yù)置值 MOV TH1,0F4H SETB TR1 。轉(zhuǎn)串行口中斷程序 ORG 0100H MAIN: MOV TMOD,20H。接收程序參考如下: ORG 0000H LJMP MAIN 。接收采用中斷方式。發(fā)送出錯,重發(fā) RIGHT: RET 2)乙機(jī)接收 乙機(jī)接收甲機(jī)發(fā)送的數(shù)據(jù),并存入以 3000H開始的片外數(shù)據(jù)存儲器中,首先接收數(shù)據(jù)長度,接著接收數(shù)據(jù),當(dāng)接收完 16B后,接收累加和校驗(yàn)碼進(jìn)行校驗(yàn)。接收乙機(jī)數(shù)據(jù) JZ RIGHT 。等待發(fā)送 AJMP WAIT3 WAIT4: JBC RI,READ 。判斷數(shù)據(jù)塊是否發(fā)送完 MOV SBUF,R4 。修改數(shù)據(jù)指針 WAIT2: JBC TI,CONT 。發(fā)送數(shù)據(jù) ADD A,R4 MOV R4,A 。等待發(fā)送 AJMP WAIT1 TRS: MOV A,R1 。累加校驗(yàn)和初始化 MOV SBUF,R7 。設(shè)置數(shù)據(jù)指針 MOV R7,10H 。啟動定時(shí)器 1 MOV SCON,50H 。設(shè)置定時(shí)器 1為方式 2 MOV TL1,0F4H 。定義雙機(jī)串行口方式 1工作,晶振為 ,波特率 2400b/s,定時(shí)器 T1按方式 2工作,經(jīng)計(jì)算或查表得到定時(shí)器預(yù)置值為 0F4H, SMOD=0。 1)甲機(jī)發(fā)送 上面的通信程序,收、發(fā)雙方都是采用奇偶位 TB8來進(jìn)行
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1