testKeypad.lua 960 B

123456789101112131415161718192021222324252627
  1. --- 模块功能:矩阵键盘测试
  2. -- @module powerKey
  3. -- @author openLuat
  4. -- @license MIT
  5. -- @copyright openLuat
  6. -- @release 2018.06.13
  7. require"sys"
  8. module(..., package.seeall)
  9. local function keyMsg(msg)
  10. --msg.key_matrix_row:行
  11. --msg.key_matrix_col:列
  12. --msg.pressed:true表示按下,false表示弹起
  13. log.info("keyMsg",msg.key_matrix_row,msg.key_matrix_col,msg.pressed)
  14. end
  15. --注册按键消息处理函数
  16. rtos.on(rtos.MSG_KEYPAD,keyMsg)
  17. --初始化键盘阵列
  18. --第一个参数:固定为rtos.MOD_KEYPAD,表示键盘
  19. --第二个参数:目前无意义,固定为0
  20. --第三个参数:表示键盘阵列keyin标记,例如使用了keyin0、keyin1、keyin2、keyin3,则第三个参数为1<<0|1<<1|1<<2|1<<3 = 0x0F
  21. --第四个参数:表示键盘阵列keyout标记,例如使用了keyout0、keyout1、keyout2、keyout3,则第四个参数为1<<0|1<<1|1<<2|1<<3 = 0x0F
  22. rtos.init_module(rtos.MOD_KEYPAD,0,0x0F,0x0F)