gpt4 book ai didi

linux - 我自己的 linux Chorded 键盘驱动程序和我的嵌入式应用程序的接口(interface)

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:23:50 26 4
gpt4 key购买 nike

我想为自己的键盘开发自己的键盘驱动程序。我必须使用 GPIO 来识别关键事件并使用 I2c 来获取扫描码。我打算开发这样的键盘驱动程序。

#include <linux/gpio.h> 
#include <linux/interrupt.h>

#define GPIO 1 //gpio PIN
...
if(gpio_request(GPIO, "Description")){
Exception
}

gpio_direction_input(GPIO);
...
int irq = 0;
if((irq = gpio_to_irq(GPIO)) < 0 ){
Exception
}


int init_module(){
int result = request_irq(GPIO, handler_func, IRQF_TRIGGER_LOW,"Description", "Device id");
if(result){
Exception
}
}

void handler_func(...){
//get scan code via i2c
}

我需要开发一个接口(interface),需要处理以下操作

在我的键盘中,在 [KEY1] 上打印为“1abc”。
1. 当按下 键时,显示第一个字符 -> "1"
2.特殊组合键用于输入其他3个字符
例如:
按键输入操作如下;

KEY1(直接按下)应显示“1”
F1 + KEY1(同时按下)应显示“a”
F2 + KEY1(同时按下)应显示“b”
F3 + KEY1(同时按下)应显示“c”

我的问题是我应该如何开发这个接口(interface)?

最佳答案

您最好遵循 Analog Devices 的键盘和 GPIO Linux 驱动程序。我将为您提供一些 GPIO 驱动程序的链接。

此驱动程序包含这些功能

  • 可配置的键盘大小矩阵(行、列)。
  • 支持切换事件。
  • 自动按键重复。
  • 锁定/解锁关键功能。

ADP5588 Keyboard - GPIO Linux Driver

ADP5589 Keyboard - GPIO Linux Driver

关于linux - 我自己的 linux Chorded 键盘驱动程序和我的嵌入式应用程序的接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20186330/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com