Extract dedicated protocol handler functions per command.
This commit is contained in:
@@ -1,15 +1,46 @@
|
|||||||
#include "usb_protocol_handler.h"
|
#include "usb_protocol_handler.h"
|
||||||
#include "test_led.h"
|
#include "test_led.h"
|
||||||
|
|
||||||
|
void GetProtocolVersion();
|
||||||
|
void JumpToBootloader();
|
||||||
|
void GetSetTestLed();
|
||||||
|
void WriteLedDriver();
|
||||||
|
void ReadLedDriver();
|
||||||
|
|
||||||
void UsbProtocolHandler()
|
void UsbProtocolHandler()
|
||||||
{
|
{
|
||||||
uint8_t command = GenericHidInBuffer[0];
|
uint8_t command = GenericHidInBuffer[0];
|
||||||
uint8_t arg = GenericHidInBuffer[1];
|
|
||||||
|
|
||||||
switch (command) {
|
switch (command) {
|
||||||
|
case USB_COMMAND_GET_PROTOCOL_VERSION:
|
||||||
|
GetProtocolVersion();
|
||||||
|
break;
|
||||||
case USB_COMMAND_JUMP_TO_BOOTLOADER:
|
case USB_COMMAND_JUMP_TO_BOOTLOADER:
|
||||||
|
JumpToBootloader();
|
||||||
break;
|
break;
|
||||||
case USB_COMMAND_TEST_LED:
|
case USB_COMMAND_TEST_LED:
|
||||||
|
GetSetTestLed();
|
||||||
|
break;
|
||||||
|
case USB_COMMAND_WRITE_LED_DRIVER:
|
||||||
|
WriteLedDriver();
|
||||||
|
break;
|
||||||
|
case USB_COMMAND_READ_LED_DRIVER:
|
||||||
|
ReadLedDriver();
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void GetProtocolVersion() {
|
||||||
|
GenericHidOutBuffer[1] = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
void JumpToBootloader() {
|
||||||
|
}
|
||||||
|
|
||||||
|
void GetSetTestLed()
|
||||||
|
{
|
||||||
|
uint8_t arg = GenericHidInBuffer[1];
|
||||||
switch (arg) {
|
switch (arg) {
|
||||||
case 0:
|
case 0:
|
||||||
TEST_RED_ON();
|
TEST_RED_ON();
|
||||||
@@ -18,9 +49,12 @@ void UsbProtocolHandler()
|
|||||||
TEST_RED_OFF();
|
TEST_RED_OFF();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case USB_COMMAND_LED_DRIVER:
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void WriteLedDriver()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void ReadLedDriver()
|
||||||
|
{
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,9 +7,11 @@
|
|||||||
|
|
||||||
// Macros:
|
// Macros:
|
||||||
|
|
||||||
#define USB_COMMAND_JUMP_TO_BOOTLOADER 0
|
#define USB_COMMAND_GET_PROTOCOL_VERSION 0
|
||||||
#define USB_COMMAND_TEST_LED 1
|
#define USB_COMMAND_JUMP_TO_BOOTLOADER 1
|
||||||
#define USB_COMMAND_LED_DRIVER 2
|
#define USB_COMMAND_TEST_LED 2
|
||||||
|
#define USB_COMMAND_WRITE_LED_DRIVER 3
|
||||||
|
#define USB_COMMAND_READ_LED_DRIVER 4
|
||||||
|
|
||||||
// Functions:
|
// Functions:
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user