日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]1、C8051f的UART0是異步、全雙工串口。其波特率發(fā)生器規(guī)定由定時(shí)器1定時(shí)器提供??膳渲脼?位UART或9位UART(多機(jī)通訊第九位用于片選作用)。SYSCLK=24.5MHZ(我的板子采用內(nèi)部晶振頻率作為系統(tǒng)時(shí)鐘) BAUDRATE=11520

1、C8051f的UART0是異步、全雙工串口。其波特率發(fā)生器規(guī)定由定時(shí)器1定時(shí)器提供??膳渲脼?位UART或9位UART(多機(jī)通訊第九位用于片選作用)。SYSCLK=24.5MHZ(我的板子采用內(nèi)部晶振頻率作為系統(tǒng)時(shí)鐘) BAUDRATE=115200(波特率)

2、初值TH1 Tl1配置

由上述公式可計(jì)算初值:TH1 = 256-(SYSCLK/BAUDRATE/2)而程序內(nèi)是TH1 = -(SYSCLK/BAUDRATE/2),這兩種是相同的。第一種是以正數(shù)的二進(jìn)制形式保存在計(jì)算機(jī)內(nèi)。第二種是負(fù)數(shù),取反加1求得補(bǔ)碼保存在計(jì)算機(jī)中。結(jié)果是相同的。每當(dāng)TL1中的值溢出后 TH1存儲(chǔ)的重裝載值裝載到TL1中開始計(jì)數(shù)。

3、初始化程序(以后使用可直接調(diào)用此初始化函數(shù))。SYSCLK與BAUDRATE參數(shù)修改即可

void UART0_Init (void)

{

SCON0 = 0x10; // SCON0: 8-bit variable bit rate

// level of STOP bit is

// 使能RX接收

// ninth bits are zeros

// 清除接收和發(fā)送中斷

if (SYSCLK/BAUDRATE/2/256 < 1) {

TH1 = -(SYSCLK/BAUDRATE/2);

CKCON |= 0x10; // T1M = 1; SCA1:0 = xx

} else if (SYSCLK/BAUDRATE/2/256 < 4) {

TH1 = -(SYSCLK/BAUDRATE/2/4);

CKCON |= 0x01; // T1M = 0; SCA1:0 = 01

CKCON &= ~0x12;

} else if (SYSCLK/BAUDRATE/2/256 < 12) {

TH1 = -(SYSCLK/BAUDRATE/2/12);

CKCON &= ~0x13; // T1M = 0; SCA1:0 = 00

} else {

TH1 = -(SYSCLK/BAUDRATE/2/48);

CKCON |= 0x02; // T1M = 0; SCA1:0 = 10

CKCON &= ~0x11;

}

TL1 = 0xff; // 定時(shí)器1加1 TL1溢出 此時(shí)TH1中的重裝載值加載 //到TL1中

TMOD |= 0x20; //定時(shí)器1設(shè)置為8位自動(dòng)重裝載模式

TMOD &= ~0xD0;

TR1 = 1; //開啟定時(shí)器1

TI0 = 1; // 發(fā)送結(jié)束 此發(fā)送中斷位置1

}


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉