Embedded 嵌入式系统的printf实现
我在哪里可以找到适合嵌入式系统的几乎完整的实现(浮点、宽度等)(嵌套函数调用很少,堆栈和ram使用率低,没有堆,mo系统调用)您检查过ChibiOS的实现了吗?它是Apache许可的,浮点支持(昂贵)是通过Embedded 嵌入式系统的printf实现,embedded,printf,Embedded,Printf,我在哪里可以找到适合嵌入式系统的几乎完整的实现(浮点、宽度等)(嵌套函数调用很少,堆栈和ram使用率低,没有堆,mo系统调用)您检查过ChibiOS的实现了吗?它是Apache许可的,浮点支持(昂贵)是通过define实现的编译时选项 它是用微控制器设计的。这些宏几乎都是对所提供的BaseSequentialStream结构中的函数指针的唯一调用,您可以根据需要替换它们。var args列表是您常规的stdarg.h实现。对于在串行端口上传输,最快的事情是: int32_t printfDebu
define
实现的编译时选项
它是用微控制器设计的。这些宏几乎都是对所提供的BaseSequentialStream结构中的函数指针的唯一调用,您可以根据需要替换它们。var args列表是您常规的
stdarg.h
实现。对于在串行端口上传输,最快的事情是:
int32_t printfDebugSerial(const char *format, ...)
{
if (strlen(format) >200) return -1;
char tempBuff[256]; memset(tempBuff, 0, sizeof tempBuff);
va_list arg;
int32_t done;
va_start (arg, format);
done = (int32_t)vsprintf(tempBuff,format, arg);
va_end (arg);
pushMsgOnSerial((uint8_t*)tempBuff, done);
return done;
}
其中,
pushMsgOnSerial()
将是用于在串行端口上发送字节的特定于电路板的功能。您正在查看newlib吗?