blob: cfec920f732d5f3ae460a93c971024483201a823 [file] [log] [blame]
/*
* Copyright (c) 2020 Mark Olsson <mark@markolsson.se>
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/kernel.h>
#include <zephyr/sys/printk.h>
#include <zephyr/drivers/gpio.h>
#include <soc.h>
#include <zephyr/drivers/kscan.h>
#define LOG_LEVEL LOG_LEVEL_DBG
#include <zephyr/logging/log.h>
LOG_MODULE_REGISTER(main);
const struct device *const kscan_dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_keyboard_scan));
static void k_callback(const struct device *dev, uint32_t row, uint32_t col,
bool pressed)
{
ARG_UNUSED(dev);
if (pressed) {
printk("row = %u col = %u\n", row, col);
}
}
int main(void)
{
printk("Kscan touch panel sample application\n");
if (!device_is_ready(kscan_dev)) {
LOG_ERR("kscan device %s not ready", kscan_dev->name);
return 0;
}
kscan_config(kscan_dev, k_callback);
kscan_enable_callback(kscan_dev);
return 0;
}