/******************************************************************************* * 函数名称 : uat_putchr * 描述 : 串口发送字符 * 输入 : 字符 * 输出 : 无 * 返回值 : 无 *****************************by sw笨笨*************************************/ void uat_putchr(char chr) //串口输出单字符函数 {//注:使用时候先更改串口号,函数调用时参数使用(ASCII)码或者('字符')。 USART_SendData(USART1, chr); //发送字符 while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET){} //等待发送结束 }
/******************************************************************************* * 函数名称 : uat_putstr * 描述 : 串口发送字符串 * 输入 : 字符串 * 输出 : 无 * 返回值 : 无 *****************************by sw笨笨*************************************/ void uat_putstr(char *str) //串口输出字符串函数 {//注:本函数必须依靠uat_putchr函数及其设置 while(*(str)!='\0')uat_putchr(*(str++)); //循环逐字输出 }
调试printf失败,所以参考各种例程,我自行编写了两个函数,最后精简到一共三行代码(函数名称除外)。是见到的最少的代码实现字符和字符串的串口输出了,也不需要任何其他库函数(stdio.h也不需要),也无其他文件关联。直接粘贴进main.c就可以用。因为字符串依赖前面的字符输出函数所以必须一起使用,但是串口号码的设置只更改字符输出的就行。给各位新手参考。 |