驍龍8gen1和天璣9000哪個好性能更強(qiáng) 區(qū)別對比分析
2023-01-30
更新時間:2022-09-17 07:45:18作者:智慧百科
品牌型號:聯(lián)想拯救者Y9000P
系統(tǒng):Windows 11
控制串行口工作方式的寄存器是SCON。SCON串行口控制寄存器,用于控制串行通信的方式選擇、接收和發(fā)送,指示串口的狀態(tài)。SCON既可以字節(jié)尋址,也可以位尋址,其字節(jié)地址為98H,地址位為98H~9FH。
工作方式(SM0 SM1)
1、方式0( SM0 SM1 :0 0):串行口的工作方式0為移位寄存器I/O方式,可外接移位寄存器,一擴(kuò)展I/O口,也可外接同步I/O設(shè)備。 發(fā)送操作:當(dāng)執(zhí)行一條“MOVSBUF,A”指令時,啟動發(fā)送操作,由TXD輸出移位脈沖,由RXD串行SBUF中的數(shù)據(jù)。發(fā)送完8位數(shù)據(jù)后自動置TI=1.請求中斷。要繼續(xù)發(fā)送時,TI必須有指令清零。 接收操作:REN是串行口接收允許控制位。REN=0時禁止接收;REN=1時允許接收。當(dāng)軟件將REN置“1”時,即開始從RXD端口以fosc/12波特率輸入數(shù)據(jù),當(dāng)接收到8位數(shù)據(jù)時,將中斷標(biāo)志RI置“1”。再次接收數(shù)據(jù)之前,必須用軟件將RI清0。
2、方式1( SM0 SM1 :0 1) :串行口為10位通用異步接口。發(fā)送或接收一幀數(shù)據(jù)信息為10位,包括1位起始位“0”、8位數(shù)據(jù)位、1位停止位“1”。發(fā)送數(shù)據(jù):數(shù)據(jù)從TXD端口輸出,當(dāng)數(shù)據(jù)寫入發(fā)送緩沖器SBUF時,就啟動發(fā)送器發(fā)送。發(fā)送完一幀數(shù)據(jù)后,置中斷標(biāo)志TI=1,申請中斷,通知CPU可以發(fā)送下一個數(shù)據(jù)了。接收數(shù)據(jù):首先使REN=1(允許接收數(shù)據(jù)),串行口從RXD接收數(shù)據(jù),當(dāng)采樣到1至0跳變時,確認(rèn)是起始位“0”,就開始接收一幀數(shù)據(jù),當(dāng)接收完一幀數(shù)據(jù)時,置中斷標(biāo)志RI=1,申請中斷,通知CPU從SBUF取走接收到的數(shù)據(jù) 。
3、方式2( SM0 SM1 :1 0) :串行口為11位異步通信接口。發(fā)送或接收一幀信息包括1位起始位“0”、8位數(shù)據(jù)位、1位可編程位、1位停止位“1”。發(fā)送數(shù)據(jù):發(fā)送前,先根據(jù)通信協(xié)議由軟件設(shè)置TB8為“奇偶校驗(yàn)位”或“數(shù)據(jù)標(biāo)識位”,然后將要發(fā)送的數(shù)據(jù)寫入SBUF,即能啟動發(fā)送器。發(fā)送過程是由執(zhí)行任何一條以SBUF為目的寄存器的指令而啟動的,把8位數(shù)據(jù)裝入SBUF,同時還把TB8裝到發(fā)送移位寄存器的第9位上,然后從TXD(P3.1)端口輸出一幀數(shù)據(jù)。接收數(shù)據(jù):先置REN=1,使串行口為允許接收狀態(tài),同時還要將RI清“0”。然后再根據(jù)SM2的狀態(tài)和所接收到的RB8的狀態(tài)決定此串行口在信息到來后是否置RI=1,并申請中斷,通知CPU接收數(shù)據(jù)。當(dāng)SM2=0時,不管RB8為“0”還是為“1”,都置RI=1,此串行口將接收發(fā)送來的信息。當(dāng)SM2=1時,且RB8=1,表示在多機(jī)通信情況下,接收的信息為“地址幀”, 此時置RI=1,串行口將接收發(fā)來的地址。當(dāng)SM2=1時,且RB8=0,表示在多機(jī)通信情況下,接收的信息為“數(shù)據(jù)幀”, 但不是發(fā)給本從機(jī)的,此時RI不置為“1”,因而SBUF中接收的數(shù)據(jù)幀將丟失。
4、方式3( SM0 SM1 :1 1) :為波特率可變的11位異步通信方式,除了波特率有所區(qū)別之外,其余方式都與方式2相同。