键盘

学习笔记之51单片机键盘篇(非编码键盘与编码键盘、非编码键盘的扫描方式、独立键盘、矩阵键盘 这篇博文主要记录51单片机键盘篇(非编码键盘与编码键盘、非编码键盘的扫描方式、独立键盘、矩阵键盘键盘消抖等)包含原理图、代码等(一)基础补充1.键盘的任务2.键盘的识别3.如何消除按键的抖动4.非编码键盘与编码键盘5.非编码键盘的扫描方式(1)查询扫描:(2)定时扫描:(3)中断扫描:(二)独立键盘1.独立键盘原理图2.独立键盘K1控制LED1代码实现(三)矩阵键盘1.矩阵键盘原理图2.矩阵键盘对应数码管输出0到代码实现 (一)基础补充 1.键盘的任务 (1)判别是否有键按下?若有,进入下一步。 (2)识 阅读详情

四种击键消息:WM_KEYDOWN、WM_KEYUP、WM_SYSKEYDOWN、WM_SYSKEYUP。一般与ALT键结合的击键会产生系统击键消息,交由Windows处理(D efWindowProc)。对所有四种消息,wParam是虚拟键码(Virtual Key Code),lParam是击键的其他信息。

 

虚拟键码是相对扫描码而言,键码宏定义在WINUSER.H,VK_开头。

 

lParam分为6个部分:

0~15位:重复次数。当按住键盘时,如果程序处理速度比Windows设置的响应频率慢时,Windows会把多次按键消息合并成一个消息,并累计重复次数。而WM_KEYUP和WM_SYSKEYUP重复次数总为1。

16~23位:OEM扫描码。除非用到物理层键盘时我们才会用到扫描码。

24位:扩展键标识

29位:Context Code

30位:前次击键状态。对WM_KEYUP和WM_KEYUP,该位总是1。对WM_KEYDOWN和WM_SYSKEYDOWN,如果前一次是释放置0,前次按下置1,表明按下后连续输入(typematic repeat)

31位:Transition State。按键消息为0,释放消息为1。

 

 

四种字符消息:WM_CHAR、WM_DEADCHAR、WM_SYSCHAR、WM_SYSDEADCHAR。WM_CHAR和WM_DEADCHAR由WM_KEYDOWN消息转化而来,另两种由WM_SYSKEYDOWN消息转化而来。Dead-Character消息是处理非英文键盘,一般我们只需要处理WM_CHAR消息,而不用管其他字符消息。字符消息的lParam与击键消息的意义相同,而wParam表示ANSI或UNICODE码而不是虚拟按键码。是ANSI还是UNICODE编码,由调用的注册窗口类决定(RegisterClassA对应ANSI,RegisterClassW对应UNICODE),也可用IsWindowUnicode(hwnd)查询。一些功能键、‘CTRL+字符’键也会产生字符消息,如退格键、回车键、退出键等。

 

字符消息和击键消息处理原则:字符消息中处理字符按键。击键消息处理光标控制键、功能键、插入键、删除键、Ctrl、Shift和Alt。对Tab、Enter、Esc、BackSpace这些既是功能键又会产生字符消息的,一般做为字符消息处理。

 

【STC89C52】独立键盘和矩阵键盘 基于STC89C52的独立键盘和矩阵键盘实验的学习笔记 阅读详情

相关推荐

键盘简史

这同样是自己三年前写的一点不成器的文字。不过由于是讲PC键盘的历史,所以什么时候发表都不算晚,哈哈,请分享: 大家每天都面对键盘敲击,我的生活可以说是键盘的受难史 ^_^ 那么你想不想知道当你按下一个键的时候,都发生了些什么事情呢?以及操作系统或者BIOS是如何处理这些事情的呢?如果你有这些想法,那么就来看看本文吧:1)A brief history of keyboard 键盘简史首先让

2379

js的keydown对应按键及其简单使用方法

js 里面的键盘事件经常用到,所以收集了键盘事件对应的键码来分享下: keyCode 8 = BackSpace BackSpace keyCode 9 = Tab Tab keyCode 12 = Clear keyCode 13 = Enter keyCode 16 = Shift_L keyCode 17 = Control_L keyCode 18 = Alt_L keyCode 19 =...

suger_yeezy的博客 7846

Android自定义键盘:数字键盘和字母键盘

在项目中,产品对于输入方式会有特殊的要求,需要对输入方式增加特定的限制,这就需要采用自定义键盘。本文主要讲述数字键盘和字母键盘的自定义实现。 项目地址:https://github.com/xudjx/djkeyboard 键盘效果: 自定义键盘的实现步骤如下: 自定义CustomKeyboard, 继承自系统Keyboard,实现KeyboardView.OnKeyboardAction

xudjx的博客 3091

KeyDown,KeyPress 和KeyUp详解

  Windows窗体通过引发键盘事件来处理键盘输入以响应Windows消息,大多数Windows窗体应用程序都通过处理键盘事件来以独占方式处理键盘输入。1.按键的类型  Windows窗体将键盘输入标识为由按位Keys枚举表示的虚拟键代码。使用Keys枚举,可以综合一系列按键以生成单个值,这些值与WM_KEYDOWN和WM_SYSKEYDOWNWindows消息所伴随的值相对应。另外,程

wnety的专栏 1675

win10 键盘定义

惯用Mac键盘之后,再切换回win10键盘不适应,表现为ctrl 和arlt 键盘位置。更改window注册表Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,...

云轻云淡的专栏 3927

C++工作笔记-WM_KEYFIRST和WM_KEYDOWN的用法

转载地址如下:http://www.xuebuyuan.com/1544382.html在讲这两个标识符的作用开始,先小感慨下:遇到问题,不要急着百度,请充分利用好VC++的中的各种头文件    在VC中,右击"WM_KEYFIRST"字符,选择“转向WM_KEYFIRST的定义”,VC自动跳转到定义这两个标识符的头文件WINUER.H,代码如下:#define WM_KEYFIRST      ...

IT1995的博客 1万+

那些好用过头的键盘

一个好看又耐用的键盘

qq_774952435的博客 1万+

关于键盘

键盘是指经过系统安排操作一台机器或设备的一组键,主要的功能是输入数据。电脑键盘是电脑的外设之一,由打字机键盘发展而来。通过键盘可以输入字符,也可以控制电脑的运行。依照键盘上的按键数,可分为101键和104键两种,而104个按键键盘又称为Windows 95键盘 通常,电脑键盘由矩形或近似矩形的一组按钮或者称为“键”组成,键的上面印有字符。大部分情况下,按下一个键就打出对应的一...

a82320的博客 2134

键盘详解

文章目录键盘分类机械键盘性能指标轴体分类 键盘属于最常用也是最主要的输入设备 键盘键数一般分为 84键/101键/104键。其实还有83键/96键/107键等 例如:107键就是为贴合日语输入法单独的增加了三个键,毕竟几乎用不到,这些键数的区别最常见的就是在小数字键盘上面 , 键数少的键盘大多数是没有小数字键盘的,其次就是功能组合键上面,有时会结合Fn键来进行组合键达到指定效果。 键盘分类 按照接口连接方式分类 PS2(圆头) USB 无线(接收器或者蓝牙)。 按照工作原理及轴体分类 机械

天宇龙腾的博客 3765

iOS 键盘高度及获取键盘高度的方法

一、获取键盘高度的方法: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. //增加监听,当键盘出现或改变时接收消息 //加一个textField,以便可以弹出键盘 UITextField* textFiel...

baihailing的博客 1万+

iOS键盘类型及高度

一、键盘类型  UIKit框架支持8种风格键盘。 typedef enum {       UIKeyboardTypeDefault,                // 默认键盘:支持所有字符        UIKeyboardTypeASCIICapable,           // 支持ASCII的默认键盘        UIKeyboa...

ochenmengo的博客 8231

键盘故障检测工具:全面检测键盘功能

键盘检测器是一种专门用于检测键盘状态和性能的工具,旨在帮助用户及时发现键盘的问题并进行适当的维护。它不仅可以检测键位是否正常响应,还包括键盘的连击、卡键以及其他硬件问题的诊断。自动检测技术起源于20世纪工业自动化领域,其最初目的是为了提高生产效率和保证产品质量。随着技术的进步,自动检测逐渐扩展到了IT领域,特别是在硬件性能测试和故障排查方面。自动检测技术的发展经历了从最初的逻辑分析仪、示波器等基础工具,到目前基于软件的高级诊断和监控工具。

weixin_33812391的博客 1799

键盘 - 键盘样式风格有关设置

UIKit框架支持8种风格键盘

CatStarXcode的博客 4193

计算机键盘的认识,认识键盘和使用键盘的方法

1、键盘简介如果把电脑显示器比作手机的屏幕,那么键盘可以比作手机的按键,它是电脑重要的输入设备之一。键盘包括主键盘区、功能键区、编辑键区、辅助键区和状态指示灯。(一)主键盘区主键盘区是键盘的主体部分,包括26个字母键、10个数字键、21个符号键和14个控制键,共71个键位,主要用于在文档中输入数字、文字和符号等文本,如上图的主键盘区所示:下面对几个特殊的键及用法作简单介绍①空格键:空格键是键盘上最...

weixin_35078549的博客 4016

计算机键盘无法使用怎么处理,为什么键盘不能用 键盘不能用怎么办

随着技术的进步,现在办公大多都是通过电脑完成的,在使用电脑的过程中,键盘和鼠标是最容易出现故障的外接设备。今天我们就来给大家分析最常见的键盘失灵后该怎么办。下面我们就先来看看为什么键盘不能用,该怎么维修吧,希望我们提供的维修检查方法能够帮助您尽快解决问题。【为什么键盘不能用】一、键盘连接线键盘不能用很多用户日常使用中,会发现突然之间键盘按键全部无效,键盘状态指示灯伴随按键失灵同时熄灭。用户在移动键...

weixin_33517451的博客 1万+

Flutter 自定键盘键盘解决方案

Flutter 自定键盘键盘解决方案 前言: 目前Flutter官方是没有自定义键盘的解决方案 但是我们有时候需要用到它,比如金额键盘,安全密码键盘,各种自定义快速输入键盘 于是我便写了一个自定义键盘的插件,由于是通过拦截PlatformChannel实现的,所以可以无缝对接TextFiled等Flutter自带的输入框 GitHub链接 效果 使用方法: 安装依赖 dependencies: ...

weixin_34273479的博客 3800

apple键盘的home键_如何在Apple TV上使用蓝牙键盘

apple键盘的home键Just like you can pair a Bluetooth controller to your Apple TV to make gaming easier, you can pair a Bluetooth keyboard to make entering text easier. Here are a fewgreat Bluetooth keyboa...

culinxia2707的博客 7441
上一篇: PeekMessage与GetMessage
下一篇: 光标(Caret)
Welson80
博客等级 码龄18年 14粉丝 13原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值