ATMEGA 328P 的串口问题
很简单的程序:
void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.print("1111");
Serial.flush();
delay(500);
}
串口可以使用,但只能是连接PC的USB后,打开串口监控窗口时候,串口才启动,其他任何外接方法都不可以是串口启动。
外接5V 电源没有用、USB连接上打开串口监控窗口触发一下才有用。。。。
请问这是什么问题啊?求教啊!!!!!
本帖最后由 Youyou 于 2014-3-13 11:55 编辑
你好,你看到的TXD和RXD指示灯不是直接在328P单片机的TXD和RXD管脚上面,而是连接在8U2(或者16U2)单片机的管脚上面。后者负责USB转串口。实际上,按照你写的程序,328P单片机只要上电后,就已经在发数据了。你可以用个LED灯测试下,LED灯的正极接Vcc,它的负极接328P的TXD管脚,你就能看到灯在闪了,说明已经再发送数据了。但要让板子上的TXD和RXD指示灯亮起来,就必须要让8U2(或者16U2)收发数据,因此这就是为什么你要开串口监视器触发下了。
328P的串口在上电后就已经启动了,放心用吧,没问题的。:) 一楼正解,楼主可以用其他引脚配成软串口测试,或者用另一块Uno测试下 恩,问题解决了,谢谢大侠们:)
页:
[1]