• stm32 中地址的理解


    转:https://bbs.csdn.net/topics/391000139?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

    STM32的中地址是按Bit,Byte,还是Word作为单位的?    例如0x8000000,它后面的单位是什么? Byte

    为什么有的地址是按照uint16_t,有的是按照uint32_t,这个是为什么?为什么有的地址是按照uint16_t,有的是按照uint32_t,这个是为什么?

    #define FLASH_BASE             ((uint32_t)0x08000000)  
    那FLASH_BASE是个地址,为什么要对这个地址使用(uint32_t)转换呢?

    答:就是赋给它一个数据类型。这样,*FLASH_BASE 就是一个双字(4字节)。

    那FLASH_BASE是个地址,为什么要对这个地址使用(uint32_t)转换呢?

    你看看这个宏定义是在什么地方使用的,看名字,应该是赋给某个地址变量的,那个变量的类型应该就是uint32_t的。

    你当然也可以不在宏定义的地方给出类型,而在赋值的时候自己做类型转换,甚至让编译器自己做自动类型转换可能也是可以的,只是效率低一点,代码可读性差一点。

    带女朋友搬家新家条件不好,累到女朋友了,让女朋友受苦了,特此明志:每天学习,明年这个时候(20190812)让女朋友住上大房子,永远年轻,永远热泪盈眶,很多人都是这样,他们都把自己当成身在梦中一样,浑浑噩噩地过日子,只有痛苦或爱或危险可以让他们重新感到这个世界的真实。
  • 相关阅读:
    make 实例 一 3463
    python3 中对arrow库的总结(转发)
    impala 导出CSV 或excel
    设置虚拟机IP
    centos7 tomcat9
    eclipse 创建普通maven项目
    java log4j日志配置
    java运行jar命令提示没有主清单属性
    Java 读取 .properties 配置文件
    python 机器学习多项式回归
  • 原文地址:https://www.cnblogs.com/make-big-money/p/12598745.html
Copyright © 2020-2023  润新知