STM32 如何重写fputs函数 5

我不喜欢使用库函数,我想自己操作寄存器,重新定向串口,使用printf函数,输出我想要的。求如何改写底层驱动函数intfputc(intch,FILE*fp);... 我不喜欢使用库函数,我想自己操作寄存器,重新定向串口,使用printf函数,输出我想要的。 求如何改写底层驱动函数int fputc(int ch,FILE *fp); 展开
 我来答
百度网友b12a2e039
2014-12-27 · TA获得超过1533个赞
知道小有建树答主
回答量:819
采纳率:0%
帮助的人:689万
展开全部
重定向与你使用库函数或是寄存器无关,下面的库函数的重定向方法,把库函数改成对应寄存器操作即可
int fputc( int ch, FILE *f )
{
USART_SendData(USART1,(u8) ch );
while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);
return ch;
}
追问
2014-12-27 20:44 int fputc(int ch,FILE *fp)
{
USART1->DR=ch;
while(!(USART1->SR & (1<<7))) ; //等待上一次发送完成
return ch;

}

这样可否是正确的改写,是否这样该写后,我就可以使用printf 打印到串口。或者用你的库函数,设置后,我就可以printf 到串口了??????
查晓筠0i5
2014-12-27 · TA获得超过2752个赞
知道大有可为答主
回答量:2.1万
采纳率:1%
帮助的人:4950万
展开全部
关注这个问题!
追问
int fputc(int ch,FILE *fp)
{
USART1->DR=ch;
while(!(USART1->SR & (1<<7))) ; //等待上一次发送完成
return ch;

}

这样可否是正确的改写,是否这样该写后,我就可以使用printf 打印到串口。或者用你的库函数,设置后,我就可以printf 到串口了??????
追答
我也想学习
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式