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

正文內(nèi)容

串行通信基礎(chǔ)概念rs-232接口mcs-51的串行接口單片(編輯修改稿)

2024-10-07 13:30 本頁面
 

【文章內(nèi)容簡介】 可變,由定時(shí)器 1的溢出率決定 波特率 /(b/s) fosc/MHz SMOD 定時(shí)器 1 C/ 模式 初始值 方式 0: 1 M 方式 2: 375 k 方式 3: k k k k k k k 110 110 12 12 12 6 12 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 2 2 2 2 2 1 FFH FDH FDH FAH F4H E8H 1DH 72H FEEBH T 波特率 = )x256(12 f322 os cs m od ??00:17:22 舉例說明波特率的設(shè)定方法 00:17:22 單片機(jī)之間的通信 R X DTX D8051應(yīng)用系統(tǒng)( 甲機(jī) )R X DTX D8051應(yīng)用系統(tǒng)( 乙機(jī) )雙機(jī)異步通信接口電路 00:17:22 1 217 4 L S 0 5V C C 外 5 V1123 123S N 7 5 1 7 5114 3123213347 4 L S 0 57 4 L S 0 5外 5 V V C CT X DR X D8051( 甲機(jī) )8051( 乙機(jī) )R X DT X DV C C外 5 V外 5 VV C CS N 7 5 1 7 4S N 7 5 1 7 5 S N 7 5 1 7 47 4 L S 0 5外 5 V外 5 VR1R3R2R1R3R2RS422A雙機(jī)異步通信接口電路 00:17:22 雙機(jī)通信軟件編程 查詢方式 1) 甲機(jī)發(fā)送 編程將甲機(jī)片外 1000H~ 101FH單元的數(shù)據(jù)塊從串行口輸出。定義方式 2發(fā)送, TB8為奇偶校驗(yàn)位。發(fā)送波特率375 kb/s, 晶振為 12 MHz, SMOD=1。 00:17:22 參考發(fā)送子程序如下: MOV SCON, 80H ; 設(shè)置串行口為方式 2 MOV PCON, 80H ; SMOD=1 MOV DPTR, 1000H ; 設(shè)數(shù)據(jù)塊指針 (教材串行) MOV R7, 20H ; 設(shè)數(shù)據(jù)塊長度 START: MOVX A, @DPTR ; 取數(shù)據(jù)給 A MOV C,P MOV TB8,C ; 奇偶位 P送給 TB8 MOV SBUF,A ; 數(shù)據(jù)送 SBUF, 啟動發(fā)送 WAIT: JBC TI,CONT ; 判斷幀是否發(fā)送完 。 若送完 , 清 TI, 取下一個(gè) AJMP WAIT ; 未完等待 CONT: INC DPTR ; 更新數(shù)據(jù)單元 DJNZ R7,START ; 循環(huán)發(fā)送至結(jié)束 RET 00:17:22 2) 乙機(jī)接收 編程使乙機(jī)接收甲機(jī)發(fā)送過來的數(shù)據(jù)塊,并存入片內(nèi) 50H~6FH單元。接收過程要求判斷 RB8, 若出錯(cuò)置 F0標(biāo)志為 1,正確則置 F0標(biāo)志為 0,然后返回。 在進(jìn)行雙機(jī)通信時(shí),兩機(jī)應(yīng)采用相同的工作方式和波特率。 00:17:22 MOV SCON, 80H ; 設(shè)置串行口為方式 2 MOV PCON, 80H ; SMOD=1 MOV R0, 50H ; 設(shè)置數(shù)據(jù)塊指針 MOV R7, 20H ; 設(shè)置數(shù)據(jù)塊長度 SETB REN ; 啟動接收 WAIT: JBC RI, READ ; 判斷是否接收完一幀。若完,清 RI, 讀入數(shù)據(jù) AJMP WAIT ; 未完等待 READ: MOV A, SBUF ; 讀入一幀數(shù)據(jù) a JNB ,PZ ; 奇偶位為 0則轉(zhuǎn) JNB RB8, ERR ; P=1, RB8=0, 則出錯(cuò) SJMP RIGHT ; 二者全為 1,則正確 PZ: JB RB8, ERR ; P=0, RB8=1, 則出錯(cuò) RIGHT: MOV @R0, A ; 正確,存放數(shù)據(jù) INC R0 ; 更新地址指針 DJNZ R7, WAIT ; 判斷數(shù)據(jù)塊是否接收完 CLR ; 接收正確,且接收完清 F0標(biāo)志 RET ; 返回 ERR: SETB ; 出錯(cuò),置 F0標(biāo)志為 1 RET ; 返回 00:17:22 1) 甲機(jī)發(fā)送 上面的通信程序,收發(fā)雙方是采用奇偶位 TB8來進(jìn)行校驗(yàn)的,這里介紹一種用 累加和 進(jìn)行校驗(yàn)的方法。 編程將甲機(jī)片內(nèi) 60H~ 6FH單元的數(shù)據(jù)塊從串行口發(fā)送 , 在發(fā)送之前將數(shù)據(jù)塊長度發(fā)送給乙機(jī) , 當(dāng)發(fā)送完 16個(gè)字節(jié)后 , 再發(fā)送一個(gè)累加校驗(yàn)和 。 定義雙機(jī)串行口按方式 1工作 , 晶振為 MHz, 波特率為 2400 b/s, 定時(shí)器 1按方式 2工作 。 經(jīng)計(jì)算或查表得到定時(shí)器預(yù)置值為 0F4H, SMOD=0。 參考發(fā)送子程序如下: 中斷方式 在很多應(yīng)用中 , 雙機(jī)通信的接收方都采用中斷的方式來接收數(shù)據(jù) , 以提高 CPU的工作效率;發(fā)送方仍然采用查詢方式發(fā)送 。 00:17:22 MOV TMOD, 20H ;設(shè)置定時(shí)器 1為方式 2 MOV TL1, 0F4H ;設(shè)置預(yù)置值 MOV TH1, 0F4H SETB TR1 ;啟動定時(shí)器 1 MOV SCON, 50H ;設(shè)置串行口為方式 1, 允許接收 START: MOV R0, 60H ;設(shè)置數(shù)據(jù)指針 MOV R5, 10H ;設(shè)置數(shù)據(jù)長度 MOV R4, 00H ;累加校驗(yàn)和初始化 MOV SBUF, R5 ;發(fā)送數(shù)據(jù)長度 00:17:22 WAIT1: JBC TI, TRS ;等待發(fā)送 AJMP WAIT1 TRS: MOV A, @R0 ;讀取數(shù)據(jù) MOV SBUF, A ;發(fā)送數(shù)據(jù) ADD A, R4 MOV R4, A ;形成累加和 INC R0 ;修改數(shù)據(jù)指針 00:17:22 WAIT2: JBC TI, CONT ;等待發(fā)送一幀數(shù)據(jù) AJMP WAIT2 CONT: DJNZ R5, TRS ;判斷數(shù)據(jù)塊是否發(fā)送完 MOV SBUF, R4 ;發(fā)送累加校驗(yàn)和 WAIT3: JBC TI, WAIT4 ;等待發(fā)送 AJMP WAIT3 WAIT4: JBC RI
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1