USB数据传输程序影响主程序不能正常运行的问题

[复制链接]
1663|10
 楼主| bdj420 发表于 2014-5-26 16:20 | 显示全部楼层 |阅读模式
请教各位,在我未加入USB数据传输的程序时,我的原程序都能正常运行,数据可以从串口输出获取。当加入USB程序后,程序不能正常运行,串口端也没有任何数据显示。这次的产品跟以前做的没什么大的出入,只是多了几路AD采样和指示灯,不知道为什么以前的没任何问题,这次的就不行了。

请各位帮忙分析下,出错可能的原因是什么呢?
谢谢!
 楼主| bdj420 发表于 2014-5-26 16:52 | 显示全部楼层
运行程序,一直出不了变量初始化函数部分,求解答
 楼主| bdj420 发表于 2014-5-26 17:03 | 显示全部楼层
以前这种问题的原因是因为单片机寄存器中定义变量过多存储空间不够,使程序一直无法运行出变量初始化函数,这次不知道是什么原因
 楼主| bdj420 发表于 2014-5-27 09:24 | 显示全部楼层
继续帮自己顶起来!
dirtwillfly 发表于 2014-5-27 10:03 | 显示全部楼层
没看明白你是用下位机向上位机传数据,还是上位机向下位机传数据
 楼主| bdj420 发表于 2014-5-27 17:30 | 显示全部楼层
dirtwillfly 发表于 2014-5-27 10:03
没看明白你是用下位机向上位机传数据,还是上位机向下位机传数据

是下位机向上位机传送数据
谢谢版主作答:P
 楼主| bdj420 发表于 2014-5-28 14:26 | 显示全部楼层
本帖最后由 bdj420 于 2014-5-28 14:28 编辑

。。。
 楼主| bdj420 发表于 2014-5-28 14:27 | 显示全部楼层
dirtwillfly 发表于 2014-5-27 10:03
没看明白你是用下位机向上位机传数据,还是上位机向下位机传数据

经过测试,发现是由于我将5路AD采样值改为8路AD采样值产生的影响,以前的程序都是用USB向上位机传输5路AD采样值,这回改为传输8路就不行了。我不明白的是,无论多少路,USB传输的只是数据而已啊,我定义好传几路不就好了,为什么会出现这种问题呢,求解。。。
dirtwillfly 发表于 2014-5-28 15:27 | 显示全部楼层
bdj420 发表于 2014-5-28 14:27
经过测试,发现是由于我将5路AD采样值改为8路AD采样值产生的影响,以前的程序都是用USB向上位机传输5路AD ...

难道传输数据太多了?不应该啊。USB2.0传输速度能到20~40M
:L
 楼主| bdj420 发表于 2014-5-29 11:43 | 显示全部楼层
dirtwillfly 发表于 2014-5-28 15:27
难道传输数据太多了?不应该啊。USB2.0传输速度能到20~40M

我用的C8051F340的单片机,片子自带USB,但是只支持全速模式,我查了下全速模式下数据不能超过64个字节,难道是我的8路AD数据超过了64个字节?
有人说可以试试将数据传输进行拆包处理,即先发送4路数据再发送4路的,但是我刚看USB不久,没接触过拆包发送,能给些参考代码或资料吗?
dirtwillfly 发表于 2014-5-29 14:16 | 显示全部楼层
bdj420 发表于 2014-5-29 11:43
我用的C8051F340的单片机,片子自带USB,但是只支持全速模式,我查了下全速模式下数据不能超过64个字节, ...

没有代码。
就是分两次发送就可以。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

20

主题

139

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部