硬件:FRDM_K22F
软件:MQX4.2
printf默认的是UART1,如何改为UART2呢?
方法如下:
1) 在user_config.h (xx\config\frdmk22f120m)中
将 #define BSPCFG_ENABLE_TTYC 0
改为#define BSPCFG_ENABLE_TTYC 1
2) 在frdmk22f120m.h(xx\mqx\source\bsp\frdmk22f120m)中
#ifndef BSP_DEFAULT_IO_CHANNEL
#if BSPCFG_ENABLE_TTYB
#define BSP_DEFAULT_IO_CHANNEL “ttyb:” /* OSJTAG-COM polled mode */
#define BSP_DEFAULT_IO_CHANNEL_DEFINED
#else
#define BSP_DEFAULT_IO_CHANNEL NULL
#endif
#endif
改为:
#ifndef BSP_DEFAULT_IO_CHANNEL
#if BSPCFG_ENABLE_TTYC
#define BSP_DEFAULT_IO_CHANNEL “ttyc:” /* OSJTAG-COM polled mode */
#define BSP_DEFAULT_IO_CHANNEL_DEFINED
#else
#define BSP_DEFAULT_IO_CHANNEL NULL
#endif
#endif
之后重新编译bsp ,然后编译hello工程,这时printf输出使用的就是UART2.
UART2具体对应哪两个引脚呢?在init_gpio.c(xx\mqx\source\bsp\frdmk22f120m)的_bsp_serial_io_init()函数中
可以看到UART2对应的是PTD2和PTD3引脚。
如何改变波特率呢?还是在frdmk22f120m.h中
#ifndef BSPCFG_SCI2_BAUD_RATE
#define BSPCFG_SCI2_BAUD_RATE 115200
#endif
可以看到波特率为115200.