控制GPIO输出点亮LED灯——直接操作存储器
一.预备知识
使用51单片机控制IO口相对来说要简单得多,最小系统搭建完毕后直接通过软件往各IO口写“1”或者写“0”即可。但使用STM32控制IO口输入输出却远没有这么容易,经过一个下午的查阅文献及探索后,略微有了头绪。
个人所使用的STM32F103VBT6有100个引脚,其中有五组GPIO(GPIOA…GPIOE),每组有16个GPIO端口(GPIOx_Pin0…GPIOx_Pin15)共80个,每个GPIO端口都有:
两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH);
两个32位数据寄存器(GPIOx_IDR,GPIOx_ODR);
一个32位置位/复位寄存器(GPIOx_BSRR);
一个16位复位寄存器(GPIOx_BRR);
和一个32位锁定寄存器(GPIOx_LCKR)。
其中各个寄存器的作用:
名称 |
寄存器 |
意义 |
端口配置寄存器 |
GPIOx_CRL GPIOx_CRH |