新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 使用51的定時器模擬串口

使用51的定時器模擬串口

作者: 時間:2016-11-29 來源:網(wǎng)絡(luò) 收藏
//-----------------------------------------//Timer interrupt routine for UARTvoid tm1() interrupt 3 using 1{if (RING){if (--RCNT == 0){RCNT = 3;//直到我看到了這里……//reset send baudrate counterif (--RBIT == 0){RBUF = RDAT; //save the data to RBUFRING = 0;//stop receiveREND = 1;//set receive completed flag}else//這TM不是坑爹吧{RDAT >>= 1;if (RXB) RDAT |= 0x80;//shift RX data to RX buffer}}}else if (!RXB){RING = 1;//set start receive flagRCNT = 4;//initial receive baudrate counterRBIT = 9;//initial receive bit number (8 data bits + 1 stop bit)}if (--TCNT == 0){TCNT = 3;//reset send baudrate counterif (TING)//judge whether sending{if (TBIT == 0){TXB = 0;//send start bitTDAT = TBUF; //load data from TBUF to TDATTBIT = 9;//initial send bit number (8 data bits + 1 stop bit)}else{TDAT >>= 1;//shift data to CYif (--TBIT == 0){TXB = 1;TING = 0;//stop sendTEND = 1;//set send completed flag}else{TXB = CY;//write CY to TX port}}}}}//-----------------------------------------//initial UART module variablevoid UART_INIT(){TING = 0;RING = 0;TEND = 1;REND = 0;TCNT = 0;RCNT = 0;}

唉,串口之爭告一段落。我還是希望有硬件串口。

本文引用地址:http://m.butianyuan.cn/article/201611/323424.htm

另外就是我實(shí)在不知道詭異的STC ISP串口是怎么在11.0592下面跑到115200的。本來加倍是溢出/16,那么它就算加倍的加倍,也就是/8……既然軟件模擬不可能實(shí)現(xiàn)如此高的波特率。而且6T模式能到230400,我就認(rèn)為他的SFR有串口四倍速選項(xiàng)。可惜老妖沒有拿出來吹,或者說他也不知道。ISP程序也讀不出。實(shí)在不知道是為啥……

順便說一句,STC15系列的片子只要RAM越界就復(fù)位……

順便提一個老妖的坑爹之處:

ISP定時常數(shù)不在表格中寫出來……

而是:

/*Define ISP/IAP/EEPROM operation const for IAP_CONTR*///#define 	ENABLE_IAP 	 0x80//if SYSCLK<30MHz//#define 	ENABLE_IAP 	 0x81//if SYSCLK<24MHz#define 	 ENABLE_IAP 	 0x82//if SYSCLK<20MHz//#define 	ENABLE_IAP 	 0x83//if SYSCLK<12MHz//#define 	ENABLE_IAP 	 0x84//if SYSCLK<6MHz//#define 	ENABLE_IAP 	 0x85//if SYSCLK<3MHz//#define	 ENABLE_IAP 	 0x86//if SYSCLK<2MHz//#define	 ENABLE_IAP 	 0x87//if SYSCLK<1MHz


暈死……但是我為什么發(fā)現(xiàn)似乎0×83這個ISP常數(shù)到處可以用,1M的RC設(shè)置照樣0×83下……

本文轉(zhuǎn)自:http://www.rwzy.co.cc


上一頁 1 2 下一頁

關(guān)鍵詞: 51定時器模擬串

評論


技術(shù)專區(qū)

關(guān)閉