From dfa2676fe9524ba07cdcf1b0d9398e9fc19dabd7 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Tue, 24 Feb 2015 17:37:11 +0100 Subject: cleanups --- usb-keyboardmouse/Makefile | 2 +- usb-keyboardmouse/usb-keyboardmouse.c | 114 ++++++++++++++++------------------ 2 files changed, 56 insertions(+), 60 deletions(-) (limited to 'usb-keyboardmouse') diff --git a/usb-keyboardmouse/Makefile b/usb-keyboardmouse/Makefile index 01fee72..e69b4b0 100644 --- a/usb-keyboardmouse/Makefile +++ b/usb-keyboardmouse/Makefile @@ -23,7 +23,7 @@ NAME := usb-keyboardmouse BOARD_TYPE := teensy2 OBJ := $(NAME).o -LIBS := util led lufa-descriptor-keyboardmouse +LIBS := util led lufa-descriptor-keyboardmouse serialio EXTERNAL_LIBS := lufa SPREADAVR_PATH := .. diff --git a/usb-keyboardmouse/usb-keyboardmouse.c b/usb-keyboardmouse/usb-keyboardmouse.c index dd1ea4d..f1eb0eb 100644 --- a/usb-keyboardmouse/usb-keyboardmouse.c +++ b/usb-keyboardmouse/usb-keyboardmouse.c @@ -29,6 +29,7 @@ #include "util.h" #include "led.h" +#include "serialio.h" /* LUFA Library @@ -38,7 +39,6 @@ www.lufa-lib.org */ #include -#include "LUFA/Drivers/Peripheral/Serial.h" #include #include "lufa-descriptor-keyboardmouse.h" @@ -46,59 +46,58 @@ static uint8_t PrevKeyboardHIDReportBuffer[sizeof(USB_KeyboardReport_Data_t)]; static uint8_t PrevMouseHIDReportBuffer[sizeof(USB_MouseReport_Data_t)]; USB_ClassInfo_HID_Device_t Keyboard_HID_Interface = - { - .Config = - { - .InterfaceNumber = 0, + { + .Config = + { + .InterfaceNumber = 0, - .ReportINEndpointNumber = KEYBOARD_IN_EPNUM, - .ReportINEndpointSize = HID_EPSIZE, - .ReportINEndpointDoubleBank = false, + .ReportINEndpointNumber = KEYBOARD_IN_EPNUM, + .ReportINEndpointSize = HID_EPSIZE, + .ReportINEndpointDoubleBank = false, - .PrevReportINBuffer = PrevKeyboardHIDReportBuffer, - .PrevReportINBufferSize = sizeof(PrevKeyboardHIDReportBuffer), - }, - }; + .PrevReportINBuffer = PrevKeyboardHIDReportBuffer, + .PrevReportINBufferSize = sizeof(PrevKeyboardHIDReportBuffer), + }, + }; USB_ClassInfo_HID_Device_t Mouse_HID_Interface = - { - .Config = - { - .InterfaceNumber = 1, + { + .Config = + { + .InterfaceNumber = 1, - .ReportINEndpointNumber = MOUSE_IN_EPNUM, - .ReportINEndpointSize = HID_EPSIZE, + .ReportINEndpointNumber = MOUSE_IN_EPNUM, + .ReportINEndpointSize = HID_EPSIZE, - .PrevReportINBuffer = PrevMouseHIDReportBuffer, - .PrevReportINBufferSize = sizeof(PrevMouseHIDReportBuffer), - }, - }; + .PrevReportINBuffer = PrevMouseHIDReportBuffer, + .PrevReportINBufferSize = sizeof(PrevMouseHIDReportBuffer), + }, + }; void EVENT_USB_Device_ConfigurationChanged(void) { - HID_Device_ConfigureEndpoints(&Keyboard_HID_Interface); - HID_Device_ConfigureEndpoints(&Mouse_HID_Interface); + HID_Device_ConfigureEndpoints(&Keyboard_HID_Interface); + HID_Device_ConfigureEndpoints(&Mouse_HID_Interface); - USB_Device_EnableSOFEvents(); + USB_Device_EnableSOFEvents(); } /** Event handler for the library USB Control Request reception event. */ void EVENT_USB_Device_ControlRequest(void) { - HID_Device_ProcessControlRequest(&Keyboard_HID_Interface); - HID_Device_ProcessControlRequest(&Mouse_HID_Interface); + HID_Device_ProcessControlRequest(&Keyboard_HID_Interface); + HID_Device_ProcessControlRequest(&Mouse_HID_Interface); } /** Event handler for the USB device Start Of Frame event. */ void EVENT_USB_Device_StartOfFrame(void) { - HID_Device_MillisecondElapsed(&Keyboard_HID_Interface); - HID_Device_MillisecondElapsed(&Mouse_HID_Interface); + HID_Device_MillisecondElapsed(&Keyboard_HID_Interface); + HID_Device_MillisecondElapsed(&Mouse_HID_Interface); } /* end LUFA CDC-ACM specific definitions*/ -FILE serial_stream; static RingBuffer_t keyboard_buffer; static uint8_t keyboard_buffer_data[16]; static RingBuffer_t mouse_buffer; @@ -111,8 +110,8 @@ bool CALLBACK_HID_Device_CreateHIDReport(USB_ClassInfo_HID_Device_t* const HIDIn uint16_t* const ReportSize) { - if (HIDInterfaceInfo == &Keyboard_HID_Interface) { - USB_KeyboardReport_Data_t* KeyboardReport = (USB_KeyboardReport_Data_t*)ReportData; + if (HIDInterfaceInfo == &Keyboard_HID_Interface) { + USB_KeyboardReport_Data_t* KeyboardReport = (USB_KeyboardReport_Data_t*)ReportData; if(!RingBuffer_IsEmpty(&keyboard_buffer)) { uint8_t received_byte = RingBuffer_Remove(&keyboard_buffer); @@ -122,18 +121,18 @@ bool CALLBACK_HID_Device_CreateHIDReport(USB_ClassInfo_HID_Device_t* const HIDIn case '3': KeyboardReport->KeyCode[0] = HID_KEYBOARD_SC_3_AND_HASHMARK; break; case '4': KeyboardReport->KeyCode[0] = HID_KEYBOARD_SC_4_AND_DOLLAR; break; case 'c': KeyboardReport->KeyCode[0] = HID_KEYBOARD_SC_CAPS_LOCK; break; - default: return 0; // no key has been pressed - just return + default: return 0; // no key has been pressed - just return } } // KeyboardReport->Modifier = HID_KEYBOARD_MODIFIER_LEFTSHIFT; - - *ReportSize = sizeof(USB_KeyboardReport_Data_t); - return false; - } - else - { - USB_MouseReport_Data_t* MouseReport = (USB_MouseReport_Data_t*)ReportData; + *ReportSize = sizeof(USB_KeyboardReport_Data_t); + return false; + + } + else + { + USB_MouseReport_Data_t* MouseReport = (USB_MouseReport_Data_t*)ReportData; MouseReport->Y = 0; MouseReport->X = 0; @@ -148,9 +147,9 @@ bool CALLBACK_HID_Device_CreateHIDReport(USB_ClassInfo_HID_Device_t* const HIDIn case 'e': MouseReport->Button |= (1 << 1); break; // Button 2 } } - *ReportSize = sizeof(USB_MouseReport_Data_t); - return true; - } + *ReportSize = sizeof(USB_MouseReport_Data_t); + return true; + } } void CALLBACK_HID_Device_ProcessHIDReport(USB_ClassInfo_HID_Device_t* const HIDInterfaceInfo, @@ -159,21 +158,21 @@ void CALLBACK_HID_Device_ProcessHIDReport(USB_ClassInfo_HID_Device_t* const HIDI const void* ReportData, const uint16_t ReportSize) { - if (HIDInterfaceInfo == &Keyboard_HID_Interface) - { - uint8_t* LEDReport = (uint8_t*)ReportData; + if (HIDInterfaceInfo == &Keyboard_HID_Interface) + { + uint8_t* LEDReport = (uint8_t*)ReportData; - /* if (*LEDReport & HID_KEYBOARD_LED_NUMLOCK) */ + /* if (*LEDReport & HID_KEYBOARD_LED_NUMLOCK) */ /* // do something */ - if (*LEDReport & HID_KEYBOARD_LED_CAPSLOCK) + if (*LEDReport & HID_KEYBOARD_LED_CAPSLOCK) led_on(); else led_off(); - - /* if (*LEDReport & HID_KEYBOARD_LED_SCROLLLOCK) */ + + /* if (*LEDReport & HID_KEYBOARD_LED_SCROLLLOCK) */ /* // do something */ - } + } } int main(void) @@ -184,17 +183,14 @@ int main(void) cpu_init(); led_init(); USB_Init(); - - Serial_Init(115200, false); - Serial_CreateStream(&serial_stream); - stdin = stdout = stderr = &serial_stream; + serialio_init(115200, false); RingBuffer_InitBuffer(&keyboard_buffer, keyboard_buffer_data, sizeof(keyboard_buffer_data)); RingBuffer_InitBuffer(&mouse_buffer, mouse_buffer_data, sizeof(mouse_buffer_data)); sei(); for(;;) { - if(Serial_IsCharReceived()) { + if(serialio_bytes_received()) { int received_byte = fgetc(stdin); switch(received_byte) { case '1': @@ -208,13 +204,13 @@ int main(void) case 'a': case 'd': case 'q': - case 'e': + case 'e': RingBuffer_Insert(&mouse_buffer, (uint8_t)received_byte); break; } } - HID_Device_USBTask(&Keyboard_HID_Interface); - HID_Device_USBTask(&Mouse_HID_Interface); + HID_Device_USBTask(&Keyboard_HID_Interface); + HID_Device_USBTask(&Mouse_HID_Interface); USB_USBTask(); } } -- cgit v1.2.3