如何访问寄存器

2024-06-17 16:36
文章标签 访问 寄存器

本文主要是介绍如何访问寄存器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

标题

  • 方式一:对地址进行宏定义
  • 方式二:用结构体封装寄存器

访问寄存器是CPU执行程序的基础,每种CPU架构都有其特定的寄存器集合和访问方式。

方式一:对地址进行宏定义

#define GPIOA_BASE ((unsigned int)0x48000000)
#define GPIOA_ODR  (GPIO_BASE + 0X14)
//读操作
val1 = *(unsigned int*)GPIOA_ODR
//写操作
*(unsigned int*)GPIOA_ODR = val2

方式二:用结构体封装寄存器

typedef struct{uint32_t MODER;uint32_t OTYPER;uint32_t OSPEEDR;uint32_t IDR;uint32_t ODR;uint32_t BSRR;uint32_t LCKR;
}GPIO_TypeDef;//定义首地址
#define GPIOA_BASE ((unsigned int)0X48000000)
#define GPIOA ((GPIO_TypeDef *)GPIOA_BASE)
//访问方式
//这行代码是在操作GPIO端口的输出数据寄存器,而不是设置内存地址。
//0x14是作为数据被写入到寄存器中,以控制GPIO引脚的输出状态。
GPIOA->ODR = 0x14;

这篇关于如何访问寄存器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1069970

相关文章

vue3项目将所有访问后端springboot的接口统一管理带跨域

vue3项目将所有访问后端springboot的接口统一管理带跨域 一、前言1.安装Axios2.创建Axios实例3.创建API服务文件4.在组件中使用API服务 二、跨域三、总结 一、前言 在Vue 3项目中,统一管理所有访问后端Spring Boot接口的最佳实践是创建一个专门的API服务层。这可以让你的代码更加模块化、可维护和集中管理。你可以使用Axios库作为HTT

局域网内vue2 配置本地IP地址访问项目

在日常开发中同事可能需要访问你的前端项目,可以通过配置实现通过ip访问 一.首先找到config文件夹目录下的 index.js文件             将此处的host的值修改为0.0.0.0(即 host: 0.0.0.0) // Various Dev Server settings//host: 'localhost' //将localhost进行替换成 0.0.0.0host:

Modbus初学者教程,第三章:modbus寄存器说明

第三章:modbus寄存器说明 寄存器种类 Modbus协议中一个重要的概念是寄存器,所有的数据均存放于寄存器中。Modbus寄存器是指一块内存区域。Modbus寄存器根据存放的数据类型以及各自读写特性,将寄存器分为4个部分,这4个部分可以连续也可以不连续,由开发者决定。寄存器的意义如下表所示。 Modbus协议定义了设备间的数据传输方式,包括数据格式和通信规则。Modbus寄存器是协议中用

C# 命名管道中客户端访问服务器时,出现“对路径的访问被拒绝”

先还原一下我出现错误的情景:我用C#控制台写了一个命名管道服务器,然后用ASP.NET写了一个客户端访问服务器,运行之后出现了下面的错误: 原因:服务器端的访问权限不够,所以是服务器端的问题,需要增加访问权限。(网上很多都说是文件夹的权限不够,情况不同,不适用于我这种情况) 解决办法: (1)在服务器端相应地方添加以下代码。 PipeSecurity pse = new PipeSec

plsql远程访问数据库

本机为win7 32位系统,为了学习oracle,装了个vbox虚拟机,再装了个win7虚拟机,内装oracle 11g(win7如果要装10g,要选择vista版本,win版本会安装报错).oracle11g安装完后有报了个错误,当时没注意,现在也忘了什么错了,但是不影响使用.后来想在本机安装plsql来远程连接虚win7上的oracle.查了一些资料,步骤如下: 1.下载plsql,安

webstorm 允许他人通过ip访问项目

webstorm 允许他人通过ip访问项目 如题,在网上搜配置局域网ip访问项目的相关问题,很多都有解释,这里主要是针对wenbstorm设置后依旧无法访问,做下记录。 如图所示,端口需要4位数,相应的地方需要打钩,到这一步,基本就可以通过ip和端口进行远端项目访问。如果还不行,基本就是防火墙的问题。解决步骤如下: 打开windows防火墙,找到webstorm,此时应该处于关闭

访问网站时IP被屏蔽是什么原因?

在互联网使用中,有时我们可能会遇到访问某个网站时IP地址被屏蔽的情况。IP地址被网站屏蔽是一个相对常见的现象,而导致这种情况的原因多种多样,包括恶意行为、违规访问等。本文将解释IP地址被网站屏蔽的常见原因,同时,我们将提供用户解决IP屏蔽问题的解决方案 一、IP地址被网站屏蔽的常见原因 1、恶意行为: 恶意行为是导致IP地址被网站屏蔽的一大原因。这些行为包括但不限于大规模网络爬虫、DDoS攻

卧槽,6。套死你猴子,Tomcat访问html页面显示源码?

卧槽,6。Tomcat访问html页面显示源码? 元凶text/explain //踩坑!!!不能用 servletResponse.setContentType("text/explain,否则访问html会看到源码,而不是渲染页面; charset=UTF-8");servletResponse.setContentType("text/html; charset=UTF-8");

如何给MySQL设置远程访问?(官方校正版)

在现代数据驱动的世界中,数据库的灵活性和可访问性变得尤为重要。设置MySQL的远程访问不仅仅是为了方便,还为企业和开发者提供了多种优势。无论是在分布式团队协作、跨地域数据管理,还是在系统集成和实时数据访问方面,远程访问都能显著提升效率和生产力。 目录 1. 修改MySQL配置文件 2. 重启MySQL服务 3. 创建远程访问用户 4. 配置防火墙 a. 使用UFW(适用于Ubun