當前位置:百科全書館>科技>科技生活>

控制串行口工作方式的寄存器是

科技生活 閲讀(2.87W)

品牌型號:聯想拯救者Y9000P
系統:Windows 11

控制串行口工作方式的寄存器是

控制串行口工作方式的寄存器是SCON。SCON串行口控制寄存器,用於控制串行通信的方式選擇、接收和發送,指示串口的狀態。SCON既可以字節尋址,也可以位尋址,其字節地址為98H,地址位為98H~9FH。

工作方式(SM0SM1)

1、方式0(SM0SM1:00):串行口的工作方式0為移位寄存器I/O方式,可外接移位寄存器,一擴展I/O口,也可外接同步I/O設備。發送操作:當執行一條“MOVSBUF,A”指令時,啟動發送操作,由TXD輸出移位脈衝,由RXD串行SBUF中的數據。發送完8位數據後自動置TI=1.請求中斷。要繼續發送時,TI必須有指令清零。接收操作:REN是串行口接收允許控制位。REN=0時禁止接收;REN=1時允許接收。當軟件將REN置“1”時,即開始從RXD端口以fosc/12波特率輸入數據,當接收到8位數據時,將中斷標誌RI置“1”。再次接收數據之前,必須用軟件將RI清0。

2、方式1(SM0SM1:01):串行口為10位通用異步接口。發送或接收一幀數據信息為10位,包括1位起始位“0”、8位數據位、1位停止位“1”。發送數據:數據從TXD端口輸出,當數據寫入發送緩衝器SBUF時,就啟動發送器發送。發送完一幀數據後,置中斷標誌TI=1,申請中斷,通知CPU可以發送下一個數據了。接收數據:首先使REN=1(允許接收數據),串行口從RXD接收數據,當採樣到1至0跳變時,確認是起始位“0”,就開始接收一幀數據,當接收完一幀數據時,置中斷標誌RI=1,申請中斷,通知CPU從SBUF取走接收到的數據。

3、方式2(SM0SM1:10):串行口為11位異步通信接口。發送或接收一幀信息包括1位起始位“0”、8位數據位、1位可編程位、1位停止位“1”。發送數據:發送前,先根據通信協議由軟件設置TB8為“奇偶校驗位”或“數據標識位”,然後將要發送的數據寫入SBUF,即能啟動發送器。發送過程是由執行任何一條以SBUF為目的寄存器的指令而啟動的,把8位數據裝入SBUF,同時還把TB8裝到發送移位寄存器的第9位上,然後從TXD(P3.1)端口輸出一幀數據。接收數據:先置REN=1,使串行口為允許接收狀態,同時還要將RI清“0”。然後再根據SM2的狀態和所接收到的RB8的狀態決定此串行口在信息到來後是否置RI=1,並申請中斷,通知CPU接收數據。當SM2=0時,不管RB8為“0”還是為“1”,都置RI=1,此串行口將接收發送來的信息。當SM2=1時,且RB8=1,表示在多機通信情況下,接收的信息為“地址幀”,此時置RI=1,串行口將接收發來的地址。當SM2=1時,且RB8=0,表示在多機通信情況下,接收的信息為“數據幀”,但不是發給本從機的,此時RI不置為“1”,因而SBUF中接收的數據幀將丟失。

4、方式3(SM0SM1:11):為波特率可變的11位異步通信方式,除了波特率有所區別之外,其餘方式都與方式2相同。