0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用GPT监控变量

瑞萨嵌入式小百科 来源:瑞萨MCU小百科 作者:瑞萨MCU小百科 2024-01-04 12:21 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在项目调试过程中,需要监控变量通常采用ICS(In Circuit Scope)和DA两种方法。使用ICS会占用MCU的资源(UART)以及增加硬件的成本(ICS硬件板);如果MCU的DA引脚已被其他功能占用,当这两种方法都不是很好的选择的情况下,我们也可以考虑使用GPT来监控变量。这里给大家介绍一下如何使用GPT监控变量。

一、原理说明

用GPT来模拟DA的功能,例如需要监控一个变量t1,我们把t1通过线性计算变换为0~1023之间的值,假设MCU电源为3.3V,当t1为0时输出0V,当t1为1023时输出3.3V,其他值成线性关系。

二、硬件电路

将需要监控变量的GPT输出引脚(GPT)连接如下RC电路,T1为测试点,如下图所示。

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

硬件电路

三、软件配置

以下介绍如何在项目中配置GPT来实现该功能。这里以创建新工程为例,也可以把以下GPT的配置直接加入到已有工程中(从步骤7开始)。

1运行e2 studio,选择“文件”→“新建”→“C/C++ Project”,如图1。

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

图1 创建新项目步骤一

e2 studio(瑞萨IDE)

2选择“Renesas RX”和“Renesas CC-RX C/C++ Executable Project”,点击“下一步”,如图2。

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

图2 创建新项目步骤二

3设置项目目录,输入项目名称,点击“下一步”,如图3。

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

图3 创建新项目步骤三

4选择Toolchain版本,选择MCU型号、“Endian”和仿真器,点击“下一步”,如图4。

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

图4 创建新项目步骤四

5勾选“Use Smart Configurator”,点击“完成”,如图5。

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

图5 创建新项目步骤五

6创建完成的程序结构如图6。

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

图6 程序结构图

7点击“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” 设为1024 count,如图8;

“Count direction” 设为 “Up-counting”,如图8;

“GTCCRA operation” 的Compare match后的值可以设为0~1023的任意值,这里设为“512”,如图9;

“GTCIV0”的优先级可以根据项目工程自定,这里设为“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因为上面使用了“GTCIV0”中断,点击“Interrupts”,把252改成“GTCIV0”后其状态会变更为“Used”,如图12。

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

图12 设置中断

10点击“Generate code”后将会生成GPT0的代码,如图13。

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

图13 生成GPT0的代码

11在main( )中添加如下代码启动GPT0,如图14。

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

图14 添加GPT0启动代码

12在GTCIV0中断中将监控变量的值设置到比较匹配寄存器GTCCRA中,如图15。

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

图15 设置GTCCRA

13以下为假设监控变量的值(即GTCCRA的值)分别为256、512、768时输出的波形,如图16、17、18。

举例说明如何算出监控变量的值:从图16中我们可以看出输出电压为0.83V,从0.83V*1023/3.3V = 257.3反推出监控变量的值为257.3(因为示波器测量电压有误差,所以反推出的值有误差)。

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的波形可以看出来,输出电压会根据GTCCRA值的变化而变化,从而我们可以反推出监控变量的实时值。

通过以上硬件电路和软件配置,我们就实现了用GPT的比较匹配功能来达到监控变量的目的。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    147

    文章

    18613

    浏览量

    387200
  • 瑞萨
    +关注

    关注

    36

    文章

    22431

    浏览量

    89763
  • 引脚
    +关注

    关注

    16

    文章

    2092

    浏览量

    55148
  • 硬件电路
    +关注

    关注

    39

    文章

    263

    浏览量

    30143
  • GPT
    GPT
    +关注

    关注

    0

    文章

    368

    浏览量

    16715
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    GPT-5震撼发布:AI领域的重大飞跃

    电子发烧友网报道(文/李弯弯)2025年8月8日凌晨1点,OpenAI以一场长达1小时的线上发布会正式推出GPT-5。这场被业界称为“AI进化分水岭”的发布,终结了长达两年的技术猜测,更以多维度性能
    的头像 发表于 08-09 07:44 9874次阅读
    <b class='flag-5'>GPT</b>-5震撼发布:AI领域的重大飞跃

    常用变量的介绍

    extern:用在全局变量上表示该变量在其他文件中已经定义;用在函数上作用同全局变量; static:用在全局变量上,和非静态全局变量相比,
    发表于 11-21 07:05

    GPT-5.1发布 OpenAI开始拼情商

    OpenAI正式上线了 GPT-5.1 Instant 以及 GPT-5.1 Thinking 模型;有网友实测发现OpenAI新发布的GPT-5.1大模型的指令执行能力更强了,可以更可靠地回答用户
    的头像 发表于 11-13 15:49 544次阅读

    PLC中Static和Temp变量的区别

    大家好,收到粉丝投稿,让博主讲下Static变量和Temp变量的区别,新入行的兄弟可能会对这两个概念不太能理解。
    的头像 发表于 09-24 14:51 928次阅读
    PLC中Static和Temp<b class='flag-5'>变量</b>的区别

    【RA4M2-SENSOR】3、使用GPT定时器-PWM输出

    GPT介绍 通用 PWM 定时器(GPT,General PWM Timer)是 RA MCU 的其中一种 32/16 位的定时器外设。 在 GPT 当中,可分为 GPT32 和
    发表于 09-01 15:20

    OpenAI或在周五凌晨发布GPT-5 OpenAI以低价向美国政府提供ChatGPT

    外界一直在期待的OpenAI新一代大语言模型GPT-5或将发布。据外媒的报道,GPT-5很可能在周五凌晨发布。这是OpenAI在2023年的3月份推出自然语言处理模型GPT-4之后,两年多时候后最受
    的头像 发表于 08-07 14:13 8824次阅读

    组态可视化平台如何监控欧姆龙PLC的数据变量

    某电子制造企业需要实时监控生产线上多台欧姆龙PLC设备的运行状态,包括温度、压力、转速、产量计数等关键数据变量。传统监控方式依赖本地HMI和人工巡检,存在数据延迟、无法集中分析、异常响应滞后等
    的头像 发表于 05-14 14:37 690次阅读
    组态可视化平台如何<b class='flag-5'>监控</b>欧姆龙PLC的数据<b class='flag-5'>变量</b>

    Ansible Playbook中的变量使用技巧

    在inventory中定义的连接变量(比如ansible_ssh_user);优先级第二。
    的头像 发表于 04-15 10:26 678次阅读

    OpenAI宣布GPT 4o升智计划

    近日,全球领先的人工智能公司OpenAI迎来了一项重要宣布。OpenAI的首席执行官Sam Altman正式揭晓了GPT 4o的升智计划,这一消息立即引起了业界的广泛关注。 据Sam Altman
    的头像 发表于 02-17 14:24 870次阅读

    OpenAI即将发布GPT-4.5与GPT-5

    近日,OpenAI的首席执行官Sam Altman在社交平台上透露了公司即将推出的重大计划。据他透露,OpenAI计划在不久的将来连续发布两款重要的AI算法——GPT-4.5和GPT-5。 据悉
    的头像 发表于 02-13 13:43 1031次阅读

    OpenAI即将推出GPT-5模型

    OpenAI首席执行官奥尔特曼近日宣布了一项重要消息:OpenAI将在今年未来几个月内推出全新的GPT-5模型。这一消息引起了业界的广泛关注和期待。 据了解,GPT-5模型将整合OpenAI的大量
    的头像 发表于 02-13 11:21 914次阅读

    OpenAI CEO预告GPT-4.5及GPT-5未来规划

    近日,OpenAI的首席执行官萨姆·奥尔特曼(Sam Altman)放出了一则令人瞩目的更新预告,透露了GPT-4.5和GPT-5的未来规划。 据奥尔特曼透露,OpenAI将在接下来的几个月内推出
    的头像 发表于 02-13 10:02 748次阅读

    如何在边缘端获得GPT4-V的能力:算力魔方+MiniCPM-V 2.6

    GPT4-V的能力:MiniCPM-V 2.6 。 MiniCPM-V 2.6是MiniCPM-V系列最新、性能最佳的模型,基于SigLip-400M和Qwen2-7B构建,共8B参数。在最新版
    的头像 发表于 01-20 13:40 1110次阅读
    如何在边缘端获得<b class='flag-5'>GPT</b>4-V的能力:算力魔方+MiniCPM-V 2.6

    GPT-5研发进度滞后,成果与成本不匹配

    近日,OpenAI正在紧锣密鼓地研发的下一代大型语言模型GPT-5,其研发进度已落后于原计划。这一消息引起了业界的广泛关注。 报道指出,尽管OpenAI在GPT-5的研发上投入了大量的人力、物力
    的头像 发表于 12-23 14:16 800次阅读

    OpenAI GPT-5开发滞后:训练成本高昂

    近日,据最新消息,OpenAI在推进其备受期待的下一代旗舰模型GPT-5的开发进程上遇到了困难。由于计算成本高昂且高质量训练数据稀缺,GPT-5的开发已经落后于原定计划半年之久。 据悉,OpenAI
    的头像 发表于 12-23 11:04 1431次阅读