fx-991CN X bug笔记——键盘篇

众所周知,有一种鉴别盗版计算器的方法叫做四按一松。在正版计算器上,按住1,接着按住0、等于、减号,接着松开1,会发现打出cos。本文讲述了其原理。

矩阵键盘

为了方便,计算器用7根输出线(称为KO线)与8根输入线(称为KI线)读取键盘输入。每个键对应两两不同的唯一的一对KO与KI。如果键按下,会连通对应的KI与KO。反过来,如果对应的KI与KO连通,那么认为键按下。

991cnx 各个键所对应的KI与KO
键与KI与KO的对应关系,和键盘排布类似

 为了节约,计算器没设计区分直接还是间接连通的方法。因此,如果按住0、等于、减号,那么cos就会被认为按下。

键盘输入

在处理键盘输入时,计算器一般好像是这样处理的:

  • 从小到大遍历每条KO:
    • 将这条KO设为低电平,其他设为高电平
    • 从大到小遍历每条KI:
      • 如果这条KI是低电平:
        • 发现对应按键按下,程序结束

实际上,等先前一个键松开后,才会检测其他键。如按住1,接着按住3、4、6、9,松开1,松开3后才会打出7。

这就能解释开头的问题了:松开1后,有0、等号、减号按下,KO5连通KI1连通KO7连通KI5,因此cos最先被检测出。

自检模式

当开机时,如果KO1只连通KI中的KI8与KI3(对应按键SHIFT与7),那么会显示自检屏幕。下一篇文章内讲了自检模式。

自检模式文章icon-default.png?t=O83Ahttps://blog.csdn.net/weixin_67572129/article/details/142425133

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值