0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用GPT監(jiān)控變量

瑞薩MCU小百科 ? 來源:瑞薩MCU小百科 ? 作者:瑞薩MCU小百科 ? 2024-01-04 12:21 ? 次閱讀

在項(xiàng)目調(diào)試過程中,需要監(jiān)控變量通常采用ICS(In Circuit Scope)和DA兩種方法。使用ICS會(huì)占用MCU的資源(UART)以及增加硬件的成本(ICS硬件板);如果MCU的DA引腳已被其他功能占用,當(dāng)這兩種方法都不是很好的選擇的情況下,我們也可以考慮使用GPT來監(jiān)控變量。這里給大家介紹一下如何使用GPT監(jiān)控變量。

一、原理說明

用GPT來模擬DA的功能,例如需要監(jiān)控一個(gè)變量t1,我們把t1通過線性計(jì)算變換為0~1023之間的值,假設(shè)MCU電源為3.3V,當(dāng)t1為0時(shí)輸出0V,當(dāng)t1為1023時(shí)輸出3.3V,其他值成線性關(guān)系。

二、硬件電路

將需要監(jiān)控變量的GPT輸出引腳(GPT)連接如下RC電路,T1為測試點(diǎn),如下圖所示。

aa598dae-aab6-11ee-8b88-92fbcf53809c.png

硬件電路

三、軟件配置

以下介紹如何在項(xiàng)目中配置GPT來實(shí)現(xiàn)該功能。這里以創(chuàng)建新工程為例,也可以把以下GPT的配置直接加入到已有工程中(從步驟7開始)。

1運(yùn)行e2 studio,選擇“文件”→“新建”→“C/C++ Project”,如圖1。

aa6cfeac-aab6-11ee-8b88-92fbcf53809c.png

圖1 創(chuàng)建新項(xiàng)目步驟一

e2 studio(瑞薩IDE)

2選擇“Renesas RX”和“Renesas CC-RX C/C++ Executable Project”,點(diǎn)擊“下一步”,如圖2。

aa85827e-aab6-11ee-8b88-92fbcf53809c.png

圖2 創(chuàng)建新項(xiàng)目步驟二

3設(shè)置項(xiàng)目目錄,輸入項(xiàng)目名稱,點(diǎn)擊“下一步”,如圖3。

aa9ea722-aab6-11ee-8b88-92fbcf53809c.png

圖3 創(chuàng)建新項(xiàng)目步驟三

4選擇Toolchain版本,選擇MCU型號、“Endian”和仿真器,點(diǎn)擊“下一步”,如圖4。

aabc30da-aab6-11ee-8b88-92fbcf53809c.png

圖4 創(chuàng)建新項(xiàng)目步驟四

5勾選“Use Smart Configurator”,點(diǎn)擊“完成”,如圖5。

aae0c67a-aab6-11ee-8b88-92fbcf53809c.png

圖5 創(chuàng)建新項(xiàng)目步驟五

6創(chuàng)建完成的程序結(jié)構(gòu)如圖6。

aaffbd00-aab6-11ee-8b88-92fbcf53809c.png

圖6 程序結(jié)構(gòu)圖

7點(diǎn)擊“Components” → “Add component”,選擇“General PWM Timer”,Work mode選擇“Saw-wave PWM mode 1”,Resource選擇“GPT0”(這里以GPT0為例,也可以選擇其他GPT),如圖7。

ab127a4e-aab6-11ee-8b88-92fbcf53809c.png

圖7 添加GPT0

8配置GPT0,如圖8~11。

“Timer operation period” 設(shè)為1024 count,如圖8;

“Count direction” 設(shè)為 “Up-counting”,如圖8;

“GTCCRA operation” 的Compare match后的值可以設(shè)為0~1023的任意值,這里設(shè)為“512”,如圖9;

“GTCIV0”的優(yōu)先級可以根據(jù)項(xiàng)目工程自定,這里設(shè)為“15”,如圖11。

ab2e3be4-aab6-11ee-8b88-92fbcf53809c.png

圖8 配置GPT0(1)

ab4f172e-aab6-11ee-8b88-92fbcf53809c.png

圖9 配置GPT0(2)

ab66eeb2-aab6-11ee-8b88-92fbcf53809c.png

圖10 配置GPT0(3)

ab787600-aab6-11ee-8b88-92fbcf53809c.png

圖11 配置GPT0(4)

9因?yàn)樯厦媸褂昧恕癎TCIV0”中斷,點(diǎn)擊“Interrupts”,把252改成“GTCIV0”后其狀態(tài)會(huì)變更為“Used”,如圖12。

ab925930-aab6-11ee-8b88-92fbcf53809c.png

圖12 設(shè)置中斷

10點(diǎn)擊“Generate code”后將會(huì)生成GPT0的代碼,如圖13。

abb29a6a-aab6-11ee-8b88-92fbcf53809c.png

圖13 生成GPT0的代碼

11在main( )中添加如下代碼啟動(dòng)GPT0,如圖14。

abd343e6-aab6-11ee-8b88-92fbcf53809c.png

圖14 添加GPT0啟動(dòng)代碼

12在GTCIV0中斷中將監(jiān)控變量的值設(shè)置到比較匹配寄存器GTCCRA中,如圖15。

abec0458-aab6-11ee-8b88-92fbcf53809c.png

圖15 設(shè)置GTCCRA

13以下為假設(shè)監(jiān)控變量的值(即GTCCRA的值)分別為256、512、768時(shí)輸出的波形,如圖16、17、18。

舉例說明如何算出監(jiān)控變量的值:從圖16中我們可以看出輸出電壓為0.83V,從0.83V*1023/3.3V = 257.3反推出監(jiān)控變量的值為257.3(因?yàn)?a href="http://www.wenjunhu.com/v/tag/577/" target="_blank">示波器測量電壓有誤差,所以反推出的值有誤差)。

ac080590-aab6-11ee-8b88-92fbcf53809c.png

圖16 GTCCRA = 256

ac1b114e-aab6-11ee-8b88-92fbcf53809c.png

圖17 GTCCRA = 512

ac2b4cd0-aab6-11ee-8b88-92fbcf53809c.png

圖18 GTCCRA = 768

從圖16、17、18的波形可以看出來,輸出電壓會(huì)根據(jù)GTCCRA值的變化而變化,從而我們可以反推出監(jiān)控變量的實(shí)時(shí)值。

通過以上硬件電路和軟件配置,我們就實(shí)現(xiàn)了用GPT的比較匹配功能來達(dá)到監(jiān)控變量的目的。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17194

    瀏覽量

    351864
  • 瑞薩
    +關(guān)注

    關(guān)注

    35

    文章

    22309

    瀏覽量

    86494
  • 引腳
    +關(guān)注

    關(guān)注

    16

    文章

    1206

    瀏覽量

    50711
  • 硬件電路
    +關(guān)注

    關(guān)注

    39

    文章

    244

    瀏覽量

    29261
  • GPT
    GPT
    +關(guān)注

    關(guān)注

    0

    文章

    354

    瀏覽量

    15445

原文標(biāo)題:如何使用GPT監(jiān)控變量

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    圖紙模板中的文本變量

    “ ?文本變量和系統(tǒng)自帶的內(nèi)置變量,可以幫助工程師靈活、高效地配置標(biāo)題欄中的信息,而不用擔(dān)心模板中的文字對象被意外修改。 ? ” 文本變量的語法 文本變量以?${VARIABLENAM
    的頭像 發(fā)表于 11-13 18:21 ?199次閱讀
    圖紙模板中的文本<b class='flag-5'>變量</b>

    OpenAI 推出 GPT-4o mini 取代GPT 3.5 性能超越GPT 4 而且更快 API KEY更便宜

    OpenAI推出了GPT-4o mini模型,用來取代GPT-3.5.這是目前市場上最具成本效益的小模型。 ? 該模型在MMLU上得分為82%, 在LMSYS排行榜上的聊天偏好測試中表現(xiàn)優(yōu)于
    的頭像 發(fā)表于 07-21 10:20 ?1102次閱讀
    OpenAI 推出 <b class='flag-5'>GPT</b>-4o mini 取代<b class='flag-5'>GPT</b> 3.5 性能超越<b class='flag-5'>GPT</b> 4 而且更快 API KEY更便宜

    GPT的定義和演進(jìn)歷程

    GPT,全稱Generative Pretrained Transformer,是OpenAI公司在自然語言處理(NLP)領(lǐng)域的一項(xiàng)重大創(chuàng)新。這一模型不僅推動(dòng)了AI技術(shù)的邊界,還深刻影響了我們與機(jī)器交互的方式。本文將從GPT的定義、來源、演進(jìn)歷程以及其在各個(gè)領(lǐng)域的應(yīng)用和影
    的頭像 發(fā)表于 07-10 10:41 ?1272次閱讀

    寶塔面板Docker一鍵安裝:部署GPTAcademic,開發(fā)私有GPT學(xué)術(shù)優(yōu)化工具

    使用寶塔Docker-compose,5分鐘內(nèi)在海外服務(wù)器上搭建gpt_academic。這篇文章講解如何使用寶塔面板的Docker服務(wù)搭建GPT 學(xué)術(shù)優(yōu)化 (GPT Academic)。 ? 在
    的頭像 發(fā)表于 07-02 11:58 ?2678次閱讀
    寶塔面板Docker一鍵安裝:部署GPTAcademic,開發(fā)私有<b class='flag-5'>GPT</b>學(xué)術(shù)優(yōu)化工具

    開發(fā)者如何調(diào)用OpenAI的GPT-4o API以及價(jià)格詳情指南

    ?目前,OpenAI新模型GPT-4o和GPT-4 Turbo的價(jià)格如下: GPT-4o 對比 GPT-4 Turbo GPT-4o 擁有與
    的頭像 發(fā)表于 05-29 16:00 ?1.2w次閱讀
    開發(fā)者如何調(diào)用OpenAI的<b class='flag-5'>GPT</b>-4o API以及價(jià)格詳情指南

    OpenAI CEO: GPT-4o and GPT-5引領(lǐng)未來12個(gè)月編程領(lǐng)域,GPT-5更具潛力

    據(jù)報(bào)道,OpenAI首席執(zhí)行官阿萊夫·阿爾特曼在接受Redpoint風(fēng)投公司LoganBartlett的專訪中,透露了最近發(fā)布的GPT-40以及即將面世的GPT-5。
    的頭像 發(fā)表于 05-17 16:25 ?582次閱讀

    【Longan Pi 3H 開發(fā)板試用連載體驗(yàn)】給ChatGPT裝上眼睛,并且還可以語音對話:8,GPT接入,功能整合完成項(xiàng)目

    GPT接入 Github上有一個(gè)非常有名的開源項(xiàng)目,曾經(jīng)還引來了不少爭議,這個(gè)項(xiàng)目叫gpt4free。實(shí)際原理與poe wrapper相似,都是利用網(wǎng)絡(luò)請求的方法從各個(gè)第三方平臺(tái)的gpt接口來訪問
    發(fā)表于 04-18 12:43

    如何在IAR IDE中調(diào)試基于Cortex-R52的RZ/T&amp;N MPU的變量實(shí)時(shí)監(jiān)控

    變量實(shí)時(shí)監(jiān)視功能是指IAR Embedded Workbench集成開發(fā)環(huán)境中提供的實(shí)時(shí)變量監(jiān)控功能。
    的頭像 發(fā)表于 03-27 13:35 ?2619次閱讀
    如何在IAR IDE中調(diào)試基于Cortex-R52的RZ/T&amp;N MPU的<b class='flag-5'>變量</b>實(shí)時(shí)<b class='flag-5'>監(jiān)控</b>?

    C語言變量應(yīng)用詳解

    變量其實(shí)只不過是程序可操作的存儲(chǔ)區(qū)的名稱。C 中每個(gè)變量都有特定的類型,類型決定了變量存儲(chǔ)的大小和布局,該范圍內(nèi)的值都可以存儲(chǔ)在內(nèi)存中,運(yùn)算符可應(yīng)用于變量上。
    發(fā)表于 03-18 11:18 ?439次閱讀
    C語言<b class='flag-5'>變量</b>應(yīng)用詳解

    TC275如何設(shè)定GPT模塊分頻?

    在illd里沒找到相關(guān)函數(shù),請問各位高手如何設(shè)定GPT模塊分頻,謝謝。
    發(fā)表于 02-22 07:37

    使用TC21x的GPT實(shí)現(xiàn)1m計(jì)時(shí)器執(zhí)行定時(shí)任務(wù),怎么配置GTM和GPT?

    專家們好,我想使用TC21x的GPT實(shí)現(xiàn)1m計(jì)時(shí)器執(zhí)行定時(shí)任務(wù),不知道怎么配置GTM和GPT?
    發(fā)表于 02-06 06:47

    請問TC234芯片中的CCU6 , GTM, GPT12中的pwm區(qū)別是什么?

    TC234芯片中的CCU6 , GTM(TIM, TOM), GPT12中pwm捕獲與產(chǎn)生的PWM有什么區(qū)別?什么時(shí)候用CCU6, GTM或GPT12的方式捕獲Pwm?什么時(shí)候用CCU6, GTM或GPT12的方式產(chǎn)生Pwm?
    發(fā)表于 02-05 06:38

    GPT EVAL_BDPS_DRIVER可以使用GPT12 IP或GTM IP來實(shí)現(xiàn)連續(xù)定時(shí)器和單次定時(shí)器嗎?

    GPT EVAL_BDPS_DRIVER可以使用GPT12 IP或GTM IP來實(shí)現(xiàn)連續(xù)定時(shí)器和單次定時(shí)器? 是嗎?
    發(fā)表于 01-22 08:16

    求助,如何在運(yùn)行過程中監(jiān)控變量實(shí)時(shí)的值?

    如何在運(yùn)行過程中監(jiān)控變量實(shí)時(shí)的值? 在我點(diǎn)擊 " resume " 之前,可以看到這個(gè)值。 我點(diǎn)擊 " resume " 后,看不到這個(gè)值。
    發(fā)表于 01-22 07:39

    OpenAI推出GPT商店

    近日,人工智能領(lǐng)域的領(lǐng)軍企業(yè)OpenAI正式推出了其GPT商店和ChatGPT Team服務(wù)。這一創(chuàng)新舉措旨在為用戶提供更加便捷、個(gè)性化的AI助手服務(wù)。
    的頭像 發(fā)表于 01-18 15:15 ?694次閱讀