CN106998207A - 一种应用于pos系统的扫描按键方法 - Google Patents
一种应用于pos系统的扫描按键方法 Download PDFInfo
- Publication number
- CN106998207A CN106998207A CN201710044981.3A CN201710044981A CN106998207A CN 106998207 A CN106998207 A CN 106998207A CN 201710044981 A CN201710044981 A CN 201710044981A CN 106998207 A CN106998207 A CN 106998207A
- Authority
- CN
- China
- Prior art keywords
- row
- stitch
- default
- scanned
- scan
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M11/00—Coding in connection with keyboards or like devices, i.e. coding of the position of operated keys
- H03M11/20—Dynamic coding, i.e. by key scanning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
本发明公开了一种应用于POS系统的扫描按键方法,涉及POS机程序领域。所述方法:预先设置根据历史按键的行列电平输入状态数据获得的键盘按键表;当有按键按下时,调用按键扫描函数,随机选取预设扫描方法得到当前被扫描行或列的电平数据;所述预设扫描方法包括:拉高扫描列方法、拉低扫描列方法、拉高扫描行方法、拉低扫描行方法;在预先设置的键盘按键表的基础上,结合当前被扫描行或列的电平数据,获得被按下的按键并存入缓存区,完成一次按键的扫描。使用本发明所述方法在按键扫描过程中随机使用不同预设扫描方法,避免键盘侧录等方式对按键扫描过程的攻击,保证了数据的安全性。
Description
技术领域
本发明涉及POS机程序领域,尤其涉及一种应用于POS系统的扫描按键方法。
背景技术
随着刷卡或二维码消费的增多,POS机应用也越来越广泛。进行刷卡或二维码消费时,需要键入支付密码,而诸如键盘侧录等方式会攻击POS机系统,盗取用户的支付密码和支付账户,造成在POS机系统上消费用户的财产损失。
发明内容
本发明的目的在于提供一种应用于POS系统的扫描按键方法,从而解决现有技术中存在的前述问题。
为了实现上述目的,本发明所述应用于POS系统的扫描按键方法,所述方法:
S1,预先设置根据历史按键的行列电平输入状态数据获得的键盘按键表;
S2,当有按键按下时,调用按键扫描函数,随机选取预设扫描方法得到当前被扫描行或列的电平数据;
所述预设扫描方法包括:拉高扫描列方法、拉低扫描列方法、拉高扫描行方法、拉低扫描行方法;
S3,在预先设置的键盘按键表的基础上,结合当前被扫描行或列的电平数据,获得被按下的按键并存入缓存区,完成一次按键的扫描。
优选地,相邻两次按键扫描的时间间隔为10毫秒。
优选地,所述预设扫描方法为拉高扫描列方法,具体包括以下步骤:
A1,判断列当前计数是否小于预设列的最大计数,如果是,则进入A2;如果否,则记录当前按键的状态数据;
A2,设置所有列和所有行所对应针脚的电阻下拉,设置所有列和所有行所对应针脚为输入;
A3,设置被扫描列所对应针脚为输出,设置被扫描列所对应针脚为高电平;
A4,判断行的计数是否小于预设行的最大计数,如果是,则记录被扫描行对应针脚输出高电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回A1。
优选地,所述预设扫描方法为拉低扫描列方法,具体包括以下步骤:
B1,判断列当前计数是否小于预设列的最大计数,如果是,则进入B2;如果否,则记录当前按键的状态数据;
B2,设置所有列和所有行所对应针脚的电阻上拉,设置所有列和所有行所对应针脚为输入;
B3,设置被扫描列所对应针脚为输出,设置被扫描列所对应针脚为低电平;
B4,判断行的计数是否小于预设行的最大计数,如果是,则记录被扫描行对应针脚输出低电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回B1。
优选地,所述预设扫描方法为拉高扫描行方法,具体包括以下步骤:
C1,判断行当前计数是否小于预设行的最大计数,如果是,则进入C2;如果否,则记录当前按键的状态数据;
C2,设置所有列和所有行所对应针脚的电阻下拉,设置所有列和所有行所对应针脚为输入;
C3,设置被扫描行所对应针脚为输出,设置被扫描行所对应针脚为高电平;
C4,判断列的计数是否小于预设列的最大计数,如果是,则记录被扫描列对应针脚输出高电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回C1。
优选地,所述预设扫描方法为拉低扫描行方法,具体包括以下步骤:
D1,判断行当前计数是否小于预设行的最大计数,如果是,则进入D2;如果否,则记录当前按键的状态数据;
D2,设置所有列和所有行所对应针脚的电阻上拉,设置所有列和所有行所对应针脚为输入;
D3,设置被扫描行所对应针脚为输出,设置被扫描行所对应针脚为低电平;
D4,判断列的计数是否小于预设列的最大计数,如果是,则记录被扫描列对应针脚输出低电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回D1。
优选地,在步骤S3之后还包括以下步骤:
S4,检测缓存区中是否有新更新的按键,如果有,则检测是否需要播放按键音;如果是,则播放按键音;如果否,则不播放按键音;
在检测是否需要播放按键音的同时,唤醒读取按键的线程。
本发明的有益效果是:
使用本发明所述方法在按键扫描过程中随机使用不同预设扫描方法,避免键盘侧录等方式对按键扫描过程的攻击,保证了数据的安全性。
附图说明
图1是应用于POS系统的扫描按键方法的流程示意图;
图2是拉高扫描列方法的流程示意图;
图3是拉低扫描列方法的流程示意图;
图4是拉高扫描行方法的流程示意图;
图5是拉低扫描行方法的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
实施例
本实施例所述应用于POS系统的扫描按键方法,所述方法:
S1,预先设置根据历史按键的行列电平输入状态数据获得的键盘按键表;
S2,当有按键按下时,调用按键扫描函数,随机选取预设扫描方法得到当前被扫描行或列的电平数据;
所述预设扫描方法包括:拉高扫描列方法、拉低扫描列方法、拉高扫描行方法、拉低扫描行方法;
S3,在预先设置的键盘按键表的基础上,结合当前被扫描行或列的电平数据,获得被按下的按键并存入缓存区,完成一次按键的扫描;
S4,检测缓存区中是否有新更新的按键,如果有,则检测是否需要播放按键音;如果是,则播放按键音;如果否,则不播放按键音;在检测是否需要播放按键音的同时,唤醒读取按键的线程。
更详细的解释说明为:
(一)相邻两次按键扫描的时间间隔为10毫秒。
(二)
1、所述预设扫描方法为拉高扫描列方法,具体包括以下步骤:
A1,判断列当前计数是否小于预设列的最大计数,如果是,则进入A2;如果否,则记录当前按键的状态数据;
A2,设置所有列和所有行所对应针脚的电阻下拉,设置所有列和所有行所对应针脚为输入;
A3,设置被扫描列所对应针脚为输出,设置被扫描列所对应针脚为高电平;
A4,判断行的计数是否小于预设行的最大计数,如果是,则记录被扫描行对应针脚输出高电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回A1。
2、所述预设扫描方法为拉低扫描列方法,具体包括以下步骤:
B1,判断列当前计数是否小于预设列的最大计数,如果是,则进入B2;如果否,则记录当前按键的状态数据;
B2,设置所有列和所有行所对应针脚的电阻上拉,设置所有列和所有行所对应针脚为输入;
B3,设置被扫描列所对应针脚为输出,设置被扫描列所对应针脚为低电平;
B4,判断行的计数是否小于预设行的最大计数,如果是,则记录被扫描行对应针脚输出低电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回B1。
3、所述预设扫描方法为拉高扫描行方法,具体包括以下步骤:
C1,判断行当前计数是否小于预设行的最大计数,如果是,则进入C2;如果否,则记录当前按键的状态数据;
C2,设置所有列和所有行所对应针脚的电阻下拉,设置所有列和所有行所对应针脚为输入;
C3,设置被扫描行所对应针脚为输出,设置被扫描行所对应针脚为高电平;
C4,判断列的计数是否小于预设列的最大计数,如果是,则记录被扫描列对应针脚输出高电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回C1。
4、所述预设扫描方法为拉低扫描行方法,具体包括以下步骤:
D1,判断行当前计数是否小于预设行的最大计数,如果是,则进入D2;如果否,则记录当前按键的状态数据;
D2,设置所有列和所有行所对应针脚的电阻上拉,设置所有列和所有行所对应针脚为输入;
D3,设置被扫描行所对应针脚为输出,设置被扫描行所对应针脚为低电平;
D4,判断列的计数是否小于预设列的最大计数,如果是,则记录被扫描列对应针脚输出低电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回D1。
本发明所述方法由中央处理器负责解码,需要用到针脚的上拉或下拉电阻、一个中断、一个硬件定时器。每次中断时扫描按键一次,同时激活定时器,定时器每十毫秒触发一次,每次也扫描按键一次,当按键解码完成不再需要继续扫描时,会自动关闭该定时器。
扫描按键时,按扫描行或扫描列对应的通用输入输出针脚的上拉或下拉电阻分类,共有四种扫描按键方法,分别为:拉高扫描列方法、拉低扫描列方法、拉高扫描行方法、拉低扫描行方法,在程序撰写时,赋予上述四种方法唯一的编码号。
每次扫描按键时,从四个编码号中随机选取编码号,保证了每个按键不会和某一特定的时序相对应,增加了攻击的难度。
通过采用本发明公开的上述技术方案,得到了如下有益的效果:
使用本发明所述方法在按键扫描过程中随机使用不同预设扫描方法,避免键盘侧录等方式对按键扫描过程的攻击,保证了数据的安全性。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (7)
1.一种应用于POS系统的扫描按键方法,其特征在于,所述方法:
S1,预先设置根据历史按键的行列电平输入状态数据获得的键盘按键表;
S2,当有按键按下时,调用按键扫描函数,随机选取预设扫描方法得到当前被扫描行或列的电平数据;
所述预设扫描方法包括:拉高扫描列方法、拉低扫描列方法、拉高扫描行方法、拉低扫描行方法;
S3,在预先设置的键盘按键表的基础上,结合当前被扫描行或列的电平数据,获得被按下的按键并存入缓存区,完成一次按键的扫描。
2.根据权利要求1所述应用于POS系统的扫描按键方法,其特征在于,相邻两次按键扫描的时间间隔为10毫秒。
3.根据权利要求1所述应用于POS系统的扫描按键方法,其特征在于,所述预设扫描方法为拉高扫描列方法,具体包括以下步骤:
A1,判断列当前计数是否小于预设列的最大计数,如果是,则进入A2;如果否,则记录当前按键的状态数据;
A2,设置所有列和所有行所对应针脚的电阻下拉,设置所有列和所有行所对应针脚为输入;
A3,设置被扫描列所对应针脚为输出,设置被扫描列所对应针脚为高电平;
A4,判断行的计数是否小于预设行的最大计数,如果是,则记录被扫描行对应针脚输出高电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回A1。
4.根据权利要求1所述应用于POS系统的扫描按键方法,其特征在于,所述预设扫描方法为拉低扫描列方法,具体包括以下步骤:
B1,判断列当前计数是否小于预设列的最大计数,如果是,则进入B2;如果否,则记录当前按键的状态数据;
B2,设置所有列和所有行所对应针脚的电阻上拉,设置所有列和所有行所对应针脚为输入;
B3,设置被扫描列所对应针脚为输出,设置被扫描列所对应针脚为低电平;
B4,判断行的计数是否小于预设行的最大计数,如果是,则记录被扫描行对应针脚输出低电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回B1。
5.根据权利要求1所述应用于POS系统的扫描按键方法,其特征在于,所述预设扫描方法为拉高扫描行方法,具体包括以下步骤:
C1,判断行当前计数是否小于预设行的最大计数,如果是,则进入C2;如果否,则记录当前按键的状态数据;
C2,设置所有列和所有行所对应针脚的电阻下拉,设置所有列和所有行所对应针脚为输入;
C3,设置被扫描行所对应针脚为输出,设置被扫描行所对应针脚为高电平;
C4,判断列的计数是否小于预设列的最大计数,如果是,则记录被扫描列对应针脚输出高电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回C1。
6.根据权利要求1所述应用于POS系统的扫描按键方法,其特征在于,所述预设扫描方法为拉低扫描行方法,具体包括以下步骤:
D1,判断行当前计数是否小于预设行的最大计数,如果是,则进入D2;如果否,则记录当前按键的状态数据;
D2,设置所有列和所有行所对应针脚的电阻上拉,设置所有列和所有行所对应针脚为输入;
D3,设置被扫描行所对应针脚为输出,设置被扫描行所对应针脚为低电平;
D4,判断列的计数是否小于预设列的最大计数,如果是,则记录被扫描列对应针脚输出低电平时,当前被扫描列和被扫描行所对应的按键状态数据;如果否,则返回D1。
7.根据权利要求1所述应用于POS系统的扫描按键方法,其特征在于,在步骤S3之后还包括以下步骤:
S4,检测缓存区中是否有新更新的按键,如果有,则检测是否需要播放按键音;如果是,则播放按键音;如果否,则不播放按键音;
在检测是否需要播放按键音的同时,唤醒读取按键的线程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710044981.3A CN106998207A (zh) | 2017-01-20 | 2017-01-20 | 一种应用于pos系统的扫描按键方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710044981.3A CN106998207A (zh) | 2017-01-20 | 2017-01-20 | 一种应用于pos系统的扫描按键方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106998207A true CN106998207A (zh) | 2017-08-01 |
Family
ID=59430926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710044981.3A Pending CN106998207A (zh) | 2017-01-20 | 2017-01-20 | 一种应用于pos系统的扫描按键方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106998207A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109598872A (zh) * | 2018-12-06 | 2019-04-09 | 深圳市新国都支付技术有限公司 | 通过模拟波形对键盘施加干扰信号的方法和系统 |
CN111145394A (zh) * | 2019-12-20 | 2020-05-12 | 上海爱信诺航芯电子科技有限公司 | 电容触控按键的扫描控制方法与扫描控制装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1548947A1 (en) * | 2003-12-22 | 2005-06-29 | Banksys S.A. | A method and a device for reading out keyboard keys. |
CN101951263A (zh) * | 2010-10-22 | 2011-01-19 | 刘利华 | 一种按键扫描方法及系统 |
CN101958717B (zh) * | 2010-09-29 | 2013-04-03 | 惠州Tcl移动通信有限公司 | 一种按键扫描的方法及按键扫描装置 |
CN103473517A (zh) * | 2013-09-05 | 2013-12-25 | 天津科技大学 | 一种密码防盗随机变化数字键盘 |
CN103971071A (zh) * | 2013-02-06 | 2014-08-06 | 王基旆 | 防止输入数据被侧录的计算机网络系统 |
-
2017
- 2017-01-20 CN CN201710044981.3A patent/CN106998207A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1548947A1 (en) * | 2003-12-22 | 2005-06-29 | Banksys S.A. | A method and a device for reading out keyboard keys. |
CN101958717B (zh) * | 2010-09-29 | 2013-04-03 | 惠州Tcl移动通信有限公司 | 一种按键扫描的方法及按键扫描装置 |
CN101951263A (zh) * | 2010-10-22 | 2011-01-19 | 刘利华 | 一种按键扫描方法及系统 |
CN103971071A (zh) * | 2013-02-06 | 2014-08-06 | 王基旆 | 防止输入数据被侧录的计算机网络系统 |
CN103473517A (zh) * | 2013-09-05 | 2013-12-25 | 天津科技大学 | 一种密码防盗随机变化数字键盘 |
Non-Patent Citations (1)
Title |
---|
叶绿: "《单片机技术与应用》", 31 January 2010, 浙江科学技术出版社 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109598872A (zh) * | 2018-12-06 | 2019-04-09 | 深圳市新国都支付技术有限公司 | 通过模拟波形对键盘施加干扰信号的方法和系统 |
CN111145394A (zh) * | 2019-12-20 | 2020-05-12 | 上海爱信诺航芯电子科技有限公司 | 电容触控按键的扫描控制方法与扫描控制装置 |
CN111145394B (zh) * | 2019-12-20 | 2021-08-03 | 上海爱信诺航芯电子科技有限公司 | 电容触控按键的扫描控制方法与扫描控制装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10296140B2 (en) | Information processing method for avoidance of a mis-touch and electronic device thereof | |
CN101661383B (zh) | 一种电子设备及其显示控制方法 | |
CN105956441B (zh) | 一种智能终端操作方法及系统 | |
CN101996072A (zh) | 一种操作系统的窗口管理方法及计算机 | |
WO2014000543A1 (zh) | 一种智能终端文本输入显示方法及装置 | |
US9576411B2 (en) | Apparatus and method for providing security keypad through shift of keypad | |
CN106998207A (zh) | 一种应用于pos系统的扫描按键方法 | |
CN106775727B (zh) | 一种移动终端的控制方法及装置 | |
CN106951165A (zh) | 一种文字编辑方法及移动终端 | |
CN101452354A (zh) | 电子装置的输入方法、内容显示方法及其应用 | |
CN107277411A (zh) | 一种视频录制方法及移动终端 | |
CN105760059A (zh) | 消息阅读的控制方法及装置 | |
CN105827816A (zh) | 一种终端屏幕的分屏方法及移动终端 | |
CN107370874A (zh) | 应用的启动方法、移动终端及存储介质 | |
US9753638B2 (en) | Method and apparatus for entering symbols from a touch-sensitive screen | |
CN111782036A (zh) | 输入方法、装置、电子设备及存储介质 | |
CN108762568B (zh) | 触摸屏的断线修复方法、装置和家用电器 | |
CN115657924B (zh) | 一种触屏事件处理方法及相关装置 | |
CN106851170A (zh) | 一种视频通话处理方法及移动终端 | |
CN107168549A (zh) | 输入方法、显示装置及计算机可读存储介质 | |
CN104951293B (zh) | 一种移动终端的按键响应方法及移动终端 | |
CN105446639A (zh) | 一种终端唤醒方法及装置 | |
CN107390917A (zh) | 一种触控条的显示方法、装置、移动终端及存储介质 | |
CN110502890A (zh) | 一种验证码的处理方法、装置、电子设备及存储介质 | |
CN107040806A (zh) | 遥控抗干扰控制方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170801 |
|
RJ01 | Rejection of invention patent application after publication |