当前位置: 首页 > news >正文

前端网站模板百度手机助手下载免费安装

前端网站模板,百度手机助手下载免费安装,网络营销的模式有哪些?,网推公司怎么收费STM32F4 GPIO输入模式配置 上一节讲GPIO的时候说到了将GPIO设置成输出模式,并通过将GPIO的电平拉高拉低控制LED灯的例程。GPIO除了用作输出功能之外,还可以用作输入功能。最常用的就是检测按键的输入电平。 硬件设计 本章的硬件是基于正点原子的探索者…

STM32F4 GPIO输入模式配置

上一节讲GPIO的时候说到了将GPIO设置成输出模式,并通过将GPIO的电平拉高拉低控制LED灯的例程。GPIO除了用作输出功能之外,还可以用作输入功能。最常用的就是检测按键的输入电平。

硬件设计

本章的硬件是基于正点原子的探索者ST32F407开发板进行开发。
在这里插入图片描述
可以看到开发板上接了4个按键,其中KEY0,KEY1,KEY2接了GND,当这3个按下时,GPIO将检测到一个低电平。WK_UP接了VCC,当按键按下时,GPIO将检测到一个高电平。

软件设计

GPIO配置成输入模式步骤

1、第一步要先把GPIO的时钟打开
2、将GPIO引脚设置成输入模式
3、读取GPIO电平状态

GPIO 操作函数

/**
函数作用:初始化一个GPIO
GPIOx:GPIO引脚所在的GPIO组
GPIO_InitStruct:GPIO对象的结构体 
**/
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);/**
函数作用:读取GPIO电平
GPIOx:GPIO引脚所在的GPIO组
GPIO_Pin:GPIO引脚
返回值:GPIO电平状态
**/
uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);

GPIO 对象结构体

typedef struct
{uint32_t GPIO_Pin;        // GPIO引脚GPIOMode_TypeDef GPIO_Mode;   // GPIO 模式GPIOSpeed_TypeDef GPIO_Speed;   // GPIO输出速率GPIOType_TypeDef GPIO_OType;  // GPIO输出类型GPIOPuPd_TypeDef GPIO_PuPd;    // GPIO上下拉模式
}GPIO_InitTypeDef;

GPIO 输入例程

首先要先将GPIO初始化成输入模式

#define KEY0_GPIO_CLK       RCC_AHB1Periph_GPIOE
#define KEY0_GPIO       GPIOE
#define KEY0_GPIO_PIN   GPIO_Pin_4
void bsp_key_init(void)
{GPIO_InitTypeDef GPIO_InitStruct;RCC_AHB1PeriphClockCmd(KEY0_GPIO_CLK,ENABLE); // 打开GPIOE时钟GPIO_InitStruct.GPIO_Pin = KEY0_GPIO_PIN; // GPIO引脚编号GPIO_InitStruct.GPIO_Mode = GPIO_Mode_IN;   // GPIO模式配置成输入模式GPIO_InitStruct.GPIO_Speed = GPIO_Speed_2MHz; // GPIO输出速度 2MHZGPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_UP; // GPIO设置上拉GPIO_Init(KEY0_GPIO,&GPIO_InitStruct); // 初始化GPIO
}

设置好GPIO为输入模式后,就可以在main函数中轮询GPIO的状态

int main(void)
{u8 key_flag = 0;system_tick_init();bsp_led_init();	 // 初始化ledbsp_key_init();  // 初始化按键while(1){// 轮询GPIO状态if(GPIO_ReadInputDataBit(KEY0_GPIO,KEY0_GPIO_PIN) == RESET) // 判断GPIO是否为低电平{delay_ms(50); // 延时if(GPIO_ReadInputDataBit(KEY0_GPIO,KEY0_GPIO_PIN) == RESET){GPIO_ToggleBits(LED_RED_GPIO,LED_RED_GPIO_PIN);}while(GPIO_ReadInputDataBit(KEY0_GPIO,KEY0_GPIO_PIN) != SET);}}}
http://www.ds6.com.cn/news/26143.html

相关文章:

  • 网站建设开发能力很强的企业美业推广平台
  • 网站开发项目付款方式seo是什么意思啊
  • oracle自带网站开发西安刚刚宣布
  • 个人兼职网站制作网站首页seo关键词布局
  • 手机老是下载一些做任务的网站东莞做网站推广公司
  • wordpress如何安装模板站长工具seo推广秒收录
  • 网站建设与开发做什么企业培训体系
  • 比较出名做耐克的网站网络营销的模式有哪些
  • 做网站网页需要什么5188关键词挖掘
  • 专做杰伦头像的网站it培训
  • 张掖网站建设百度seo推广计划类型包括
  • 给平顶山公安局做网站的公司搜索引擎有哪些
  • 深圳有什么做招聘网站的公司吗宁波网站排名优化seo
  • 四川建设网入川备案网站经典营销案例
  • wordpress上传图片不清楚seo培训一对一
  • 日照有做渔家网站的吗百度seo关键词优化公司
  • 网页设计基础心得体会磐石网站seo
  • 企业建站技术百度业务推广
  • 优跃达官网网站建设项目手机百度2020最新版
  • 做网站的费用计入什么费用制定营销推广方案
  • emlog wordpress北京seo排名公司
  • 肇庆市企业网站建设品牌小广告多的网站
  • 内网建设网站山西seo
  • 深圳市 网站建设450品牌推广方式都有哪些
  • 免费python在线正常网站怎么进行网络营销
  • php做的网站如何该样式长春最专业的seo公司
  • 靠谱的网站开发中国最新疫情最新消息
  • 昆明做网站建设公司seo快速排名优化方法
  • 燕郊医院网站建设seo舆情优化
  • 网站建设定制设计中国教育培训网