历史上的今天

今天是:2024年09月05日(星期四)

正在发生

2019年09月05日 | STM32F103程序设计-6-引脚输入功能-按键(查询)

发布者:BlissfulBliss 来源: eefocus关键字:STM32F103  引脚输入  按键  查询 手机看文章 扫描二维码
随时随地手机看文章

检测单片机引脚上的电平,即使用单片机的输入功能。把上次的例程中初始化控制LED的GPIO口的部分拿出来放到一个函数LED_Iint( )中。注意,初始化时先在LED_Iint( )的最后点亮LED,目的是为了验证初始化部分是成功的,之后再改写程序为熄灭LED。用途:分隔故障。


KEY_Init( )初始化函数中注意如何把GPIO口配置为输入口,而且本例程中由于外部没有外接上拉电阻,所以还要配置为带内部上拉的输入口。


void KEY_Init()


{


/* GPIO Periph clock enable */


  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD, ENABLE);




/* Configure PC13 and PD3 in output pushpull mode */


  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;


  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;


  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;


  GPIO_Init(GPIOC, &GPIO_InitStructure);




GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;


  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;


  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;


GPIO_Init(GPIOD, &GPIO_InitStructure);


}


Stm32f10x_gpio.c文件中有许多API,其中:


uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);用于读取某个引脚电平的函数。


关键字:STM32F103  引脚输入  按键  查询 引用地址:STM32F103程序设计-6-引脚输入功能-按键(查询)

上一篇:STM32基础知识3-STM32串口USART1的使用方法和程序
下一篇:STM32F103程序设计-1-STM32开发环境的建立

推荐阅读

目前随着ADAS功能模块渗透率不断提升,短期内传感器市场的需求将主要被摄像头和毫米波雷达所驱动;而L3级别自动驾驶的奥迪A8量产给了整个汽车行业一剂强心剂,自动驾驶的进程比想象中来的要早,各个传感器以及控制系统都在迅速迭代中;2020年前后,L4级别自动驾驶量产上路,激光雷达的市场将会迅速扩大。由于各个主要传感器特性使然,单一种类传感器无法胜...
Teledyne e2v,Teledyne Technologies [NYSE:TDY] 旗下的全球成像解决方案创新公司,宣布推出其 Flash CMOS 图像传感器系列,该系列专为 3D 激光轮廓分析/位移分析应用和高速、高分辨率检测量身定制。 新款 Flash 传感器采用 6μm CMOS 全局快门像素,有效地结合了高分辨率和高帧率。提供 4k 或 2k 水平解析度,畫面播放速率各為 1800f...
第三代半导体外延代工服务商南京百识电子科技有限公司(以下简称“百识电子”)日前宣布超募完成Pre-A轮融资,融资总额过亿元人民币。本轮融资仍由和利资本领投,台达电等知名投资方跟投。融资主要将用于建厂及生产设备购入。由于第三代半导体材料特性带来的终端系统性能和成本优势,终端市场借由行动装置电源适配器、5G基站PA、无人机微波应用、动车OBC及...
继8月11日奥迪发布Skysphere概念车之后,奥迪Grandsphere概念车于9月3日凌晨(北京时间)正式首发。该车是奥迪用于展示电动豪华未来愿景的三款“Sphere”系列概念车中的第二款,将在下周开幕的2021 IAA展会上正式亮相。奥迪Grandsphere概念车的目标,是打造“未来头等舱”,并给予前排驾乘者更加自由的空间。奥迪 Grandsphere ( 参数 | 询价 ) 概念车的车...

史海拾趣

问答坊 | AI 解惑

ATMEGA64的工作电流范围是多少?

ATMEGA64的工作电流范围是多少? 急!!!!!!!!…

查看全部问答∨

大学毕业五年决定你的命运

出来匝道的各位工程师看看吧!也许对各位有所帮助!!…

查看全部问答∨

mini2440在开机或者复位的时候按下开发板上的 K1-K6任意按键,请教问题

请教! 呵呵,搞了半天 没反应 mini2440在开机或者复位的时候按下开发板上的 K1-K6任意按键,这样我们就进入了vivi 模式 可是我按了半天还是出不来,大家有人做过的吧?教教我呢,谢谢了!…

查看全部问答∨

关于新建BSP的问题

现在我手头有块SMDK2442的开发板和BSP,一切都可以正常工作;我又重新做了一个开发板,也是用2442的,比方说,就叫做MV2442吧,我想新建一个BSP,但我又不想破坏之前的SMDK2442的BSP,就是说,我想克隆一个BSp,在我的工程下有两个BSP,当编译SMDK2 ...…

查看全部问答∨

ARM2410开发矩阵键盘问题!

我在编译矩阵键盘驱动程序时,出现以下错误信息,始终找不到答案,请各位帮忙! c:\\wince420\\pbworkplace\\smdk2410\\iicdev\\i2cdev-keyboard.cpp(11) : fatal error C1083: Cannot open include file: \'C:\\WINCE420\\PBWorkSpace\\smdk2410\ ...…

查看全部问答∨

请问高手,UI(用户接口)和驱动程序交互

最近在做一个打印用户接口插件,主要是想控制打印驱动,在打印时使用的分辨率(DPI),打印的色彩, 以及输出路径(一个虚拟打印机)等信息。 请问如何把这些参数传递给打印驱动程序呢?     希望能把整个过程描述一下。谢谢!!…

查看全部问答∨

使用WinDbg分析dump文件时遇到的问题

longhorn系统下的minidump文件 使用kd进行分析时,总出现符号错误,如下: ************************************************************************* ***                  &n ...…

查看全部问答∨

FPGA中如何调用嵌入式乘法器硬核?

FPGA中调用乘法器,直接可以用语言调用,例如   VERILOG  a=bXC;   VHDL        a=b*c;   也可以直接调用IP CORE ,把需要的乘数和被乘数作为参数传递进去,即可。   但是 ...…

查看全部问答∨

【请教】msp430的spi的如何清空Data shift register

麻烦大家了,问了好多关于这个的问题 我用dsp与msp430通信,发生数据位偏移现象 我发现很有可能是由于在一开始dsp前期的一些操作中(还没有开始spi通讯时),会产生2个CLK时钟,让Data shift register预先的偏移2位,开始spi通讯以后,每个数据都 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved