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

正文內(nèi)容

單片微型計(jì)算機(jī)原理與接口技術(shù)第二版第7章80c51單片微機(jī)的串行口原理及應(yīng)用(編輯修改稿)

2025-01-04 08:02 本頁面
 

【文章內(nèi)容簡介】 SM1= SM0= 1, 選擇方式 3。 由 TXD引腳發(fā)送數(shù)據(jù) 。 由 RXD引腳接收數(shù)據(jù) 。 發(fā)送或接收一幀信息為 11位: 1位起始位 ( 0) 、 8位數(shù)據(jù)位 (低位在前 ) 、 1位可編程位和 1位停止位 ( l) 。發(fā)送時(shí)可編程位 TB8可設(shè)置為 1或 0, 接收時(shí)可編程位進(jìn)入 SCON寄存器的 RB8位 。 方式 2的波特率是固定的,為振蕩器頻率的 1/32或 1/64。 .方式 3的波特率則由 T1和 T2的溢出決定,可用程序設(shè)定。 幀格式如 如 圖 77所示。 方式 2時(shí)的工作原理圖如 圖 78所示 。 在進(jìn)行最后一次移位時(shí) , 能將數(shù)據(jù)送入接收數(shù)據(jù)緩沖器SBUF和 RB8, 而且置位 RI的條件是: RI= 0; SM2= 0或接收到的停止位= 1。 若以上兩個條件中有一個不滿足,將不可恢復(fù)地丟失接收到的這一幀信息。 多處理機(jī)通信方式 SM2:多處理機(jī)通信位。 當(dāng)串行口以方式 2或方式 3接收時(shí) , 若 SM2= 1, 只有當(dāng)接收到的第 9位數(shù)據(jù) RB8為 1時(shí) , 才將數(shù)據(jù)送入接收緩沖器 SBUF,并使 RI置 1, 申請中斷 , 否則數(shù)據(jù)將丟失;若 SM2= 0, 則無論第 9位數(shù)據(jù) RB8是 1還是 0, 都能將數(shù)據(jù)裝入 SBUF, 并且發(fā)中斷 。 利用這一特性 , 便可實(shí)現(xiàn)主機(jī)與多個從機(jī)之間的串行通信 。 圖 7- 9為多機(jī)通信連線示意圖 , 系統(tǒng)中左邊的 80C51為主機(jī) ,其余的為 1~ n號從機(jī) , 并保證每臺從機(jī)在系統(tǒng)中的編號是惟一的 。 系統(tǒng)初始化時(shí) , 將所有從機(jī)中的 SM2位均設(shè)置為 1, 并處于允許串行口中斷接收狀態(tài) 。 主機(jī)欲與某從機(jī)通信,先向所有從機(jī)發(fā)出所選從機(jī)的地址,從機(jī)地址符合后,接著才發(fā)送命令或數(shù)據(jù)。 在主機(jī)發(fā)地址時(shí) , 置第 9位數(shù)據(jù) ( RB8) 為 1, 表示主機(jī)發(fā)送的是地址幀; 當(dāng)主機(jī)呼叫某從機(jī)聯(lián)絡(luò)正確后 , 主機(jī)發(fā)送命令或數(shù)據(jù)幀時(shí) ,將第 9位數(shù)據(jù) ( RB8) 清 0。 各從機(jī)由于 SM2置 1, 將響應(yīng)主機(jī)發(fā)來的第 9位數(shù)據(jù) ( RB8)為 1的地址信息 。 從機(jī)響應(yīng)中斷后 , 有兩種不同的操作: 若從 機(jī)的地址與主機(jī)點(diǎn)名的地址不相同 , 則該從機(jī)將繼續(xù)維持 SM2為 l, 從而拒絕接收主機(jī)后面發(fā)來的命令或數(shù)據(jù)信息 , 等待主機(jī)的下一次點(diǎn)名 。 若從機(jī)的地址與主機(jī)點(diǎn)名的地址相同,該從機(jī)將本機(jī)的 SM2清 0,繼續(xù)接收主機(jī)發(fā)來的命令或數(shù)據(jù),響應(yīng)中斷。 串行口的波特率發(fā)生器如 圖 710所示 。 方式 0時(shí)的波特率由振蕩器的頻率 ( fosc) 所確定:波特率為 fosc/12。 方式 2時(shí)的波特率由振蕩器的頻率( fosc)和 SMOD位確定: 當(dāng) SMOD位= 1時(shí) , 波特率= fosc/32;當(dāng) SMOD= 0時(shí) , 波特率= fosc/64。 方式 1和 3時(shí)的波特率由定時(shí)器 T1和 T2的溢出率和 SMOD確定。 ( 1)用定時(shí)器 T1(= 0)產(chǎn)生波特率 定時(shí)器 T1工作于方式 0: T1為 13位計(jì)數(shù)器。 式中: TC——13位計(jì)數(shù)器初值; X——中斷服務(wù)程序的機(jī)器周期數(shù) , 在中斷服務(wù)程序中重新對定時(shí)器置數(shù) 。 定時(shí)器 T1工作于方式 1: T1為 16位的計(jì)數(shù)器 。 式中: TC——16位計(jì)數(shù)器初值; X——中斷服務(wù)程序的機(jī)器周期數(shù),在中斷服務(wù)程序中重新對定時(shí)器置數(shù)。 定時(shí)器 Tl工作于方式 2: T1為 8位可重裝的方式,用 TL1計(jì)數(shù),用 TH1裝初值。 方式 0的編程和應(yīng)用 例: 使用 74LS164的并行輸出端接 8只發(fā)光二極管 , 利用它的串入并出功能 , 把發(fā)光二極管從左向右依次點(diǎn)亮 , 并不斷循環(huán)之 。 發(fā)光二極管擴(kuò)展連接路 如圖 711所示 。 MOV SCON, 00H ;設(shè)串行口為方式 0, CLR ES ;禁止串行口中斷 MOV A, 80H ;先顯示最左邊發(fā)光二極管 LED: MOV SBUF, A ;串行輸出 JNB TI, $ ;輸出等待 CLR TI ;軟件清中斷標(biāo)志 ACALL DELAY ;輪顯間隔 RR A ;發(fā)光右移 AJMP LED ;循環(huán) DELAY: …… ;延時(shí)子程序 RET 方式 1的編程和應(yīng)用 例:試編寫雙機(jī)通信程序 。 甲 、 乙雙機(jī)均為串行口方式 1,并以定時(shí)器 T1的方式 2為波特率發(fā)生器 , 波特率為 2400。 波特率的計(jì)算:這里使用 6MHz晶振 , 以 T1的方式 2制定波特率 。 計(jì)算定時(shí)器 T1的計(jì)數(shù)初值: 波特率 = 2smod fosc 1 32 12 28 - TH1 TH1=28- (2SMOD fosc)247。 (波特率 32 12) =256- (20 6 106)247。 (2400 32 12) =256- ==FAH ⑴ 甲機(jī)發(fā)送: 將以片內(nèi) RAM的 78H及 77H的內(nèi)容為首地址 、 以 76H及75H的內(nèi)容減 1為末地址的數(shù)據(jù)塊內(nèi)容 , 通過串行口傳至乙機(jī) 。 例: (78H) = 20H ;首地址高位 ( 77H) = 00H ( 76H) = 20H ;末地址高位 ( 75H) = 20H 即要求程序?qū)⑵?RAM的 2022H~ 20lFH中的內(nèi)容輸出到串行口。對數(shù)據(jù)塊首、末地址的傳送以查詢方式進(jìn)行,而數(shù)據(jù)的傳送以中斷方式進(jìn)行。 ORG 0000H SJMP TRANS ORG 0023H ;串行口中斷入口 AJMP SINT ORG 0030H TRANS: MOV TMOD, # 20H ;置 T1為定時(shí)器方式 2 MOV TL1, # 0FAH ;置 T1定時(shí)常數(shù) (波特率為 ; 2400) MOV TH1, # 0FAH SETB EA ;允許中斷 CLR ES ;關(guān)串行口中斷 MOV PCON, 00H ;波特率不倍增 CLR TI ;清發(fā)送中斷 MOV SCON, # 40H ;置串行口方式 1 MOV SBUF, 78H ;輸出首地址 WAIT1: JNB TI, WAITI ;查詢等待發(fā)送結(jié)束 CLR TI MOV SBUF, 77H WAIT2: JNB TI, WAIT2 ;查詢等待發(fā)送結(jié)束 CLR TI MOV SBUF, 76H ;輸出末地址 WAIT3: JNB TI, WAIT3 CLR TI MOV SBUF, 75H WAIT4: JNB TI, WAIT4 CLR TI SETB ES ;允許串行口中斷 MOV DPH, 78H ;輸出數(shù)據(jù)塊中第 1個數(shù)據(jù) MOV DPL, 77H MOVX A, @ DPTR CLR
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1