好戏开始了
通过SWV方式实现printf打印,硬件开发平台Nucleo-64 STM32F446
第一步
修正时钟大小
添加头文件与实现 _write()函数
在这里插入图片描述
// A code block
int _write(int file, char *ptr, int len)
{
/* Implement your write code here, this is used by puts and printf for example */
int i=0;
for(i=0 ; i<len ; i++)
ITM_SendChar((*ptr++));
return len;
}
点击debug,并添加swv窗口
知识来之不易。多谢以下链接的提供的参考
https://embeddeddiaries.com/alternative-debugging-prints-for-stm32-without-uart/
此参考列举三种方式
https://www.openstm32.org/forumthread2040
https://www.openstm32.org/forumthread2893
上面两个连接基本意思相同
https://blog.csdn.net/weixin_43879311/article/details/109963092
此链接非常感谢,提醒我时钟设置一定要和Cubemx配置的时钟一致才行,非常感谢这个连接的提醒。
https://www.codeinsideout.com/blog/stm32/swv/
此链接技术也是提供很不错的理解