c语言键盘按键触发怎么表示

c语言键盘按键触发怎么表示,第1张

可以用FlexibleButton表示。

FlexibleButton 是一个基于标准 C 语言的小巧灵活的按键处理库,支持单击、连击、短按、长按、自动消抖,可以自由设置组合按键,可用于中断和低功耗场景。

该按键库解耦了具体的按键硬件结构,理论上支持轻触按键与自锁按键,并可以无限扩展按键数量。另外,FlexibleButton 使用扫描的方式一次性读取所有所有的按键状态,然后通过事件回调机制上报按键事件。

核心的按键扫描代码仅有三行,没错,就是经典的 三行按键扫描算法。使用 C 语言标准库 API 编写,也使得该按键库可以无缝兼容任意的处理器平台,并且支持任意 OS 和 non-OS(裸机编程)。

快速体验:

FlexibleButton 库中提供了一个测试例程 ./examples/demo_rtt_iotboard.c,该例程基于 RT-Thread OS 进行测试,硬件平台选择了 RT-Thread IoT Board Pandora v2.51 开发板。

当然你可以选择使用其他的 OS,或者使用裸机测试,只需要移除 OS 相关的特性即可。

如果你使用自己的硬件平台,只需要将 FlexibleButton 库源码和例程加入你既有的工程下即可。

DEMO 程序说明:

该示例程序可以直接在 RT-Thread stm32l475-atk-pandora BSP 中运行,可以在该 BSP 目录下,使用 menuconfig 获取本软件包。

现在来看看,c语言运行按钮如何编译。

设备:联想电脑

系统:win8

软件:VC ++6.0

1、首先启动编译软件程序,点击编译程序。

2、接下来点击链接程序按钮。

3、然后点击运行按钮。

4、也可以按下快捷键运行。此时,页面之中将会d出一个命令提示符,运行编译完成了。

主要就是按键检测,防抖呗。

首先给出检测按键代码:(我这个事4*4键盘。具体你要根据实际情况编写)

uchar TestKey()

{

uchar cord_h,cord_l

P6=0x0f

cord_h=P6&0x0f

if(cord_h!=0x0f)

{

Delay_Xms(1)

if(cord_h!=0x0f)

{

cord_h=P6&0x0f

P6=cord_h|0xf0

cord_l=P6&0xf0

return(cord_h+cord_l)

}

}return(0xff)

}

--------------------------------------

然后你在Main函数里编写循环,检测按键然后做你想做的事情。。。

while(1)

{

key=TestKey()//调用键盘扫描,

switch(key)

{

case 0x7e:P4=0xa1break//0 按下相应的键显示相对应的码值

case 0x7d:Show1Menu()break//1

case 0x7b:P4=0x83break//2

case 0x77:P4=0x88break//3

case 0xbe:P4=0x99break//4

case 0xbd:P4=0x90break//5

case 0xbb:P4=0x82break//6

case 0xb7:P4=0xb0break//7

case 0xde:P4=0xc0break//8

case 0xdd:P4=0x80break//9

case 0xdb:P4=0x92break//a

case 0xd7:P4=0xa4break//b

case 0xee:P4=0xc6break//c

case 0xed:P4=0xf8break//d

case 0xeb:P4=0x99break//e

case 0xe7:P4=0xf9break//f

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11135628.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存