当前位置: 首页 > news >正文

wordpress图标插件seo 优化公司

wordpress图标插件,seo 优化公司,做视频网站被判刑,做一个网站后期维护需要做什么1.GPIO为什么需要宏定义地址 在 STM32 这样的微控制器中,硬件寄存器的地址是固定的并且特定于每个外设(比如 GPIOA、GPIOB 等)。为了方便代码访问这些硬件寄存器,我们通常会使用宏定义来指定每个外设的基地址。这样做有几个理由&a…

1.GPIO为什么需要宏定义地址

在 STM32 这样的微控制器中,硬件寄存器的地址是固定的并且特定于每个外设(比如 GPIOA、GPIOB 等)。为了方便代码访问这些硬件寄存器,我们通常会使用宏定义来指定每个外设的基地址。这样做有几个理由:

  • 硬件地址是固定的: 微控制器的每个外设(比如 GPIOA、GPIOB 等)都有一个固定的起始地址(基地址),这些地址在芯片的硬件手册中明确给出。例如,GPIOA 可能有一个固定的基地址,比如 0x40010800

  • 代码便于移植: 使用宏定义可以让代码更加灵活。例如,如果你将代码移植到不同型号的 STM32 设备上,不同型号的设备可能会有不同的外设基地址。通过宏定义,可以方便地修改这些基地址,而不需要修改代码中每个寄存器访问的地方。

  • 简化代码: 使用宏定义可以简化代码的书写和阅读。我们直接使用 GPIOA_BASE 而不是手动输入每个寄存器的地址。

因此,GPIOA 需要宏定义一个地址是因为它是外设的基地址,代码通过这个基地址来访问 GPIOA 外设的寄存器。

你也可以不定义,那就需要输入地址再访问了,比如:

2. 为什么不需要为 BSRR定义宏地址

从下图可以看到,我所查找的的BSRR只是一个宏定义,找不到他的地址值了,为什么呢?

GPIOA->BSRR的访问并不需要为 BSRR寄存器单独定义一个地址,因为:已经包含了所有寄存器字段的偏移量定义。例如,BSRR寄存器的地址会是 GPIOA_BASE + 0x10(这是在硬件手册中定义的)。

  • 结构体的每个字段(例如 ODR)会自动偏移至相应的地址,而不需要为每个字段单独定义一个宏。

另外,我们会在代码中添加GPIO_TypeDef 结构体,GPIOA 本身已经是指向 GPIO_TypeDef 结构体的指针,GPIOA->BSRR会自动根据结构体的定义来访问 BSRR寄存器,比如:

三、为什么GPIOA->BSRR=1不会改变他的地址值

其实有了上面的哪一点,问题迎刃而解了,BSRR就是地址了,而GPIOA->BSRR是取BSRR的值而不是地址,所以我们在修改的是BSRR的值而不是地址

http://www.zhongyajixie.com/news/50400.html

相关文章:

  • 网站建设文化价格如何外贸推广
  • wordpress插件日志app优化建议
  • 优酷网站建设视频教程集企业网站关键词优化
  • 常州网站建设案例微信推广怎么做
  • 龙港做网站绍兴百度推广优化排名
  • 什么网站免费制作做网络推广的团队
  • 网页制作做网站左侧导航网站优化就是搜索引擎优化
  • 二维码生成器app下载安卓版windows清理优化大师
  • 画品展现手机网站海外推广服务
  • 用源码做自己的网站西安快速排名优化
  • 邯郸做商城网站的公司东莞网站设计公司排名
  • 做网站有必要做app吗全网营销系统怎么样
  • 网站建设业务活动网上推广
  • 建筑工程公司需要什么资质优化器
  • 自己做网站卖仿货域名免费注册
  • 网站服务器设置免费个人网站模板
  • 网站开发 法律营销网站建设专家
  • 可以做海报的网站广州网络推广培训
  • 广州机械网站开发潍坊快速网站排名
  • 用sql做简单的博客网站网络广告文案范文
  • 学设计的网站推荐百度大数据查询平台
  • python做后台网站的多吗抚顺网站seo
  • 手机社交网站建设我要看今日头条
  • 郑州仿站定制模板建站孔宇seo
  • 个人网络工作室seo网站推广专员
  • 免费简历模板的网站长沙做网络推广公司的
  • 网站开发跟软件开发国际域名注册网站
  • photoshop做网站设计美食软文300字
  • 物流网站建设实例什么是网站
  • 网站在互联网营销中的作用seo营销论文