Trying to scan SW11 of the keyboard matrix.
This commit is contained in:
@@ -52,7 +52,7 @@ void BOARD_InitPins(void)
|
|||||||
|
|
||||||
PORT_SetPinMux(TEST_LED_GPIO_PORT, TEST_LED_GPIO_PIN, kPORT_MuxAsGpio);
|
PORT_SetPinMux(TEST_LED_GPIO_PORT, TEST_LED_GPIO_PIN, kPORT_MuxAsGpio);
|
||||||
TEST_RED_INIT(LOGIC_LED_ON);
|
TEST_RED_INIT(LOGIC_LED_ON);
|
||||||
GPIO_SetPinsOutput(TEST_LED_GPIO, 1 << TEST_LED_GPIO_PIN);
|
// GPIO_SetPinsOutput(TEST_LED_GPIO, 1 << TEST_LED_GPIO_PIN);
|
||||||
|
|
||||||
// Initialize I2C.
|
// Initialize I2C.
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
|
#include "fsl_port.h"
|
||||||
#include "include/board/board.h"
|
#include "include/board/board.h"
|
||||||
#include "usb_api.h"
|
#include "usb_api.h"
|
||||||
#include "usb_composite_device.h"
|
#include "usb_composite_device.h"
|
||||||
|
#include "test_led.h"
|
||||||
|
|
||||||
static usb_device_endpoint_struct_t UsbKeyboardEndpoints[USB_KEYBOARD_ENDPOINT_COUNT] = {{
|
static usb_device_endpoint_struct_t UsbKeyboardEndpoints[USB_KEYBOARD_ENDPOINT_COUNT] = {{
|
||||||
USB_KEYBOARD_ENDPOINT_INDEX | (USB_IN << USB_DESCRIPTOR_ENDPOINT_ADDRESS_DIRECTION_SHIFT),
|
USB_KEYBOARD_ENDPOINT_INDEX | (USB_IN << USB_DESCRIPTOR_ENDPOINT_ADDRESS_DIRECTION_SHIFT),
|
||||||
@@ -40,11 +42,22 @@ static usb_status_t UsbKeyboardAction(void)
|
|||||||
{
|
{
|
||||||
UsbKeyboardReport.modifiers = 0;
|
UsbKeyboardReport.modifiers = 0;
|
||||||
UsbKeyboardReport.reserved = 0;
|
UsbKeyboardReport.reserved = 0;
|
||||||
|
|
||||||
for (uint8_t scancode_idx=0; scancode_idx<USB_KEYBOARD_MAX_KEYS; scancode_idx++) {
|
for (uint8_t scancode_idx=0; scancode_idx<USB_KEYBOARD_MAX_KEYS; scancode_idx++) {
|
||||||
UsbKeyboardReport.scancodes[scancode_idx] = 0;
|
UsbKeyboardReport.scancodes[scancode_idx] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!GPIO_ReadPinInput(BOARD_SW2_GPIO, BOARD_SW2_GPIO_PIN)) {
|
// row 1: PA12
|
||||||
|
// col 1: PA5
|
||||||
|
|
||||||
|
PORT_SetPinConfig(PORTA, 5, &(port_pin_config_t){.pullSelect=kPORT_PullDisable, .mux=kPORT_MuxAsGpio});
|
||||||
|
GPIO_PinInit(GPIOA, 5, &(gpio_pin_config_t){.pinDirection=kGPIO_DigitalOutput, .outputLogic=0});
|
||||||
|
GPIO_WritePinOutput(GPIOA, 5, 1);
|
||||||
|
|
||||||
|
PORT_SetPinConfig(PORTA, 12, &(port_pin_config_t){.pullSelect=kPORT_PullUp, .mux=kPORT_MuxAsGpio});
|
||||||
|
GPIO_PinInit(GPIOA, 12, &(gpio_pin_config_t){.pinDirection=kGPIO_DigitalInput});
|
||||||
|
if (!GPIO_ReadPinInput(GPIOA, 12)) {
|
||||||
|
GPIO_SetPinsOutput(TEST_LED_GPIO, 1 << TEST_LED_GPIO_PIN);
|
||||||
UsbKeyboardReport.scancodes[0] = HID_KEYBOARD_SC_A;
|
UsbKeyboardReport.scancodes[0] = HID_KEYBOARD_SC_A;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user