baby20060701
baby20060701
This guy hasn't written anything yet

注册于 9 months ago

回答
2
文章
0
关注者
0

baby20060701 对问题发布了答案

8 months ago

W806能否us级延迟?

如有有空闲的定时器,可以用它来做微秒延时,精度极高,看W806寄存器手册timer模块支持,你要有兴趣写一个函数示例(我以后也会用到hehe)

baby20060701 发表了评论

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

WM_SDK_W806_v0.6.0_Patch2.zip@isme 抽空试试我改的这个,就是按前面我发现的那几项修改的,再测试几次吧。

baby20060701 发表了评论

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

另外我觉得那个&& ((isrmasks & UART_INTM_TL) == RESET)是没有作用的,因为屏蔽位UART_INTM_TL是硬件的屏蔽位,如果前面没有__HAL_UART_ENABL

baby20060701 发表了评论

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

@isme 找到问题的根源了。在HAL_UART_IRQHandler函数中的第二个if语句:if (((isrflags & UART_INTS_TL) != RESET) && ((isrmask

baby20060701 发表了评论

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

已经可以工作了,万分感谢!!!只是还有一个小问题,每次系统复位后第一次用这个函数输出时,会把第一个字符输出两遍,能解决的话就完美了。

baby20060701 对问题发布了答案

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

@isme 帮忙看一下,这到底是个bug,还是我应用的姿势有问题,谢谢

baby20060701 发表了评论

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

@ZYQ 在HAL_UART_Transmit_IT中有一点看不明白了do {if ((huart->Instance->FIFOS & UART_FIFOS_TFC) == UA

baby20060701 发表了评论

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

跟踪了以下,中断进入了HAL_UART_IRQHandler函数,然后没有调用UART_Transmit_IT,而是调用了UART_EndTransmit_IT,也就是在下面一段中打印了3if (((

baby20060701 发表了评论

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

使用 HAL_UART_Transmit 没有问题。HAL_UART_Transmit 在发送过程中一直在等待发送完成,传送数据量大的时候,这个等待时间有点长。我想让它自己发送,然后发送完成告诉我一声

baby20060701 发表了评论

9 months ago

HAL_UART_Transmit_IT()只打印第一个字符?

在回调函数中添加了void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart){printf("***1***\n");}但是在监

发布
问题