日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|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í)器提供。可配置為8位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存儲的重裝載值裝載到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位自動重裝載模式

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)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

在嵌入式系統(tǒng)開發(fā)中,自動初始化機(jī)制是一種重要的設(shè)計(jì)思想,它極大地簡化了系統(tǒng)啟動和配置過程,提高了代碼的可維護(hù)性和可移植性。本文將深入探討嵌入式系統(tǒng)中的自動初始化機(jī)制,包括其原理、實(shí)現(xiàn)方式以及代碼示例。

關(guān)鍵字: 嵌入式系統(tǒng) 初始化

定義一個(gè)變量,就是在內(nèi)存中為你定義的這個(gè)變量開辟一段內(nèi)存空間,如果這個(gè)變量沒有初始化,那么系統(tǒng)會隨機(jī)給這個(gè)變量賦一個(gè)值,這個(gè)值我一般稱它為"垃圾數(shù)"。沒有初始化的變量我認(rèn)為它是沒有意義的,是在浪費(fèi)內(nèi)存,就比如人剛出生的時(shí)...

關(guān)鍵字: 變量 初始化 賦值

▼點(diǎn)擊下方名片,關(guān)注公眾號▼大家好,很高興和各位一起分享我的第45篇原創(chuàng)文章,喜歡和支持我的工程師,歡迎給我點(diǎn)贊、收藏、分享。加微信[xyzn3333]與作者溝通交流,免費(fèi)獲取更多單片機(jī)與嵌入式的海量電子資料。歡迎關(guān)注【...

關(guān)鍵字: 串口發(fā)送

摘要:為了更好地發(fā)揮隨鉆測井儀檢測數(shù)據(jù)的真實(shí)性和使用靈活性等優(yōu)點(diǎn),文中基于Actel公司的APA075FPGA數(shù)據(jù)采集和傳輸系統(tǒng)所涉及到的AD數(shù)據(jù)采集、FPGA數(shù)據(jù)緩存、FPGA中數(shù)據(jù)的串口發(fā)送三部分,在實(shí)驗(yàn)室自制的一塊...

關(guān)鍵字: 隨鉆井徑檢測 AD數(shù)據(jù)采集 FPGA 串口發(fā)送

大家好,我是張巧龍,本文介紹如何使用帶FIFO的串口來減少接收中斷次數(shù),通過一種自定義通訊協(xié)議格式,給出幀打包方法;之后介紹一種特殊的串口數(shù)據(jù)發(fā)送方法,可在避免使用串口發(fā)送中斷的情況下,提高系統(tǒng)的響應(yīng)速度。一種可1.簡介...

關(guān)鍵字: 串口發(fā)送

方法一:直接把float數(shù)據(jù)拆分為4個(gè)unsigned char(由于數(shù)字沒法拆分,所以只能用指針的),發(fā)過去,在合并為float。其中有兩點(diǎn)要注意。(1)大端存儲,小端存儲;如果搞錯(cuò)讀取數(shù)據(jù)就不是你接收的數(shù)據(jù)地址(我主...

關(guān)鍵字: int long 串口發(fā)送 浮點(diǎn)型數(shù)據(jù)

一、IO口數(shù)字輸入/輸出端口有下列特性:□ 每個(gè)輸入/輸出位都可以獨(dú)立編程。□ 允許任意組合輸入、輸出?!?P1 和 P2 所有 8 個(gè)位都可以分別設(shè)置為中斷?!?可以獨(dú)立操作輸入和輸出數(shù)據(jù)寄存器?!?可以分別設(shè)置上拉或

關(guān)鍵字: io口 msp430f149 初始化

MCU:STM32F334C8T6Frameware:STM32F3348-Discovery_FW_V1.0.0實(shí)現(xiàn)功能:在PC使用串口調(diào)試助手向MCU發(fā)送字符(數(shù)據(jù)),MCU將接收到的字符發(fā)回PC代碼:#includ...

關(guān)鍵字: stm32f334 串口發(fā)送 接收數(shù)據(jù)

//時(shí)鐘默認(rèn)情況//FLL時(shí)鐘FLL選擇XT1//輔助時(shí)鐘ACLK選擇XT132768Hz//主系統(tǒng)時(shí)鐘MCLK選擇DCOCLKDIV1048576Hz//子系統(tǒng)時(shí)鐘SMCLK選擇DCOCLKDIV1048576Hz#i...

關(guān)鍵字: msp430f5438 初始化 xt1
關(guān)閉