Pete Johanson
5 years ago
4 changed files with 36 additions and 19 deletions
@ -0,0 +1,29 @@
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Copyright (c) 2020 Peter Johanson |
||||
* |
||||
* SPDX-License-Identifier: MIT |
||||
*/ |
||||
|
||||
#include <zephyr.h> |
||||
#include <device.h> |
||||
#include <devicetree.h> |
||||
#include <drivers/kscan.h> |
||||
|
||||
static void zmk_kscan_callback(struct device *dev, u32_t row, u32_t column, bool pressed) { |
||||
printk("Row: %d, col: %d, pressed: %s\n", row, column, (pressed ? "true" : "false")); |
||||
// TODO: Push this to a message box, and then trigger a work item!
|
||||
} |
||||
|
||||
int zmk_kscan_init(char* name) { |
||||
struct device *dev = device_get_binding(name); |
||||
if (dev == NULL) { |
||||
printk("NO DEVICE!\n"); |
||||
return -EINVAL; |
||||
} |
||||
|
||||
return 0; |
||||
|
||||
kscan_config(dev, zmk_kscan_callback); |
||||
|
||||
kscan_enable_callback(dev); |
||||
} |
@ -1,33 +1,18 @@
@@ -1,33 +1,18 @@
|
||||
/*
|
||||
* Copyright (c) 2016 Intel Corporation |
||||
* Copyright (c) 2020 Peter Johanson |
||||
* |
||||
* SPDX-License-Identifier: Apache-2.0 |
||||
* SPDX-License-Identifier: MIT |
||||
*/ |
||||
|
||||
#include <zephyr.h> |
||||
#include <device.h> |
||||
#include <devicetree.h> |
||||
#include <drivers/gpio.h> |
||||
#include <drivers/kscan.h> |
||||
|
||||
|
||||
void zmk_kscan_callback(struct device *dev, u32_t row, u32_t column, bool pressed) { |
||||
printk("Row: %d, col: %d, pressed: %s\n", row, column, (pressed ? "true" : "false")); |
||||
} |
||||
|
||||
#include "kscan.h" |
||||
|
||||
void main(void) |
||||
{ |
||||
struct device *dev; |
||||
printk("Welcome to ZMK!\n"); |
||||
|
||||
dev = device_get_binding(CONFIG_KSCAN_MATRIX_DEV_NAME); |
||||
if (dev == NULL) { |
||||
printk("NO DEVICE!\n"); |
||||
return; |
||||
} |
||||
|
||||
kscan_config(dev, zmk_kscan_callback); |
||||
|
||||
kscan_enable_callback(dev); |
||||
zmk_kscan_init(CONFIG_KSCAN_MATRIX_DEV_NAME); |
||||
} |
||||
|
Loading…
Reference in new issue