zoukankan      html  css  js  c++  java
  • Keil ARM-CM3 printf输出调试信息到Debug (printf) Viewer

    参考资料:http://www.keil.com/support/man/docs/jlink/jlink_trace_itm_viewer.htm

    1.Target Options -> Debug -> Settings(JLink) -> Debug里ort选择SW模式

    2.在Target Options -> Debug -> Settings(JLink) -> Trace里选择Enable

    3.Core freq设为120MHz(以LPC1788为例)

    4. 设置ITM Port的值如下所示

    5.在工程中添加.c文件如下

    #include "stdio.h"
    
    #define ITM_Port8(n)    (*((volatile unsigned char *)(0xE0000000+4*n)))
    #define ITM_Port16(n)   (*((volatile unsigned short*)(0xE0000000+4*n)))
    #define ITM_Port32(n)   (*((volatile unsigned long *)(0xE0000000+4*n)))
    
    #define DEMCR           (*((volatile unsigned long *)(0xE000EDFC)))
    #define TRCENA          0x01000000
    
    struct __FILE { int handle; /* Add whatever you need here */ };
    FILE __stdout;
    FILE __stdin;
    
    int fputc(int ch, FILE *f) {
      if (DEMCR & TRCENA) {
        while (ITM_Port32(0) == 0);
        ITM_Port8(0) = ch;
      }
      return(ch);
    }

    6.用Debug模式运行工程,Debug (printf) Viewer中即可以查看printf的输出信息。

  • 相关阅读:
    冲刺第一天
    就用户界面和体验评价搜狗输入法
    学习进度条10
    典型用户及用户场景描述
    学习进度条09
    冲刺阶段第八天
    对石家庄铁道大学网站的UI分析
    学习进度条(第八周)
    冲刺阶段第七天
    冲刺阶段第六天
  • 原文地址:https://www.cnblogs.com/GBRgbr/p/4450556.html
Copyright © 2011-2022 走看看