键盘无法使用的情况解决 (代码 19)

又发生了键盘没法使用的情况。

系统没有其他问题,鼠标正常使用,查杀木马无果,除了开机的时候可以使用F2进安全模式外,进入Windwos 系统后就不能使用键盘了。

怎么办呢?既然软件系统方面表现正常,会不会是硬件故障呢?

果然,打开设备管理器后,看到键盘那项里有一个惊叹号!哈哈!

双击后打开属性对话框,里面有提示:

由于其配置信息(注册表中的)不完整或已损坏,Windows 无法启动这个硬件设备。(代码 19)

卸载该设备,再重新扫描硬件更新,问题依旧。忽然想起不知道在什么地方看到过类似的问题,赶紧Google一下,找到解决方法:

1. 打开注册表regedit,定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}项,删除UpperFilters项。

2. 在设备管理器卸载设备,再重新扫描硬件更新,依旧是个惊叹号,
但提示内容已变成:(代码 10)该设备无法启动。

3. 再次打开注册表,定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}项,添加字符串UpperFilters项,内容是kbdclass。

4. 这次要重新启动一下系统。OK!问题解决。


在Class下面有许多类似{4D36E96B-E325-11CE-BFC1-08002BE10318}的项,分别代表键盘、声音、调制解调器等外设的,点击该项后可以在右边看到详细描述。看来这个注册表项很有用,估计其他的外设出问题时也可以使用类似的方法解决。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
好的,这是一个比较简单的问题。首先,你需要将4x4矩阵键盘与数码管连接起来。然后,你需要编写一个程序,将键盘输入的数字显示在数码管上。 以下是一个可能的解决方案: 1. 定义4x4矩阵键盘和数码管的引脚 2. 设置键盘引脚为输入模式,设置数码管引脚为输出模式 3. 编写一个循环,在每次循环中读取键盘输入 4. 根据键盘输入,计算出对应的数码管显示的数字 5. 输出数字到数码管上 下面是一个简单的代码示例: ``` int keypad_pins[4][4] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16} }; int display_pins[4] = {17, 18, 19, 20}; void setup() { // 设置引脚模式 for (int i=0; i<4; i++) { for (int j=0; j<4; j++) { pinMode(keypad_pins[i][j], INPUT); } } for (int i=0; i<4; i++) { pinMode(display_pins[i], OUTPUT); } } void loop() { // 读取键盘输入 int row, col; for (row=0; row<4; row++) { digitalWrite(row, LOW); for (col=0; col<4; col++) { if (digitalRead(keypad_pins[row][col]) == LOW) { // 计算出数字 int number = row*4 + col + 1; // 显示数字 displayNumber(number); // 稍微延迟一下 delay(100); } } digitalWrite(row, HIGH); } } void displayNumber(int number) { // 数字转成4位二进制数 int binary[4]; for (int i=0; i<4; i++) { binary[i] = number % 2; number = number / 2; } // 在数码管上显示 for (int i=0; i<4; i++) { digitalWrite(display_pins[i], binary[i]); } } ``` 这个程序可以将键盘输入的数字显示在数码管上,从1到16。当你按下键盘上的数字按钮时,对应的数字将会显示在数码管上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值