极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2540|回复: 11

[未解决] 求助,arduino插入扩展版后无法烧入程序且无法串口输入

[复制链接]
发表于 2018-5-26 17:53:45 | 显示全部楼层 |阅读模式
求助大神

板子和扩展板图片放下面

不插扩展板的情况下,烧录程序和监视器串口输入没有问题,都能正常使用。

但是插上扩展板后,烧录程序会出现这样的错误:
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xf0
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xf0
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xe0
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x1c
且从监视器输入的数据似乎是无法接收,用简单的的loop程序测试:
void loop()
{
  Serial.println("working1");
  while (Serial.available()>0)
    {
      Serial.println("working2");
      unsigned int Speed=Serial.parseInt();
      Serial.println("w3");

      Serial.println(Speed);
      }
}
监视器显示一直循环working1, 也就是输入数据也无法进入while (Serial.available()>0)中,应该是数据根本没有被板子接收吧。

求助大神如何解决

主板

主板

扩展板

扩展板
回复

使用道具 举报

发表于 2018-5-27 08:24:15 | 显示全部楼层
肯定是D0,D1被占用了,影响了程序烧录。
回复 支持 反对

使用道具 举报

发表于 2018-5-27 20:44:16 | 显示全部楼层
楼主的USB线是不是直接插在这个板子上的?
插在ARDUINO上试试?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-27 20:57:34 | 显示全部楼层
darkorigin 发表于 2018-5-27 20:44
楼主的USB线是不是直接插在这个板子上的?
插在ARDUINO上试试?

USB线是插在Arduino上的,把上面的线挨个拔了测试,应该是因为扩展板插在Arduino上占用了串口导致通信不了。但是这个扩展板又必须要用到,大神有解决办法吗?
或者如果通过扩展板上的RS485接口连接电脑的话,从电脑输入数据到扩展板,再到Arduino,这种方法可行吗?
回复 支持 反对

使用道具 举报

发表于 2018-5-27 21:07:14 | 显示全部楼层
刷机的时候拔掉模块
刷完机用扩展板通讯
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-28 07:51:51 | 显示全部楼层
darkorigin 发表于 2018-5-27 21:07
刷机的时候拔掉模块
刷完机用扩展板通讯

好的,我试试,谢谢!
回复 支持 反对

使用道具 举报

发表于 2018-5-31 21:45:58 | 显示全部楼层
1.拔掉上面的XBee模块(如果楼主有插上的话)
2.确定主板上没有程序(记得有一次我上传程序时就报错,当时板子上有一个使用串口的音乐播放程序并且还插了个与程序无关紧要的线)
    如果有:
      ·确定板子上面没有与程序无关的接线
      ·刷掉上面的程序再试(操作方法就是新建一个程序然后什么也不干就点“上传”键)
3.你的板子上好像有用来接无线发射/接收模块的端口,确定上面没有插任何东西后再试
4.当然是拔掉扩展板再上传程序啦!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-20 23:09:04 | 显示全部楼层
白羊羊罐头AS 发表于 2018-5-31 21:45
1.拔掉上面的XBee模块(如果楼主有插上的话)
2.确定主板上没有程序(记得有一次我上传程序时就报错,当时 ...

你好,感谢答疑。
把东西都拔掉确实可以烧入程序。不过主要问题是,需要所有东西都插上,可以使用,可以从PC向Arduino发送信息控制Arduino工作。可是现在插上扩展板等元件后,貌似是串口被占用的问题,无法从PC向Arduino发送数据。
请问你知道可以解决串口占用的方法吗,比如写程序时可以清空串口,或者用扩展板上的RS485与电脑通信的话,是否可以不通过串口直接输入呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-21 07:20:56 | 显示全部楼层
darkorigin 发表于 2018-5-27 21:07
刷机的时候拔掉模块
刷完机用扩展板通讯

你好,想在请教一下,我想用扩展板上的RS485与PC通讯。RS485转USB连电脑的话,也是用IDE传输数据吗?用IDE的话Arduino还是通过串口接收数据吗,会不会还有串口占用的问题呢?
回复 支持 反对

使用道具 举报

发表于 2018-6-21 22:00:56 | 显示全部楼层
Jingqiu 发表于 2018-6-20 23:09
你好,感谢答疑。
把东西都拔掉确实可以烧入程序。不过主要问题是,需要所有东西都插上,可以使用,可以 ...

呃……不晓得
回复 支持 反对

使用道具 举报

发表于 2018-6-21 22:01:25 | 显示全部楼层

可以看一下官网:www.arduino.cc/en/Guide/Troubleshooting.html
回复 支持 反对

使用道具 举报

发表于 2018-6-22 21:26:17 | 显示全部楼层
Jingqiu 发表于 2018-6-21 07:20
你好,想在请教一下,我想用扩展板上的RS485与PC通讯。RS485转USB连电脑的话,也是用IDE传输数据吗?用ID ...

RS485模块需要和你的arduino通讯,如果被占用,则还是一样的。。。
如果是2560MEGA,因为这货有2组串口(分别是RX0、TX0和RX1和TX1),
所以可以用未被占用的口来进行通讯。。
扩展板的话 要看实际接线的接法,其实除了新手之外,个人不推崇全部用扩展卡(盾的那种卡)
用面包板+杜邦线会更灵活,而且可以学到硬件连接。
用插针的盾,就意味着线路接法已固定。没法换了。。
回复 支持 反对

使用道具 举报

高级模式  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2018-10-17 03:28 , Processed in 0.044088 second(s), 7 queries , File On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表