OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3827|回复: 7

USB虚拟串口总是找不到新硬件

[复制链接]

19

主题

66

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
211
金钱
211
注册时间
2015-12-6
在线时间
47 小时
发表于 2016-9-26 19:33:24 | 显示全部楼层 |阅读模式
3金钱
本帖最后由 我是520老谢 于 2016-9-27 09:53 编辑

复制原子的历程到其他的板子上面试一下USB虚拟串口,当插入usb线的时候总是很难找到硬件,一旦找到就正常了。
不清楚问什么这么难找到硬件,用以前其他的工程很容易找得到。所以不会是硬件的问题。

由于电路的原理图是这样的


直接输出低电平控制PG1管角

void GP1_Init(void)
{

GPIO_InitTypeDef  GPIO_InitStructure;
         
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOG, ENABLE);         //使能PB,PE端口时钟
        
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;                                 //LED0-->PB.5 端口配置
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;                  //推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度为50MHz
GPIO_Init(GPIOG, &GPIO_InitStructure);                                         //根据设定参数初始化GPIOB.5
// GPIO_SetBits(GPIOG,GPIO_Pin_1);                                                 //PB.5 输出高
        GPIO_ResetBits(GPIOG,GPIO_Pin_1);
}

int main(void)
{         
        u16 t;
        u16 len;        
        u16 times=0;   
        u8 usbstatus=0;         
        delay_init();                     //延时函数初始化        
        GP1_Init();
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);         //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
        uart_init(9600);                 //串口初始化为115200

        delay_ms(1800);
        USB_Port_Set(0);         //USB先断开
        delay_ms(700);
        USB_Port_Set(1);        //USB再次连接
         Set_USBClock();   
         USB_Interrupts_Config();   
         USB_Init();            

        while(1);
}
pg1.png QQ截图20160927095036.png
也可以说是勉强模拟串口是可以用的,但是效果不好。这肯定有问题的,
由于不知道是什么原因导致这个情况,所以也不知道怎么解决的好。
想问问了解的人,帮一下。

最佳答案

查看完整内容[请看2#楼]

1.5K电阻,直接接,不要用三极管控制。试试吧。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2016-9-26 19:33:25 | 显示全部楼层
1.5K电阻,直接接,不要用三极管控制。试试吧。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11537
金钱
11537
注册时间
2014-4-1
在线时间
1314 小时
发表于 2016-9-26 21:32:26 | 显示全部楼层

USB接线不要太长。


回复

使用道具 举报

19

主题

66

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
211
金钱
211
注册时间
2015-12-6
在线时间
47 小时
 楼主| 发表于 2016-9-27 09:55:53 | 显示全部楼层
xuande 发表于 2016-9-26 21:32
USB接线不要太长。

应该不是这个问题吧,USB线也不是很长,不到1米。昨晚试了一下,只要连接上一次,之后怎么拔插都是可以的。但是就是有时候就是无法识别USB设备,比如今天试了好几次,都是无法识别。
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11537
金钱
11537
注册时间
2014-4-1
在线时间
1314 小时
发表于 2016-9-27 10:22:49 | 显示全部楼层

用虚拟串口有三年了,产品在用。
只要驱动正确,就没有问题,比较稳定。

待解问题有两个:
一,有时候驱动很难装,大约占到十分之一。和操作系统有关,解决了一部分,还有些只能换系统;
二,上位机接收数据的速度,最快达到800KB/秒,B表示字节,但有时只能到100~200KB。貌似也和系统有关,尚无解。

回复

使用道具 举报

9

主题

108

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1136
金钱
1136
注册时间
2013-7-16
在线时间
80 小时
发表于 2016-9-27 10:45:43 | 显示全部楼层
无法识别说明枚举没有成功,可以调试下看看在哪一步有问题。 虚拟串口的驱动好像也有点问题,兼容性不是很好, 和系统有关。
回复

使用道具 举报

19

主题

66

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
211
金钱
211
注册时间
2015-12-6
在线时间
47 小时
 楼主| 发表于 2016-9-27 19:13:07 | 显示全部楼层
本帖最后由 我是520老谢 于 2016-9-27 19:49 编辑
xuande 发表于 2016-9-27 10:22
用虚拟串口有三年了,产品在用。
只要驱动正确,就没有问题,比较稳定。

驱动装上去了,很难连接的上,但是一旦连接上了,再拔插都连接的上,但是第一次连接上电脑,总是要在程序中单步走好多次才可以。今天连接上了,估计第二天开机又是要这样才能连接的上。
回复

使用道具 举报

19

主题

66

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
211
金钱
211
注册时间
2015-12-6
在线时间
47 小时
 楼主| 发表于 2016-9-27 19:14:12 | 显示全部楼层
cookles 发表于 2016-9-27 10:45
无法识别说明枚举没有成功,可以调试下看看在哪一步有问题。 虚拟串口的驱动好像也有点问题,兼容性不是很 ...

可以连接的上,但是很难连接,我对这个虚拟串口也不是很熟悉,所以也不太知道最有可能影响的是在哪个地方
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-24 16:28

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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