日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]一. IAR SWOIAR在編譯選項(xiàng)里自帶了printf via SWO的功能,首先來(lái)說(shuō)說(shuō)怎么把信息輸出到SWO口,一句話搞定。ITM_SendChar(ch);ITM這個(gè)東西其實(shí)嚴(yán)格來(lái)說(shuō)是Cortex-M提供的一個(gè)特性,而不是STM32。利用這個(gè)函數(shù)把信息輸出

一. IAR SWO

IAR在編譯選項(xiàng)里自帶了printf via SWO的功能,首先來(lái)說(shuō)說(shuō)怎么把信息輸出到SWO口,

一句話搞定。ITM_SendChar(ch);

ITM這個(gè)東西其實(shí)嚴(yán)格來(lái)說(shuō)是Cortex-M提供的一個(gè)特性,而不是STM32。

利用這個(gè)函數(shù)把信息輸出到SWO口

IAR里按照下面圖來(lái)設(shè)置

Target使用 SWO 的條件

硬件條件:你得把芯片的SWO腳接到調(diào)試口上,按JTAG接線的話,這個(gè)默認(rèn)已經(jīng)接上了.

代碼條件:你得把Printf的輸出函數(shù),替換成SWO輸出函數(shù),其實(shí)這個(gè)函數(shù)在CMSIS庫(kù)里已經(jīng)提供了,就在core_cm4.h里面,如下:

static__INLINEuint32_tITM_SendChar(uint32_tch){if((CoreDebug->DEMCR&CoreDebug_DEMCR_TRCENA_Msk)&&(ITM->TCR&ITM_TCR_ITMENA_Msk)&&(ITM->TER&(1UL<<0))){while(ITM->PORT[0].u32==0);ITM->PORT[0].u8=(uint8_t)ch;}return(ch);}

代碼中需要重定向

#include#includeintfputc(intc,FILE*stream){return(ITM_SendChar(c);}

二.keill





1.設(shè)置SW調(diào)試模式

2.使能SWO

3.打開(kāi)debug printf窗口


注意:有時(shí)打印消息緩慢,程序在while (ITM->PORT[0].u32 == 0);死循環(huán),有可能是jlink到問(wèn)題,需要重新連接下。

現(xiàn)在有替代SWO的RTT它可以不用SWO口,jlink推出了頗具特色的rtt(不要和壇里的rtt這個(gè)rtos混淆哦),real time terminal---實(shí)時(shí)終端,貼個(gè)segger對(duì)幾種交互

下載了官網(wǎng)的實(shí)現(xiàn)源碼,其中rtt目錄下的3個(gè)文件就是使用rtt的最基本實(shí)現(xiàn),SEGGER_RTT_Printf.c實(shí)現(xiàn)了其自定義風(fēng)格的類(lèi)printf,如果使用這種類(lèi)printf就不需要使用標(biāo)準(zhǔn)庫(kù)stdio,當(dāng)然rtt也提供了printf形式的重定向文件,在Syscalls文件中就是重定向stdio的幾個(gè)函數(shù)。整理如下:使用RTT必要步驟
rtt目錄下SEGGER_RTT.c、SEGGER_RTT.h和SEGGER_RTT_Conf.h必須使用
SEGGER_RTT_Printf.c實(shí)現(xiàn)了一個(gè)自定義的類(lèi)printf,SEGGER_RTT_printf就可以像printf一樣進(jìn)行打印
如果想在原來(lái)的工程中使用rtt并且原來(lái)的工程使用printf輸出,那么不需要SEGGER_RTT_printf,而是Syscalls目錄下的重定向文件,如果用的是mdk則是RTT_Syscalls_KEIL.c,只需要不包含原工程中的Retarget.c這個(gè)重定向文件即可
這種方法是改動(dòng)最小的,推薦用這種方法嘗試下RTT


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

8位單片機(jī)在嵌入式設(shè)計(jì)領(lǐng)域已經(jīng)成為半個(gè)多世紀(jì)以來(lái)的主流選擇。盡管嵌入式系統(tǒng)市場(chǎng)日益復(fù)雜,8位單片機(jī)依然不斷發(fā)展,積極應(yīng)對(duì)新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機(jī)系列,配備了先進(jìn)的獨(dú)立...

關(guān)鍵字: 單片機(jī) 嵌入式 CPU

在嵌入式系統(tǒng)開(kāi)發(fā)中,程序燒錄是連接軟件設(shè)計(jì)與硬件實(shí)現(xiàn)的關(guān)鍵環(huán)節(jié)。當(dāng)前主流的單片機(jī)燒錄技術(shù)已形成ICP(在電路編程)、ISP(在系統(tǒng)編程)、IAP(在應(yīng)用編程)三大技術(shù)體系,分別對(duì)應(yīng)開(kāi)發(fā)調(diào)試、量產(chǎn)燒錄、遠(yuǎn)程升級(jí)等不同場(chǎng)景。...

關(guān)鍵字: 單片機(jī) ISP ICP IAP 嵌入式系統(tǒng)開(kāi)發(fā)

在嵌入式系統(tǒng)開(kāi)發(fā)中,看門(mén)狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時(shí)機(jī)的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個(gè)維度,系統(tǒng)分析看門(mén)狗初始化的最佳實(shí)踐...

關(guān)鍵字: 單片機(jī) 看門(mén)狗 嵌入式系統(tǒng)

本文中,小編將對(duì)單片機(jī)予以介紹,如果你想對(duì)它的詳細(xì)情況有所認(rèn)識(shí),或者想要增進(jìn)對(duì)它的了解程度,不妨請(qǐng)看以下內(nèi)容哦。

關(guān)鍵字: 單片機(jī) 開(kāi)發(fā)板 Keil

隨著單片機(jī)系統(tǒng)越來(lái)越廣泛地應(yīng)用于消費(fèi)類(lèi)電子、醫(yī)療、工業(yè)自動(dòng)化、智能化儀器儀表、航空航天等各領(lǐng)域,單片機(jī)系統(tǒng)面臨著電磁干擾(EMI)日益嚴(yán)重的威脅。電磁兼容性(EMC)包含系統(tǒng)的發(fā)射和敏感度兩方面的問(wèn)題。

關(guān)鍵字: 單片機(jī) 電磁兼容

以下內(nèi)容中,小編將對(duì)單片機(jī)的相關(guān)內(nèi)容進(jìn)行著重介紹和闡述,希望本文能幫您增進(jìn)對(duì)單片機(jī)的了解,和小編一起來(lái)看看吧。

關(guān)鍵字: 單片機(jī) 復(fù)位電路

在這篇文章中,小編將為大家?guī)?lái)單片機(jī)的相關(guān)報(bào)道。如果你對(duì)本文即將要講解的內(nèi)容存在一定興趣,不妨繼續(xù)往下閱讀哦。

關(guān)鍵字: 單片機(jī) 異常復(fù)位

今天,小編將在這篇文章中為大家?guī)?lái)單片機(jī)的有關(guān)報(bào)道,通過(guò)閱讀這篇文章,大家可以對(duì)它具備清晰的認(rèn)識(shí),主要內(nèi)容如下。

關(guān)鍵字: 單片機(jī) 仿真器

單片機(jī)將是下述內(nèi)容的主要介紹對(duì)象,通過(guò)這篇文章,小編希望大家可以對(duì)它的相關(guān)情況以及信息有所認(rèn)識(shí)和了解,詳細(xì)內(nèi)容如下。

關(guān)鍵字: 單片機(jī) 中斷 boot

一直以來(lái),單片機(jī)都是大家的關(guān)注焦點(diǎn)之一。因此針對(duì)大家的興趣點(diǎn)所在,小編將為大家?guī)?lái)單片機(jī)的相關(guān)介紹,詳細(xì)內(nèi)容請(qǐng)看下文。

關(guān)鍵字: 單片機(jī) 數(shù)字信號(hào) 模擬信號(hào)
關(guān)閉