当前位置:网站首页>TRACE32——外设寄存器查看与修改
TRACE32——外设寄存器查看与修改
2022-08-05 06:42:00 【Rainmicro】
TRACE32——外设寄存器查看与修改
本文介绍外设寄存器,例如I2C、GPIO、SPI、CAN等如何在TRACE32中灵活查看与修改。
首先,外设寄存器的查看与修改,离不开TRACE32的外设文件(*.per),per文件一般存在于TRACE32的安装根目录下。
一般情况下,在调试时,TRACE32会根据当前选择的芯片名自动选择合适的per文件,此时只需要执行命令
per
或者通过鼠标点击CPU-Peripherals进行打开
或者可以显示地指定查看哪个外设寄存器文件
per.view ~~\perj721e.per //~~表示TRACE32安装根目录, 例如D:\T32
per D:\T32\perj721e.per //效果等同于上面的命令
如果需要修改某个外设寄存器的值,可以找到对应寄存器的位置,右键,选择Set或者Modify进行修改
命令改写外设寄存器的方法如下:
PER.Set.simple ASD:0x40000000 %Long 0x77700000
在TRACE32中可以显示某个位域的值,也可以按位域进行修改,只需要找到需要修改的位域,右键,按照提示进行切换值即可:
用命令改写位域的方法如下:
PER.Set.Field ASD:0x40000000 %Long 0x007c0000 0x5
其中
ASD:0x40000000是外设寄存器地址
%long 表示寄存器位宽为32bit
0x007c0000是mask
0x5是要改写的value
改写的规则如下
即:
NewData=(OldData&~mask)|((value<<offset(mask))&mask)
更多用法1 高亮显示变化的值
可以使用如下命令,将发生变化的值以高亮显示:
per , /SpotLight
其中:
逗号“,” 是一个缺省占位符,表示使用默认的per文件进行显示
因为per命令的完整格式应该如下:
PER.view [<file> [[<args>] "<subtree_path>"] [/<option>]]
PER.view可以简写为PER
如果需要/<option>
的时候,<file>
可以不写,但必须用逗号来进行缺省占位
更多用法2 实时显示变化的值
部分平台,会默认开启实时显示;如果没有默认开启,可以手动执行命令
;SYStem.MemAccess <实时显示的数据通道>
;例如ARM上可以使用DAP
SYStem.MemAccess DAP
per , /SpotLight /Dualport
/Dualport
用于实时显示
更多用法3 全部展开
有些时候,希望一个命令能展开所有寄存器方便查看,可以使用
per , "*"
也可以只展开相应的寄存器组,例如展开GPIO Ports的所有寄存器:
per , "GPIO Ports,*"
更多用法4 保存和导出
外设寄存器的窗口所有内容打印到txt等文件中进行保存。
除了WinPrint,外设寄存器还可以使用对应的命令保存成cmm脚本。例如,
将GPIO的Port33相关寄存器全部保存到D:\saved_gpio.cmm
per.STOre D:\saved_gpio.cmm , "GPIO Ports,Port 33"
保存的脚本内容类似这样:
后面如果要恢复寄存器的值,可以直接运行cmm脚本
Do D:\saved_gpio.cmm
更多关于外设寄存器相关的命令可以参考如下文档:
- <T32安装目录>\pdf\general_ref_p.pdf\Per章节
- https://www2.lauterbach.com/pdf/general_ref_r.pdf\Per章节
边栏推荐
- It turns out that Maya Arnold can also render high-quality works!Awesome Tips
- UDP broadcast
- An IP conflict is reported after installing the software on a dedicated computer terminal
- 任务流调度工具AirFlow,,220804,,
- IO进程线程->进程间的通信->day7
- 软件测试必问面试题(附答案和解析)
- 1、Citrix XenDesktop 2203之AD域系统安装(一)
- 线程池的使用(结合Future/Callable使用)
- [Tool Configuration] Summary of Common Uses of VSCode
- Week 8 Document Clustering(文本聚类)
猜你喜欢
RNote108---Display the running progress of the R program
Redis
Shared memory + inotify mechanism to achieve multi-process low-latency data sharing
(4) Rotating object detection data roLabelImg to DOTA format
MySQL:order by排序查询,group by分组查询
工作3年,回想刚入门和现在的今昔对比,笑谈一下自己的测试生涯
MAYA船的建模
MAYA大炮建模
In the anaconda Promat interface, import torch is passed, and the error is reported in the jupyter notebook (only provide ideas and understanding!)
Nacos cluster construction
随机推荐
Falsely bamboo brother today and found a localization of API to use tools
Using printf function in STM32
Takeda Fiscal 2022 First Quarter Results Strong; On Track to Achieve Full-Year Management Guidance
Tencent Internship Summary
基于KECA-IGWO-KELM的间歇过程故障诊断方法
Redis
Flink Learning 10: Use idea to write WordCount and package and run
原来使Maya Arnold也能渲染出高质量作品!超赞小技巧
Shiny02---Shiny exception solution
C# FileSystemWatcher
400 times performance improvement 丨 swap valuation optimization case calculation
typescript67-索引查询类型
数据库多表关联插入数据
今天虚竹哥又发现了一款好用的国产化API工具
Source code analysis of Nacos configuration service (full)
任务流调度工具AirFlow,,220804,,
一天学会从抓包到接口测试,通过智慧物业项目深度解析
二叉搜索树问题
17-VMware Horizon 2203 虚拟桌面-Win10 手动桌面池浮动(十七)
Technical Analysis Patterns (11) How to Trade Head and Shoulders Patterns