因为我写寄存器的操作不太熟练,所以最近腾出时间学习了一下怎么写寄存器,现在把我的经验贴出来,如有不足请指正
我使用的板子是stm32F103C8T6(也就是最常用的板子),现在要通过写GPIO的寄存器来实现点亮LED灯
查阅原理图可得,板子的PC13引脚外接了一个LED灯,也就是说我们接下来的操作是针对PC13这个引脚的
我们首先要找到GPIOC管脚的首地址(如下图所示)
所以我们GPIOC的地址是从0x40011000开始的
通过查阅手册,我们可以得知可以通过写BSRR寄存器来达到我们的目的,然后我们需要查找这个寄存器的地址
这里有个地址偏移量,也就是这个寄存器相对于起始地址的偏移量,所以BSRR寄存器的地址就是0x40011010
然后我们需要写对应的第13位(因为我们要操作的是PC13,第13号管脚),把第13位写成1,其他的保持0
根据换算可得,我们要写的是