打印
[STM32F4]

STM32F4Cube库CDC类试用手记(含USB全速/高速和VC测试程序)

[复制链接]
楼主: 碧云天书
手机看帖
扫描二维码
随时随地手机跟帖
341
厉害

使用特权

评论回复
342
qiangtech| | 2018-4-2 18:29 | 只看该作者
感谢楼主的分享,我用CUBEMX生成了一个CDC的,直接使用在NUCLEO-413ZH的开发板上,发现驱动不了,马上上官网下了一个最新的VCP驱动,还是不行。提示无法启动(代码10).幸好看到楼主的分享,再修改了startup文件中的HEAP_SIZE和stack_size,果然就解决问题了。CUBEMX里面也满满都是坑啊。

使用特权

评论回复
343
无帝老三| | 2018-4-4 19:30 | 只看该作者
while(USBD_BUSY == CDC_Transmit_FS(buffer, 8));
直接死循环了,仿真发现一直返回busy,遇到之中情况怎么处理?
发送的数据是连续的,不能缺少,不然就都无效了

使用特权

评论回复
344
zhang..yb| | 2018-6-5 09:57 | 只看该作者
发现个问题,要反复枚举才能和上位机通讯,不知道是软件问题还是芯片 BUG?

使用特权

评论回复
345
啦儿啦| | 2018-7-2 15:19 | 只看该作者
该历程使用libusb的时候,不知道为什么不能claim interface,导致无法传输数据

使用特权

评论回复
346
hui333| | 2018-7-13 17:40 | 只看该作者
驱动在哪啊

使用特权

评论回复
347
碧云天书|  楼主 | 2018-7-19 10:47 | 只看该作者
本帖最后由 碧云天书 于 2018-7-19 11:04 编辑
啦儿啦 发表于 2018-7-2 15:19
该历程使用libusb的时候,不知道为什么不能claim interface,导致无法传输数据
...

感觉在Windows系统下,libusb对USB的支持不如WinUSB好,后来就放弃libusb了。

使用特权

评论回复
348
碧云天书|  楼主 | 2018-7-19 11:02 | 只看该作者

stmcu.com的驱动链接已经失效了,可以到ST官网下载。win7用v1.3.1版驱动,Win10用v1.4.0版。

使用特权

评论回复
349
SP残焰| | 2018-8-29 22:58 | 只看该作者
认真学习才行,实在是搞不定

使用特权

评论回复
350
henryhzc1708| | 2018-9-25 12:11 | 只看该作者
STM32F103 的例子用的是static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len) 回调函数, 不是 CDC_Itf_Receive

static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len)
{
  /* USER CODE BEGIN 6 */
  //USBD_CDC_SetRxBuffer(&hUsbDeviceFS, &Buf[0]);
  USBD_CDC_ReceivePacket(&hUsbDeviceFS);
        HAL_UART_Transmit_DMA(&huart2, Buf, *Len);
        //HAL_UART_Transmit_IT(&huart1, Buf , 1);
  return (USBD_OK);
  /* USER CODE END 6 */
}

使用特权

评论回复
351
diu| | 2018-10-18 16:48 | 只看该作者
就一个字,牛X

使用特权

评论回复
352
chenqiang10| | 2018-10-18 17:26 | 只看该作者

上位机可以的

使用特权

评论回复
353
hoanc| | 2019-2-28 20:05 | 只看该作者
本帖最后由 hoanc 于 2019-2-28 20:09 编辑

您好

使用特权

评论回复
354
zhk851830097| | 2019-3-20 11:31 | 只看该作者
你好 我下载了压缩包 用keil编译也是通过的,重新定义了USB_FS模式,四颗灯也会同时闪烁,感觉代码是没有问题的,但是,电脑端设备管理器一直识别不到这个设备,想请教楼主 是怎么回事?????

1.4

使用特权

评论回复
355
zhk851830097| | 2019-3-20 11:34 | 只看该作者
另外,最终需要实现单片机通过usb协议和arm板通信,但是我直接将usb查到arm板上 lsusb并不能 识别到这个设备,但是用官方的demo程序是可以的,我看了一下usb的初始化过程 都差不多,楼主知道是什么原因吗

使用特权

评论回复
356
zhk851830097| | 2019-3-20 14:12 | 只看该作者
虚拟串口驱动 我也从官网下载了 如图

使用特权

评论回复
357
zhk851830097| | 2019-3-20 14:13 | 只看该作者
官方的demo程序烧写进入 是可以识别到usb设备的 如图

使用特权

评论回复
358
xiaoxiao0932| | 2019-4-2 13:27 | 只看该作者
@碧云天书  连接下载的都无法打开,能否重新上传

使用特权

评论回复
359
xiaoxiao0932| | 2019-4-2 13:36 | 只看该作者
@碧云天书  楼主,我在使用时遇到很大的问题,从flash中读取数据发送到上位机,
循环读取组成数据包,USB发送   每次向USB缓冲区放入256字节, 测试速度在300K左右,接收的数据时正确的
但是 每次向USB缓冲区放入512字节或者更大的数据,测试速度还是在300K左右  ,接收的数据就出现错误

USBD_CDC_SetTxBuffer(&USBD_Device, UsbSendbuf, 1024);
while(USBD_CDC_TransmitPacket(&USBD_Device) != USBD_OK)
{       
        //testtemp_k++;
}

请教楼主是怎么样保证数据在800~900K的传输速度下的正确性,是否验证过USB一直给上位机发送数据的正确性

使用特权

评论回复
360
勿灬忘| | 2019-4-10 11:52 | 只看该作者
为什么我烧录到板子里是无法识别的设备啊!萌新一枚,有大佬指教一下么?我用的芯片是f405VET6。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则