打印
[STM32L4]

STM32-F3/F4/F7/H7专区 USB虚拟串口(VCP)通信接收处理函数还有printf函数应该怎么写?

[复制链接]
225|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huyuezhan|  楼主 | 2023-6-18 02:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
单片机和其他外设要连的UART串口太多了,正好也需要和计算机上位机通信,感觉使用usb虚拟串口VCP可能更方便些,也不需要外接转换芯片了,但串口接收和发送函数不知道该怎么写,在这里求助,请帮帮忙,感谢

使用特权

评论回复
沙发
光辉梦境| | 2023-9-16 21:52 | 只看该作者
我觉得你不如用串口更方便一些呢

使用特权

评论回复
板凳
远山寻你| | 2023-9-17 00:00 | 只看该作者
虚拟串口啊,这个倒是方便,可以用cubemx来配置一下

使用特权

评论回复
地板
三生万物| | 2023-9-17 02:12 | 只看该作者
确实不需要外置通信芯片了

使用特权

评论回复
5
淡漠安然| | 2023-9-17 05:59 | 只看该作者
你还是用官方提供的USB的例程吧,比较简单一些

使用特权

评论回复
6
冰春彩落下| | 2023-9-17 09:02 | 只看该作者
还是用cubemx配置,我是比较习惯了

使用特权

评论回复
7
江河千里| | 2023-9-17 11:59 | 只看该作者
正常不都是修改描述符之类的吗?你看看你用的那个芯片,然后改一下描述符就好了

使用特权

评论回复
8
一秒落纱| | 2023-9-17 15:15 | 只看该作者
用cubemx超级简单,你只要选择VCP然后简单配置就能直接用了的

使用特权

评论回复
9
暖了夏天蓝了海| | 2023-9-17 18:26 | 只看该作者
你说的串口接收和发送?这不是串口的事儿吗?

使用特权

评论回复
10
夜阑风雨| | 2023-9-17 19:19 | 只看该作者
你就正常接收发送就行,然后把数据转存在USB的BUFF里,就收发了

使用特权

评论回复
11
别乱了阵脚| | 2023-9-17 22:20 | 只看该作者
我记得F4不是有个虚拟串口的例程么?你查查看呗

使用特权

评论回复
12
Henryko| | 2023-9-19 23:52 | 只看该作者
虚拟串口是不是波特率就没用了

使用特权

评论回复
13
AloneKaven| | 2023-9-20 23:28 | 只看该作者
cubeMX可以直接生成虚拟串口程序的

使用特权

评论回复
14
jcky001| | 2023-9-21 15:19 | 只看该作者
你的STM32系列(F3/F4/F7/H7)是否具有USB OTG硬件接口?

使用特权

评论回复
15
Stahan| | 2023-9-21 23:28 | 只看该作者
cubeMX配置起来方便

使用特权

评论回复
16
Mowergy| | 2023-10-18 12:35 | 只看该作者
还是用官方提供的USB的例程吧

使用特权

评论回复
17
Jacquetry| | 2023-10-18 19:52 | 只看该作者
虚拟串口跟串口区别大吗

使用特权

评论回复
18
huyuezhan|  楼主 | 2023-10-22 09:13 | 只看该作者
找到了
#include "stdarg.h"
void usb_printf(const char *format, ...)
{
    va_list args;
    uint32_t length;

    va_start(args, format);
    length = vsnprintf((char *)UserTxBufferFS, APP_TX_DATA_SIZE, (char *)format, args);
    va_end(args);
    CDC_Transmit_FS(UserTxBufferFS, length);
}
很方便

使用特权

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

本版积分规则

15

主题

37

帖子

2

粉丝