www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式大雜燴
[導(dǎo)讀]前言串口調(diào)試是單片機(jī)開發(fā)過程必不可少的一個(gè)功能,一般是使用一個(gè)UART-TTL的串口模塊來實(shí)現(xiàn)串口的功能,其實(shí)下載調(diào)試使用的Jlink仿真器也可以實(shí)現(xiàn)串口調(diào)試的功能,本篇文章將介紹如何使用Jlink實(shí)現(xiàn)虛擬串口功能。ITM簡介ITM是ARMCortex-M系列內(nèi)核芯片中的一種全新...

前言

串口調(diào)試是單片機(jī)開發(fā)過程必不可少的一個(gè)功能,一般是使用一個(gè)UART-TTL的串口模塊來實(shí)現(xiàn)串口的功能,其實(shí)下載調(diào)試使用的Jlink仿真器也可以實(shí)現(xiàn)串口調(diào)試的功能,本篇文章將介紹如何使用Jlink實(shí)現(xiàn)虛擬串口功能。

ITM簡介

ITM是ARM Cortex-M系列內(nèi)核芯片中的一種全新的調(diào)試功能,可以方便的通過調(diào)試器來實(shí)現(xiàn)printf調(diào)試功能。來自STM32中文參考手冊的介紹:

ITM ( 指令跟蹤微單元 instrumentation trace macrocell):ITM是一應(yīng)用驅(qū)動(dòng)的跟蹤源,它支持printf類的調(diào)試手段來跟蹤操作系統(tǒng)(OS)和應(yīng)用事件,并發(fā)布判定的系統(tǒng)信息。ITM以包的形式發(fā)布跟蹤信息,它由以下部分組成:

  • 軟件跟蹤:軟件可以通過直接寫ITM激發(fā)寄存器來發(fā)布包信息。

  • 硬件跟蹤:ITM會(huì)發(fā)布由DWT產(chǎn)生的信息包。

  • 時(shí)間戳:時(shí)間戳被發(fā)布到相應(yīng)的包上。ITM包含一個(gè)21位的計(jì)數(shù)器以產(chǎn)生時(shí)間戳。Cortex-M3的時(shí)鐘或串行線觀測器(Serial Wire Viewer)的位時(shí)鐘率給計(jì)數(shù)器提供時(shí)鐘。由ITM發(fā)送的信息包輸出到TPIU(Trace Port Interface Unit),TPIU再添加一些額外的包(參考TPIU),然后輸出完整的包序列給調(diào)試器。用戶在設(shè)置或使用ITM之前,必需先使能異常調(diào)試和監(jiān)視控制寄存器(Debug Exception and Monitor Control Register)的TRCEN位。

1.將ITM端口寄存器定義添加到源代碼中

在程序開始處添加以下代碼:

  1. #define ITM_Port8(n) ? ?(*((volatile unsigned char *)(0xE0000000 4*n)))

  2. #define ITM_Port16(n) ? (*((volatile unsigned short*)(0xE0000000 4*n)))

  3. #define ITM_Port32(n) ? (*((volatile unsigned long *)(0xE0000000 4*n)))

  4. #define DEMCR ? ? ? ? ? (*((volatile unsigned long *)(0xE000EDFC)))

  5. #define TRCENA ? ? ? ? ?0x01000000

2.重定向printf函數(shù)

添加重定向printf函數(shù)代碼:

  1. struct __FILE { int handle; /* Add whatever you need here */ };

  2. FILE __stdout;

  3. FILE __stdin;


  4. int fputc(int ch, FILE *f) {

  5. ?if (DEMCR
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

深圳2022年1月12日 /美通社/ -- 2022年1月12日,楓笛正式發(fā)布了Blink900迷你雙通道無線麥克風(fēng)系統(tǒng)。該產(chǎn)品擁有卓越的穩(wěn)定性及兼容性,通過配件可連接相機(jī)、手機(jī)、平板、電腦,能輕松駕馭Vlog、直播、訪...

關(guān)鍵字: link 雙通道 無線麥克風(fēng)

(全球TMT2022年1月13日訊)2022年1月12日,楓笛正式發(fā)布了Blink900迷你雙通道無線麥克風(fēng)系統(tǒng)。該產(chǎn)品擁有卓越的穩(wěn)定性及兼容性,通過配件可連接相機(jī)、手機(jī)、平板、電腦,能輕松駕馭Vlog、直播、訪談等場...

關(guān)鍵字: link 雙通道 無線麥克風(fēng)

(全球TMT2021年12月16日訊)12月15日,由中國電信主辦,華潤數(shù)科承辦的“首屆中央企業(yè)數(shù)字化轉(zhuǎn)型峰會(huì) -- 5G+工業(yè)互聯(lián)網(wǎng)融合創(chuàng)新應(yīng)用分論壇”在深圳市中國華潤大廈落幕。期間,華潤數(shù)科宣布其旗下工業(yè)互聯(lián)網(wǎng)業(yè)務(wù)...

關(guān)鍵字: link 工業(yè)互聯(lián)網(wǎng)

Jlink使用技巧之合并燒寫文件前言IAP(In-application-programming),即在應(yīng)用中編程。當(dāng)產(chǎn)品發(fā)布之后,可以通過網(wǎng)絡(luò)方便的升級(jí)固件程序,而不需要拆機(jī)下載程序。IAP系統(tǒng)的固件一般由兩部分組成,...

關(guān)鍵字: link 燒寫

一、Starlink星鏈計(jì)劃是什么?1.目標(biāo):4.2萬顆衛(wèi)星2.性能測試二、5G通信性能1.?通信速度2.通信時(shí)延3.?速度快的主要原因4.系統(tǒng)容量三、Starlink與5G的對比1.覆蓋范圍2.通信速度四、Starli...

關(guān)鍵字: link 馬斯克

繼上月ST(意法半導(dǎo)體)、賽靈思、Molex、安森美、博通等芯片大廠發(fā)布漲價(jià)通知后,近日瑞薩電子和自連科技(Alinket)也都陸續(xù)調(diào)漲芯片報(bào)價(jià)。瑞薩電子:2022年1月1日起調(diào)漲10月15日,瑞薩電子向客戶發(fā)送了一份漲...

關(guān)鍵字: link 安森美 ST

Jlink使用技巧系列教程前言大多數(shù)玩單片機(jī)的人都知道Jlink可以燒寫Hex文件,作為ARM仿真調(diào)試器,但是知道能燒寫SPIFlash的人應(yīng)該不多,本篇文章將介紹如何使用JLink來燒寫或者讀取SPIFlash存儲(chǔ)器,...

關(guān)鍵字: link 讀寫

前言Jlink可以將Hex文件下載到單片機(jī)內(nèi),也可以將未加密單片機(jī)內(nèi)部的程序文件讀出。本篇文章介紹,如何使用JFlash來讀取單片機(jī)的程序,學(xué)習(xí)單片機(jī)程序文件的讀取,不是為了破解別人的程序,而是學(xué)習(xí)破解的原理,從而更好保...

關(guān)鍵字: link STM32

Jlink使用技巧系列教程前言大多數(shù)玩單片機(jī)的人都知道Jlink可以燒寫Hex文件,作為ARM仿真調(diào)試器,但是知道能燒寫SPIFlash的人應(yīng)該不多,本篇文章將介紹如何使用JLink來燒寫或者讀取SPIFlash存儲(chǔ)器,...

關(guān)鍵字: link 讀寫

關(guān)注「嵌入式大雜燴」,選擇「星標(biāo)公眾號(hào)」一起進(jìn)步!來源|?電子電路開發(fā)學(xué)習(xí)前言分享一篇之前寫的文章。趁著前段時(shí)間兩家PCB廠家打價(jià)格戰(zhàn),一天之內(nèi),多次降價(jià),看著真是熱鬧。捷配降到最低3元一款,而嘉立創(chuàng)降到最低5元一款,都...

關(guān)鍵字: link 調(diào)試器
關(guān)閉