打印
[STM32F1]

按键按了灯不灭

[复制链接]
287|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xxrs|  楼主 | 2021-1-12 21:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
IO, pi, GPIO, gp, TI

void EXTI_PC5_Configuration(void);

int main(void)
{
LED_Configuration();
LED1_ON;
EXTI_PC5_Configuration();
while(1)
{

}
}


void LED_Configuration()
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOB,&GPIO_InitStructure);  
}


void EXTI_PC5_Configuration()
{
NVIC_InitTypeDef NVIC_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure;
EXTI_InitTypeDef EXTI_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_AFIO,ENABLE);/***¿ªÆôʱÖÓ***/

NVIC_InitStructure.NVIC_IRQChannel=EXTI9_5_IRQn;
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority=1;
NVIC_Init(&NVIC_InitStructure);
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IPD;
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_5;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOC,&GPIO_InitStructure);

GPIO_EXTILineConfig(GPIO_PortSourceGPIOC,GPIO_PinSource5);
EXTI_InitStructure.EXTI_Line=EXTI_Line5;
EXTI_InitStructure.EXTI_LineCmd=ENABLE;
EXTI_InitStructure.EXTI_Mode=EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger=EXTI_Trigger_Falling;
EXTI_Init(&EXTI_InitStructure);
}



void EXTI9_5_IRQHandler(void)
{
if(EXTI_GetITStatus(EXTI_Line5)!=RESET)
{
  GPIO_WriteBit(GPIOB,GPIO_Pin_5,(BitAction)(1-GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_5)));
  EXTI_ClearITPendingBit(EXTI_Line5);
}
}

使用特权

评论回复
沙发
morrisk| | 2021-1-12 21:56 | 只看该作者
什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
xxrs|  楼主 | 2021-1-12 21:59 | 只看该作者
PC5连接K1,PB5连接LED1

使用特权

评论回复
地板
xxmmi| | 2021-1-12 22:01 | 只看该作者
如果你不会配置IO口的工作模式建议别配置直接使用

使用特权

评论回复
5
zwll| | 2021-1-12 22:03 | 只看该作者
嗯,因为默认的就是双向IO。

使用特权

评论回复
6
juventus9554| | 2021-1-12 22:06 | 只看该作者
另外中断模式不会配置也别配置,直接默认的IO功能实现,做好检测功能。

使用特权

评论回复
7
xxrs|  楼主 | 2021-1-12 22:08 | 只看该作者
请问这个程序如何修改,才能正确。

使用特权

评论回复
8
renyaq| | 2021-1-12 22:10 | 只看该作者

只知道通过FLL可以将内部DCO频率固定在一个相对稳定的频率,
不知道DCO怎么把XT2倍频

使用特权

评论回复
9
renyaq| | 2021-1-12 22:15 | 只看该作者
你写的太抽象了,难以理解。。你看看官方的例程怎么写的吧。

使用特权

评论回复
10
supernan| | 2021-1-12 22:18 | 只看该作者
你的Key是高电平触发还是低电平,怎么来个低电平判断

使用特权

评论回复
11
chenho| | 2021-1-12 22:20 | 只看该作者
能进入中断吗

使用特权

评论回复
12
chuxh| | 2021-1-12 22:22 | 只看该作者
这个 到底是什么问题

使用特权

评论回复
13
pengf| | 2021-1-12 22:24 | 只看该作者
  GPIO_WriteBit(GPIOB,GPIO_Pin_5,(BitAction)(1-GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_5)));

使用特权

评论回复
14
xxrs|  楼主 | 2021-1-12 22:29 | 只看该作者
哦,那我就知道怎么回事了,多谢大家

使用特权

评论回复
15
aoyi| | 2021-2-4 15:03 | 只看该作者
还是看一下电路图比较好

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

405

主题

7415

帖子

1

粉丝