• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

VisualGDB开发stm32

4bc5fb90e4f50460 2018-07-25 浏览量:782
使用VisualGDB开发stm32中Dynamic Analysis功能怎么使用?在HAL库中C和C++的标准输入输出函数如何重定向?

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 动态分析在寄存器界面右键单击寄存器把值发送到Dynamic Analysis窗口即可,printf 输出重定向在串口函数中加入下面代买即可

    //***********注意***********************
    //正常显示必须在  printf()  里加换行符   \n   或者在   printf()  的下面添加  fflush(stdout);  
    int _write(int fd char *ptr int len)
    {
        int DataIdx;
        for (DataIdx = 0; DataIdx < len; DataIdx++)
        {
            while (USART_GetFlagStatus(USART1 USART_FLAG_TXE) != SET);
            USART_SendData(USART1 *ptr++);
        }
        return len;
    }
    HAL库添加如下代码
    //***********注意***********************
    ////正常显示必须在  printf()  里加换行符   \n   或者在   printf()  的下面添加  fflush(stdout);  
    int _write(int fd char *ptr int len)
    {
        while (__HAL_UART_GET_FLAG(&UART1_Handler USART_FLAG_TXE) != SET); //等待发送结束
        HAL_UART_Transmit(&UART1_Handler (uint8_t*)ptr len 1000); //发送接收到的数据
        return len;
    }

    • 发布于 2018-07-28
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:0

相关问题

问题达人换一批

VisualGDB开发stm32