這篇文章將為大家詳細講解有關IAR ITM機制中打印調試信息的途徑有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
在滕州等地區,都構建了全面的區域性戰略布局,加強發展的系統性、市場前瞻性、產品創新能力,以專注、極致的服務理念,為客戶提供成都網站設計、成都網站制作、外貿網站建設 網站設計制作定制制作,公司網站建設,企業網站建設,成都品牌網站建設,網絡營銷推廣,成都外貿網站制作,滕州網站建設費用合理。
打印調試信息幾種途徑:
1.串口打印:
將fputc映射到UART,通過USB-TLL轉接板打印調試信息。
STM32F103官方提供的代碼:
/** * @brief Retargets the C library printf function to the USART. * @param None * @retval None */ PUTCHAR_PROTOTYPE { /* Place your implementation of fputc here */ /* e.g. write a character to the USART */ USART_SendData(EVAL_COM1, (uint8_t) ch); /* Loop until the end of transmission */ while (USART_GetFlagStatus(EVAL_COM1, USART_FLAG_TC) == RESET) { } return ch; }
1.通過Jlink仿真器打印:
cortex-M3內核支持ITM機制,可以通過Jlink打印調試信息。 ITM相關函數在core_cm3.h中有定義,需要將fputc重新映射到ITM,實現printf。
注意:
ITM需要使用SWD的仿真口(且需要連接SWO),而不是常用的Jlink仿真口。
需要激活ITM的Port0端口來捕獲信息
時鐘需要配置和開發板的時鐘一致
SWD接口如下:
fputc映射代碼如下:
/** * @brief Retargets the C library printf function to the USART. * @param None * @retval None */ PUTCHAR_PROTOTYPE { #ifdef DEBUG_USART1 /* Place your implementation of fputc here */ /* e.g. write a character to the USART */ USART_SendData(USART1, (uint8_t) ch); /* Loop until the end of transmission */ while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET) { __NOP(); } return ch; #endif #ifdef DEBUG_ITM /* Place your implementation of fputc here */ /* e.g. write a character to the ITM */ ITM_SendChar((uint32_t)ch); return ch; #endif }
IAR配置如下:
使用SWD
仿真:
將數據邏輯斷點打在randomvalue變量處,使用Timeline窗口查看randomvalue。 打印隨機數變量 randomvalue到Terminal IO窗口,
關于“IAR ITM機制中打印調試信息的途徑有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
文章題目:IARITM機制中打印調試信息的途徑有哪些
文章鏈接:http://vcdvsql.cn/article44/pdhshe.html
成都網站建設公司_創新互聯,為您提供虛擬主機、搜索引擎優化、品牌網站設計、網站排名、外貿網站建設、面包屑導航
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯