工具/软件:TI C/C++编译器
我尝试在 m3内核上使用 FatFs、但需要将 FatFs 的 xDEV_IN 和 xDEV_OUT 函数分别映射到 m3的 get_char 和 put _char 函数。 这里使用 FatFs 的指令说...
"低级输出函数是用户提供的回调函数、用于向器件发送字节。 应将其地址设置为指针'xfunc_out'、以在使用之前设置默认输出器件。 例如 xdev_out (uart2_putc); 输出函数将从 xputc 函数调用。 通常、此函数将字节放入 UART、LCD 或任何输出器件。 xsprintf/xfprintf 函数使用其参数覆盖默认输出器件。
低级输入函数是用户提供的从器件读取字节的回调函数。 在使用输入器件之前、必须将其地址设置为指针'xfunc_in"以使其 swich 输入器件。 例如 xdev_in (uart2_getc); 输入函数将从 xgets 函数调用。 通常、此函数从输入器件或文件中读取一个字节。 但是、当器件报告数据流结束时、输入函数应返回0。 xgets 函数在流末尾以零中止、应用程序将能够检测到它。 xfgets 函数使用其参数覆盖默认输入器件。"
但我很难找到只返回或传递 char 作为其参数的 get_char 和 put_char 函数。 有人建议我在主例程中使用这些命令...
xDEV_OUT (UARTCharPut);//将输出管道设置为 UART char Put 函数 xDEV_IN (UARTCharGet);//将输入管道设置为 UART char Get 函数
但它们不起作用、因为参数是错误的。
是否有将起作用的简单 Put_char 和 get_char 命令以及它们位于哪个库中? 此外、如果我将 UART0用于类似这样的文本 I/O ...
UARTStdioInit (0);
IntRegister (INT_UART0、UARTStdioIntHandler);
这是否与简单的 get_char / put _char 命令共存?
提前感谢。
ps、随 FatFs v013b 提供的 xprintf.h 库文件定义了 xDEV_OUT 和 xDEV_IN 函数、如下所示...
define xDEV_OUT (func) xfunc_out =(void (*)(unsigned char))(func)
#define xDEV_IN (func) xfunc_in =(unsigned char (*)(void))(func)
是否有用