内存、寄存器、GPIO地址、存储器之间的关系

本文介绍了内存、寄存器、GPIO地址和存储器之间的关系。通过代码转换成机器码,CPU从内存读取指令,并将数据写入GPIO寄存器来控制硬件。地址0x0000 0000表示物理地址,CPU能识别并执行对应操作。在X210平台上,4GB内存中一部分用于硬件绑定,一部分作为运行内存。裸机编程时,程序需链接到特定地址运行,而操作系统启动后,虚拟地址会映射到物理地址进行内存调度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内存、寄存器、GPIO地址、存储器之间的关系


1、如上图,0x0000 0000表示第一个地址字节,代码使用这个16进制时,指针会指向这个物理地址,对4字节的GPIO控制单元来说,这4个字节的物理地址就叫寄存器,当我们把IO口配置的数据写入这个寄存器地址时,过程如下:

(1)cpu通过我们写入的代码,转换成机器码

            解释:写入的代码最初是我们键盘写入,一个键值按下,闭合后会有一个电平发生,在相应的编译器里,会转换成字符,比如if(.....),最后烧录到板子再变成电信号(就是晶体管的高低信号)。

(2)cpu通过取指令的寄存器,取指令,读取到运行内存运行

            解释:这里的运行内存,也就是cpu通过地址总线连接的ddr,cpu有4G的地址空间,一部分用作GPIO、utar、spi、特殊寄存器,SD等,一部分用来连接运行内存ddr,这部分cpu并没有自己使用,而是以IO口的方式提供给我们自己去接DDR,比如电脑,但是也有的在cpu内内置了DDR,也就是(RAM),那这部分IO口,就没有提供了。

(3)将数据取得,放入GPIO寄存器

    &n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值