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

正文內容

串口通信-資料下載頁

2024-12-29 10:06本頁面
  

【正文】 MOV A, R6 MOV SBUF, A ;發(fā)校驗和 JNB TI, $ CLR TI JNB RI, $ CLR RI MOV A, SBUF XRL A, 00H JZ RET_END ;從機接收正確 SJMP SE_DATA ;從機接收不正確,重新發(fā)送 RET_END: RET 3/2/2023 60 從機程序清單: 設本機號存于 40H單元, 41H單元存放“發(fā)送”命令, 42H單元存放“接收”命令。 MAIN: MOV TMOD, 20H ;初始化串行口 MOV TH1, 0FDH MOV TL1, 0FDH MOV PCON, 00H SETB TR1 MOV SCON, 0F0H LOOP1: SETB EA ;開中斷 SETB ES SETB RRDY ;發(fā)送與接收準備就緒 SETB TRDY SJMP LOOP1 3/2/2023 61 SERVE: PUSH PSW ;中斷服務程序 PUSH ACC CLR ES CLR RI MOV A, SBUF XRL A, 40H ;判斷是否本機地址 JZ SER_OK LJMP ENDI ;非本機地址,繼續(xù)監(jiān)聽 SER_OK: CLR SM2 ;是本機地址,取消監(jiān)聽狀態(tài) MOV SBUF, 40H ;本機地址發(fā)回 JNB TI, $ CLR TI JNB RI, $ CLR RI JB RB8, ENDII ;是復位命令,恢復監(jiān)聽 MOV A, SBUF ;不是復位命令,判是“發(fā)送”還是“接收” XRL A, 41H JZ SERISE ;收到“發(fā)送”命令,發(fā)送處理 MOV A, SBUF XRL A, 42H JZ SERIRE ;收到“接收”命令,接收處理 SJMP FFML ;非法命令,轉非法處理 3/2/2023 62 SERISE: JB TRDY, SEND ;從機發(fā)送是否準備好 MOV SBUF, 00H SJMP WAIT01 SEND: MOV SBUF, 02H ;返回“發(fā)送準備好” WAIT01: JNB TI, $ CLR TI JNB RI, $ CLR RI JB RB8 , ENDII ;主機接收是否準備就緒 LCALL SE_DATA ;發(fā)送數據 LJMP END FFML: MOV SBUF, 80H ;發(fā)非法命令,恢復監(jiān)聽 JNB TI, $ CLR TI LJMP ENDII SERIRE: JB RRDY , RECE ;從機接收是否準備好 MOV SBUF, 00H SJMP WAIT02 3/2/2023 63 RECE: MOV SBUF, 01H ;返回“接收準備好” WEIT02: JNB TI, $ CLR TI JNB RI, $ CLR RI JB RB8, ENDII ;主機發(fā)送是否就緒 LCALL RE_DATA ;接收數據 LJMP END ENDII: SETB SM2 ENDI: SETB ES END: POP ACC POP PSW RETI 3/2/2023 64 SE_DATA: CLR TRDY ;發(fā)送數據塊子程序 MOV R6, 00H MOV R0, 30H MOV R7, 10H LOOP2: MOV A, R0 MOV SBUF, A JNB TI, $ CLR TI INC R0 ADD A, R6 MOV R6, A DJNZ R7, LOOP2 ;數據塊發(fā)送完畢? MOV A, R6 MOV SBUF, A JNB TI, $ ;發(fā)送校驗和 CLR TI JNB RI, $ CLR RI MOV A, SBUF XRL A, 00H ;判發(fā)送是否正確 JZ SEND_OK SJMP SE_DATA ;發(fā)送錯誤,重發(fā) 3/2/2023 65 SEND_OK: SETB SM2 ;發(fā)送正確,繼續(xù)監(jiān)聽 SETB ES RET RE_DATA: CLR RRDY ;接收數據塊子程序 MOV R6, 00H MOV R0, 30H MOV R7, 10H 3/2/2023 66 LOOP3: JNB RI, $ CLR RI MOV A, SBUF MOV R0, A INC R0 ADD A, R6 MOV R6, A DJNZ R7, LOOP3 ;接收數據塊完畢? JNB RI, $ ;接收校驗和 CLR RI MOV A, SBUF XRL A, R6 ;判斷校驗和是否正確 JZ RECE_OK MOV SBUF, 0FFH ;校驗和錯誤,發(fā) FFH JNB TI, $ CLR TI LJMP RE_DATA ;重新接收 3/2/2023 67 RECE_OK: MOV A, 00H ;校驗和正確,發(fā) 00H MOV SBUF, A JNB TI, $ CLR TI SETB SM2 ;繼續(xù)監(jiān)聽 SETB ES RET 3/2/2023 68 本章小結 單片機的串行接口是一個全雙工串行通信接口,從本章的實例中可以看出,它既可以作 UART(通用異步機接收和發(fā)送器)用,也可以作同步移位寄存器用。同時應用串行接口可以實現單片機系統之間點對點的單機通信、多機通信和單片機與系統機的單機或多機通信。由于串行通信只用一根數據線傳送數據的位信號,就算加上幾條通信控制線,也用不了很多電纜線。因此,串行通信適合遠距離數據傳送。 3/2/2023 69 思考題與習題 1. 串行口有幾種工作方式?有幾種幀格式?各工作方式的波特率如何確定? 2. 串行口控制寄存器 SCON中 SM2的含義是什么?它主要在什么方式下使用? 3. 設當單片機晶振頻率 fosc為 6MHz和 12MHz時,定時器 1處于工作方式 2,PCON=00H,分別求在兩種頻率下單片機處于串行方式 1,波特率為 1200bps時, T1的定時初值。 4. 用定時器 T1作波特率發(fā)生器,并把 T1設置成工作方式 2,系統時鐘頻率為12MHz,求可能產生的最高和最低波特率? 5. 以串行口按工作方式 1進行串行數據通信。假定波特率為 1200bps,以中斷方式傳送數據。請編寫全雙工通信程序。 6. 設 fosc= ,試編寫一段程序,其功能為對串行口初始化,使之工作于方式 1,波特率為 1200bps;并用查詢串行口狀態(tài)的方法,讀出接收緩沖器的數據并回送到發(fā)送緩沖器。 7. 以串行口按工作方式 3進行串行數據通信。假定波特率為 1200bps,第九數據位作奇偶校驗位,以中斷方式傳送數據。請編寫通信程序。 8. 設計一個單片機的雙機通信系統,并編寫通信程序。將甲機內部RAM30H~3FH存儲區(qū)的數據塊通過串行口傳送到乙機內部 RAM 40H~4FH存儲區(qū)中去。 3/2/2023 70 謝謝觀看 /歡迎下載 BY FAITH I MEAN A VISION OF GOOD ONE CHERISHES AND THE ENTHUSIASM THAT PUSHES ONE TO SEEK ITS FULFILLMENT REGARDLESS OF OBSTACLES. BY FAITH I BY FAITH
點擊復制文檔內容
黨政相關相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1