全志平台A40I 读写寄存器操作

简介: 全志平台A40I 读写寄存器操作

早期调试A40I 调试RTC相关内容 改电压 读写寄存器的笔记 , 整理了下 希望对大家有帮助。

1、查看规格书

我们以A40平台为例,可以找到一些寄存器的地址和含义。

例如:

  • 0x01C20400 偏移0x100+7*0x04=0x01C20528=GP_DATA_REG,这是GPIO端口数据寄存器,用于控制GPIO的输出电平。
  • 0x01C20400 偏移0x190=0x01C20590=VDD_RT_REG,这是实时电压调节寄存器,用于控制CPU核心电压。

2、查看地址

我们可以使用adb shell进入设备的命令行界面,然后使用sunxi_dump类来读取或写入寄存器。

首先,需要进入sunxi_dump类的目录:

adb shell
cd /sys/class/sunxi_dump

可以使用echo命令将寄存器的地址写入dump文件:

echo 0x01C20590 > dump

可以使用cat命令来查看dump文件的内容,即寄存器的值:

cat dump

3、读取寄存器

读取寄存器的方法和查看地址的方法相同,只需要将想要读取的寄存器的地址写入dump文件,然后查看dump文件的内容即可。

例如,我们想要读取VDD_RT_REG寄存器的值,就可以这样做:

adb shell
cd /sys/class/sunxi_dump
echo 0x01C20590 > dump
cat dump

4、写入寄存器

写入寄存器的方法和读取寄存器的方法类似,只需要将想要写入的寄存器的地址和值用空格分隔写入write文件即可。

例如,我们想要将VDD_RT_REG寄存器的值设置为1.1V,就可以这样做:

adb shell
cd /sys/class/sunxi_dump
echo 0x01C20590 0x00000022 > write

注意:写入寄存器可能会影响设备的正常运行或造成损坏,请谨慎搞  


好了 本文非常easy 有什么问题 欢迎留言~

相关文章
|
3月前
|
存储 缓存 算法
计算机硬件存储器中同步作用
【8月更文挑战第3天】
60 9
|
存储 Linux
RISC-V SiFive U54内核——PLIC平台级中断控制器
RISC-V SiFive U54内核——PLIC平台级中断控制器
|
Linux Shell
内核调试之devmem直接读写寄存器
内核调试之devmem直接读写寄存器
|
存储 负载均衡 程序员
鲲鹏CPU架构分析1:高性能处理器的存储器组织与片上互联
为了使处理器的处理能力得到充分发挥,存储系统必须能够提供与处理器性能相匹配的存储器带宽。 因此,处理器与主存储器之间的速度差距一直是处理器结构设计中必须考虑的问题。由于处理器内的核心数目增多,并且各核心采用共享存储器结构进行信息交互,对主存的访问需求进一步增加,在单处理器时代面临的存储墙问题依然存在,而且问题更加严重。 故必须针对多核处理器进行相应的存储结构设计,并解决好存储系统的效率问题。
826 0
鲲鹏CPU架构分析1:高性能处理器的存储器组织与片上互联
单片机:定时器0和1中断(内含硬件内容详解+软件编程)(ps:此处硬件执行结构间的理解是重中之重)
单片机:定时器0和1中断(内含硬件内容详解+软件编程)(ps:此处硬件执行结构间的理解是重中之重)
502 0
单片机:定时器0和1中断(内含硬件内容详解+软件编程)(ps:此处硬件执行结构间的理解是重中之重)
|
Linux 开发者 Perl
zynq操作系统:Linux驱动开发AXIDMA补充篇 多路DMA
Linux驱动开发AXIDMA补充篇 多路DMA
1219 0
|
存储
FPGA-SDRAM设计学习(三)初始化、模式寄存器、激活和读命令
FPGA-SDRAM设计学习(三)初始化、模式寄存器、激活和读命令
292 0
FPGA-SDRAM设计学习(三)初始化、模式寄存器、激活和读命令
|
存储 传感器 Ubuntu
ESP32-C3入门教程 基础篇(八、NVS — 非易失性存储库的使用)
前面的7节课把开发板上基本的外设都测试过一边,接下来马上就要进入wifi和蓝牙应用的测试了 在此之前,还需要把掉电数据保存的功能给实现,在STM32中,可以使用内部的flash或者有些自带的EEPROM 在 ESP32-C3 上,使用非易失性存储 (NVS) 库的方式,进行简单数据的掉电保存
666 0
ESP32-C3入门教程 基础篇(八、NVS — 非易失性存储库的使用)