打印
[应用相关]

[stm32] 按键

[复制链接]
288|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
deadtime|  楼主 | 2020-1-1 16:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/*
::按键控制
PA8接LED,PE2接按键
*/
#include"stm32f10x.h"
void RCC_Configuration(void);
void GPIO_Config(void);
void Delay(__IO uint32_t nCount);

int main()
{
  RCC_Configuration();                   //系统时钟配置|使能GPIO口
  GPIO_Config();                            //LED控制配置
  while (1)
  {
      if(!GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_2))
    {
         Delay(0x000FF);//延时防抖
        if(!GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_2))
        {
            GPIO_WriteBit(GPIOA,GPIO_Pin_8,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOA,GPIO_Pin_8)));
        }
    }
  }
}
/****************************************************************************
* 名    称:void GPIO_Config(void)
* 功    能:GPIO初始化函数
* 入口参数:无
* 出口参数:无
* 说    明:
* 调用方法:无
****************************************************************************/
void GPIO_Config(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;    //配置LEDA8                  
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//推挽输出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        
  GPIO_Init(GPIOA, &GPIO_InitStructure);
  
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;    //配置按键PE2         
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;//上拉输入
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        
  GPIO_Init(GPIOE, &GPIO_InitStructure);
}
/****************************************************************************
* 名    称:void RCC_Configuration(void)
* 功    能:系统时钟配置为72MHZ|使能GPIO口
* 入口参数:无
* 出口参数:无
* 说    明:
* 调用方法:无
****************************************************************************/
void RCC_Configuration(void)
{   
  SystemInit();
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA |RCC_APB2Periph_GPIOE, ENABLE);//使能GPIO口
}
/****************************************************************************
* 名    称:void Delay(__IO uint32_t nCount)
* 功    能:延时函数
* 入口参数:无
* 出口参数:无
* 说    明:
* 调用方法:无
****************************************************************************/
void Delay(__IO uint32_t nCount)
{
   for(; nCount != 0; nCount--);
}


使用特权

评论回复
沙发
mmuuss586| | 2020-1-16 10:03 | 只看该作者
感谢分享

使用特权

评论回复
板凳
磨砂| | 2020-2-3 10:43 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
地板
晓伍| | 2020-2-3 10:49 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
5
八层楼| | 2020-2-3 10:53 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
6
观海| | 2020-2-3 10:58 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
7
guanjiaer| | 2020-2-3 11:03 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
8
heimaojingzhang| | 2020-2-3 11:06 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
9
keaibukelian| | 2020-2-3 11:12 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
10
labasi| | 2020-2-3 11:16 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
11
paotangsan| | 2020-2-3 11:22 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
12
renzheshengui| | 2020-2-3 11:27 | 只看该作者
非常感谢楼主分享

使用特权

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

本版积分规则

44

主题

470

帖子

2

粉丝