代码拉取完成,页面将自动刷新
#ifndef __VTOR_PRINTF_H__
#define __VTOR_PRINTF_H__
#ifdef __cplusplus
extern "C" {
#endif
#include "vtor_elec_module_config.h"
#ifdef __VTOR_PRINTF__
#include "vtor_string.h"
// 自写printf函数,支持%d %x %f %s
#define __VTOR_STRING_CONFIG_PRINTF_BY_VTOR_STRING__
#ifdef __VTOR_STRING_CONFIG_PRINTF_BY_VTOR_STRING__
// 参数宏 配置终端颜色等
/*
重置色:\033[0m
红色:\033[31m
橙色:\033[38;5;208m
黄色:\033[33m
绿色:\033[32m
青色:\033[36m
蓝色:\033[34m
紫色:\033[35m
*/
typedef struct
{
uint8_t colorAnsi;
const uint8_t* colorStr;
}VtorPrintColor;
#define VtorPrintResetColor 0x10
#define VtorPrintRedColor 0x20
#define VtorPrintOrangeColor 0x30
#define VtorPrintYellowColor 0x40
#define VtorPrintGreenColor 0x50
#define VtorPrintCyanColor 0x60
#define VtorPrintBlueColor 0x70
#define VtorPrintPurpleColor 0x80
// 最底层调用,放置在此处,便于跳转查看
// int16_t VtorString_ChanPrintBuffer(uint8_t ch, uint8_t* buf, int16_t len);
#define VtorPrintf(...) VtorSprintf(NULL, 0, __VA_ARGS__)
// 可以自定义宏,然后自行修改不同ch的打印实现
#define VtorChanPrintf(ch, ...) VtorSprintf((uint8_t*)(ch), 0, __VA_ARGS__)
#define VtorChan0Printf(...) VtorSprintf((uint8_t*)0, 0, __VA_ARGS__)
#define VtorChan1Printf(...) VtorSprintf((uint8_t*)1, 0, __VA_ARGS__)
#define VtorChan2Printf(...) VtorSprintf((uint8_t*)2, 0, __VA_ARGS__)
#define VtorChan3Printf(...) VtorSprintf((uint8_t*)3, 0, __VA_ARGS__)
#define VtorChan4Printf(...) VtorSprintf((uint8_t*)4, 0, __VA_ARGS__)
// 为elec module启用一个调试接口
#define VtorDebugChanPrintf(...) VtorSprintf((uint8_t*)5, 0, __VA_ARGS__)
#endif
// 如果没有设置,就使用默认参数
#ifndef __VTOR_SPRINTF_CONFIG_BUFFER_SIZE__
#define __VTOR_SPRINTF_CONFIG_BUFFER_SIZE__
#define VTOR_SPRINTF_BUFFER_SIZE 256
#endif
// 高级功能,支持格式化输出,目前支持整形,浮点型,字符串
int32_t VtorSprintf(uint8_t* str, int32_t len, uint8_t* format, ...);
int32_t VtorScanf(uint8_t* str, uint8_t* format, ...);
#endif // __VTOR_PRINTF__
#ifdef __cplusplus
}
#endif
#endif
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。