定时、计数、串口通讯和为一体怎么就是无法实现串口通讯?
帮忙参考以下代码哪里有不当之处?
现在出现问题是发送 3BH就会显示00 00 00
//unsigned char C=(5000(us)/1.085);
//unsigned char TH= (65536-C)/256;
//unsigned char TL= (65536-C)%256;
#define TH 0xfd //5ms
#define TL 0xfd
void Serial(void)
{
SCON=0X50;
TMOD=0x20;
TH1=0XFd;
TL1=0XFd;
TR1=1;
TI=1;
}
//初始化定时器
void init_timer(void)
{Serial();
/*TMOD=0x21; //计数启动
TH0=TH; //高8位
TL0=TL; //低8位*/
IE=0x82;
//TCON=0x00;
TR0=1;
EA=1;
}
void tx_char(unsigned char c)
{SBUF=c;
while(TI==0);
TI=0;
}
[解决办法]
是用芯片里面的SMBUS来做么??
[解决办法]
波特率对吗??
[解决办法]
定时器没初始化,怎么可能得到相应的波特率?
呵呵