int fputc(int ch, FILE *f) { while ((USART3->SR & 0X40) == 0) // 循环发送,直到发送完毕 ; USART3->DR = (uint8_t)ch; return ch; }
时间: 2024-05-20 10:19:01 浏览: 48
utl_file.txt
3星 · 编辑精心推荐
这是一个将字符写入到文件流中的函数,具体实现需要结合上下文来理解。不过可以看出,这个函数使用了STM32中的USART3模块来发送字符,其中0X40是USART_SR寄存器中的标志位,表示发送数据寄存器为空。所以在发送数据之前,需要不断地检查该标志位,直到可以发送数据。发送数据时,使用的是USART_DR寄存器,并将要发送的字符强制转换成uint8_t类型。最后,返回发送的字符。
阅读全文