定时器1不够用
STC12C5A60S2+ENC28j60+RS232+RS485需要用到三个定时器1作为波特率发生器,但是STC12C5A60S2只有1个定时器1和一个独立波特率发生器,还少一个怎么办?RS232和RS485都需要用到波特率发生器我明白,但是ENC28j60也需要用到波特率发生器我不太明白,下面是ENC28j60驱动文件中使用T1的代码:void init_uart()
{
// if (fre == 1200) //only support 1200 Baud rate
// {
// CKCON |=0x04;
TMOD = 0x20;
TH1= 0xFD;
TL1= 0xFD;
SCON = 0x50;
PCON = PCON|0x80;
TR1= 1;
// TI = 1;
// printf("Hello world!\r\n");
// }
}大神们求助! 用PCA还可以做两个定时器 BDXing6 发表于 2012-5-25 22:38 static/image/common/back.gif
用PCA还可以做两个定时器
用PCA做的定时器可以用做波特率发生器吗? 不能,但你要那多的波特率发生器干什么?
这个U最多只有两个串口,多了也没用吧。 BDXing6 发表于 2012-5-25 22:43 static/image/common/back.gif
不能,但你要那多的波特率发生器干什么?
这个U最多只有两个串口,多了也没用吧。 ...
STC12C5A60S2+ENC28j60+RS232+RS485总共需要用到三个波特率发生器。。。 你把232与485分开了?
BDXing6 发表于 2012-5-25 22:45 static/image/common/back.gif
你把232与485分开了?
是的,单片机的双串口全用到了。 你得先拿出硬件图,再考虑U资源的分配问题。 ENC29J60不用定时器,这个程序初始化UART是为了调试用 BDXing6 发表于 2012-5-25 22:47 static/image/common/back.gif
你得先拿出硬件图,再考虑U资源的分配问题。
单片机的串口1接的MAX232再接到RS232,串口2接的MAX485再接到RS485,木有电路图。。。直接焊的 sun_sky 发表于 2012-5-25 22:47 static/image/common/back.gif
ENC29J60不用定时器,这个程序初始化UART是为了调试用
但是如果我把调用的这段程序删掉后,电脑就不能PING通单片机了。 好了,谢谢大家,我把那段调试的程序删掉还不够,还要把ENC29J60驱动中调用这段程序的代码删掉。
页:
[1]