嵌入式stm32接地的按键,判断按键是否按下怎么写(用寄存器控制)?
答案:2 悬赏:0 手机版
解决时间 2021-03-04 04:33
- 提问者网友:战魂
- 2021-03-03 22:48
嵌入式stm32接地的按键,判断按键是否按下怎么写(用寄存器控制)?我的是pe4,pe3有两个按键,pe5一个LED,还有个LED是pb5
最佳答案
- 五星知识达人网友:渡鹤影
- 2021-03-03 22:57
1、STM32 的每个 IO 端口都有 7 个寄存器来控制
(1)配置模式的 2 个 32 位的端口 配置寄存器 CRL 和 CRH
(2)2 个 32 位的数据寄存器 IDR 和 ODR
(3)1 个 32 位的置位/复位寄存器 BSRR
(4)一个 16 位的复位寄存器 BRR
(5)1 个 32 位的锁存寄存器 LCKR。
2、每个GPIO端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH)分别控制每个端口的高八位和低八位,如果IO口是0-7号的话,则写CRL寄存器,如果IO口是8-15号的话,则写CRH寄存器,两个32位数据寄存器(GPIOx_IDR,GPIOx_ODR)一个是只读作输入数据寄存器,一个是只写作输出寄存器,一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR)。常用的IO端口寄存器只有四个:CRH,CRL,IDR,ODR。
3、另外,STM32的每个端口使用前都要将其时钟使能,STM32的GPIO的时钟统一挂接在APB2上,具体的使能寄存器为RCC_APB2ENR,该寄存器的第2位到第8位分别控制GPIOx(x=A,B,C,D,E,F,G)端口的时钟使能,当外设时钟没有启用时,程序不能读出外设寄存器的数值
(1)配置模式的 2 个 32 位的端口 配置寄存器 CRL 和 CRH
(2)2 个 32 位的数据寄存器 IDR 和 ODR
(3)1 个 32 位的置位/复位寄存器 BSRR
(4)一个 16 位的复位寄存器 BRR
(5)1 个 32 位的锁存寄存器 LCKR。
2、每个GPIO端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH)分别控制每个端口的高八位和低八位,如果IO口是0-7号的话,则写CRL寄存器,如果IO口是8-15号的话,则写CRH寄存器,两个32位数据寄存器(GPIOx_IDR,GPIOx_ODR)一个是只读作输入数据寄存器,一个是只写作输出寄存器,一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR)。常用的IO端口寄存器只有四个:CRH,CRL,IDR,ODR。
3、另外,STM32的每个端口使用前都要将其时钟使能,STM32的GPIO的时钟统一挂接在APB2上,具体的使能寄存器为RCC_APB2ENR,该寄存器的第2位到第8位分别控制GPIOx(x=A,B,C,D,E,F,G)端口的时钟使能,当外设时钟没有启用时,程序不能读出外设寄存器的数值
全部回答
- 1楼网友:一叶十三刺
- 2021-03-03 23:46
这个?你学过c语言和单片机没啊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯