6、stm32F103 点亮LED(寄存器野蛮版)

如何点亮LED(PC13)

6、stm32F103 点亮LED(寄存器野蛮版)

打开时钟

6、stm32F103 点亮LED(寄存器野蛮版)
6、stm32F103 点亮LED(寄存器野蛮版)
从图可以看到时钟控制的起始地址是0x40021000。那么RCC_APB2ENR的基地址是0x4002 1000,加上偏移地址后是0x4002 1018。
如何把时钟第四位变成1?

(unsigned int)0x4002 1018 |=(1<<4);//打开时钟

配置输出

6、stm32F103 点亮LED(寄存器野蛮版)
先将对应控制位(20~23)清零,在根据需要配置
通过以下代码实现通用推挽输出模式
(unsigned int)0x40011004 &= ~(0x0F<<(4*5));//配置输出模式
(unsigned int)0x40011004 |= (1<<4*5); //
6、stm32F103 点亮LED(寄存器野蛮版)

输出低电平

6、stm32F103 点亮LED(寄存器野蛮版)
(unsigned int)0x4001 100C&=~(1<<13)//配置输出低电平

6、stm32F103 点亮LED(寄存器野蛮版)
6、stm32F103 点亮LED(寄存器野蛮版)
参考链接:https://blog.****.net/daniaoxp/article/details/100176967