寄存器点灯

使能APB2上的GPIOC13端口

1.使能GPIOC的时钟(寄存器+起始地址和偏移地址)

偏移地址(找对应的寄存器)

寄存器地址=起始地址+偏移地址(0x4002 1000+0x18=0x4002 1018)

寄存器地址0x4002 1018|=0x01<<4位0置1,向左移动4位

但是0x只代表16进制数,还需要强制转换成指针取地址即*(unsigned int *)0x4002 1018

*(unsigned int *)0x4002 1018|=0x01<<4

2.配置GPIO13端口输出模式

找寄存器找两个地址

起始地址

偏移地址

寄存器地址=0x4001 1000+0x04=0x4001 1004

设置推挽输出,10MHz,0001

GPIO13是4位的,将0001移动到红色框中,即移动20位

*(unsigned int *)0x4001 1004|=0x01<<20

3.配置GPIO13输出低电频

0x4001 1000+0Ch=0x4001 100c

13口置0为低电平,其他位不变,ODR0位置1,左移13位

*(unsigned int *)0x4001100C &= ~(0x01 << 13);

取反再相与如0001取反得1110,而1110与xxxx相与为xxx0

相关推荐
Zevalin爱灰灰1 小时前
能源与电源管理电路——防倒灌电路
单片机·嵌入式硬件·电源管理
jianqiang.xue3 小时前
ESP-IDF保姆级入门02|Ubuntu24.04搭建EIM-GUI开发环境,打通Windows_Linux双平台统一开发
stm32·单片机·物联网
无垠的广袤3 小时前
【工业树莓派 CM0 Dev Board】扩展板设计
linux·python·嵌入式硬件·pcb设计·模块化·传感器
嵌入式-老费4 小时前
esp32开发与应用(添加数据分区)
单片机·嵌入式硬件
嵌入式-老费5 小时前
esp32开发与应用(OTA升级)
嵌入式硬件
CYLAM20258 小时前
STC32G 单片机0.96“OLED 西历农历可调万年历 (1901-2100)
单片机·嵌入式硬件·stc32g·万年历·西历农历·0.96”oled 12864·4x4 矩阵键盘
Discipline~Hai8 小时前
ARM03-蜂鸣器和中断
c语言·arm开发·单片机·嵌入式硬件·嵌入式
KaifuZeng9 小时前
电源面试问题汇总一
单片机·嵌入式硬件·面试·电路
驱动探索者11 小时前
RISC-V PLIC 深度解析:从 Spec 到 Zephyr 驱动实现
单片机·嵌入式硬件·中断控制器
LCG元11 小时前
STM32 FreeRTOS 实战:任务调度 + 互斥锁 + 消息队列 + 串口命令解析器
stm32·单片机·嵌入式硬件