stm32固件库定义基础地址的时候为啥用了unsigned int?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32固件库定义基础地址的时候为啥用了unsigned int?相关的知识,希望对你有一定的参考价值。

地址不是应该用unsigned int *吗

参考技术A 前面只是定义了一个基准常量。(加不加unsigned int应该影响不大吧,通常会默认分配大小吧,加了能确保系统分配到足够的连续的存放空间)
它这个常量是和后面的偏移量合在一起后才加*转成地址。也就不会你想那样单独当地址用,或者人家用的时候再加*强制转化成地址。
都是根据自己要怎么用,所以才做什么样定义。
参考技术B 注意定义前面还有一个*号,意味着这是一个对指定地址的寄存器的访问,如果没有这个定义,就是一个指针了。追问

不是我加深颜色的那些,是第一行代码,这应该是定义一个地址吧,为什么不用unsigned int *

追答

指针的值就是地址

参考技术C 前面的是数值,后面的是指针。引用定义时的用法不一样。

以上是关于stm32固件库定义基础地址的时候为啥用了unsigned int?的主要内容,如果未能解决你的问题,请参考以下文章

STM32固件库点亮LED灯

STM32白话文教程固件库点灯

学习Stm32使用固件库和写寄存器有啥区别

stm32固件库SPI操作

STM32 固件库与 CMSIS 标准如何理解?

STM32借用固件库使用外设的说明