当前位置:网站首页>重定向printf到USB CDC、串口2
重定向printf到USB CDC、串口2
2022-08-03 02:06:00 【物极必反1024】
重定向printf到USB CDC、串口2
1 头文件
#include <stdarg.h>
2、 串口2
void USART2_Printf(const char *format, ...)
{
va_list args;
char Data_Buff[100];
uint32_t length;
va_start(args, format);
length = vsnprintf((char *)Data_Buff, 100, (char *)format, args);
va_end(args);
USART1_Send_Len((uint8_t *)Data_Buff, length);
}
/*------------------------------------------- //函数名:USART2_Send_Len //描述:串口2发送固定长度字符串 //参数: u8 *str 发送的字符串 u8 len字符串长度 //返回值:无 //函数调用列表:无 ---------------------------------------------*/
void USART2_Send_Len(u8 *str,int len)
{
for(; len>0; len--)
{
while((USART2->SR&0X40)==0);//等待上一次串口数据发送完成
USART2->DR =(u8)*str; //写DR,串口将发送数据
str++;
}
}
3、USB
#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);
}
边栏推荐
猜你喜欢
随机推荐
南瓜科学新品上线 开辟益智玩具新世界
一篇文章玩明白Stack-migration
问题记录:jenkins构建时报错The goal you specified requires a project to execute but there is no POM in...
ES6 新特性:Class 的基本语法
公司封装方式导出excel过程
【云原生】服务行业案例-不可预测的并发场景解决方案
超级复杂可贴图布局的初级智能文本提示器
46LVS+Keepalived群集
qt opengl 使用不同的颜色绘制线框三角形
一个循环,两个循环问题的思考及复现
DTD约束和Schema约束
kubernetes部署ldap
【面经】被虐了之后,我翻烂了equals源码,总结如下
Linux定时任务脚本执行时mysqldump备份异常的问题
mysql-installer安装教程(详细图文)
MATLAB绘制填充图(X轴上下两种颜色)
能添加任意贴图超级复布局的初级智能文本提示器(超级版)
numpy PIL tensor之间的相互转换
容联云发送验证码
Wireshark data capture and analysis of the transport layer protocol (TCP protocol)









