Browse Source

Fixing compiler errors for usbMuxUart Output module

- Removing (currently) redundant usbMuxUart capabilities.kll file
- Issues were due to the recent AddModule cmake function addition
simple
Jacob Alexander 9 years ago
parent
commit
733201d39b

+ 0
- 14
Output/usbMuxUart/capabilities.kll View File

@@ -1,14 +0,0 @@
Name = usbMuxUartCapabilities;
Version = 0.1;
Author = "HaaTa (Jacob Alexander) 2014";
KLL = 0.3;

# Modified Date
Date = 2014-09-28;


# Capabilties available to the usbMuxUart output module
consCtrlOut => Output_consCtrlSend_capability( consCode : 2 );
sysCtrlOut => Output_sysCtrlSend_capability( sysCode : 1 );
usbKeyOut => Output_usbCodeSend_capability( usbCode : 1 );


+ 77
- 4
Output/usbMuxUart/output_com.c View File

@@ -33,10 +33,10 @@
// USB Includes
#if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_)
#elif defined(_mk20dx128_) || defined(_mk20dx128vlf5_) || defined(_mk20dx256_) || defined(_mk20dx256vlh7_)
#include <uartOut/arm/uart_serial.h>
#include <pjrcUSB/arm/usb_dev.h>
#include <pjrcUSB/arm/usb_keyboard.h>
#include <pjrcUSB/arm/usb_serial.h>
#include <arm/uart_serial.h>
#include <arm/usb_dev.h>
#include <arm/usb_keyboard.h>
#include <arm/usb_serial.h>
#endif

// Local Includes
@@ -135,10 +135,69 @@ USBKeyChangeState USBKeys_Changed = USBKeyChangeState_None;
// 0 is often used to show that a USB cable is not plugged in (but has power)
uint8_t Output_Available = 0;

// Debug control variable for Output modules
// 0 - Debug disabled (default)
// 1 - Debug enabled
uint8_t Output_DebugMode = 0;



// ----- Capabilities -----

// Set Boot Keyboard Protocol
void Output_kbdProtocolBoot_capability( uint8_t state, uint8_t stateType, uint8_t *args )
{
// Display capability name
if ( stateType == 0xFF && state == 0xFF )
{
print("Output_kbdProtocolBoot()");
return;
}

// Only set if necessary
if ( USBKeys_Protocol == 0 )
return;

// TODO Analog inputs
// Only set on key press
if ( stateType != 0x01 )
return;

// Flush the key buffers
Output_flushBuffers();

// Set the keyboard protocol to Boot Mode
USBKeys_Protocol = 0;
}


// Set NKRO Keyboard Protocol
void Output_kbdProtocolNKRO_capability( uint8_t state, uint8_t stateType, uint8_t *args )
{
// Display capability name
if ( stateType == 0xFF && state == 0xFF )
{
print("Output_kbdProtocolNKRO()");
return;
}

// Only set if necessary
if ( USBKeys_Protocol == 1 )
return;

// TODO Analog inputs
// Only set on key press
if ( stateType != 0x01 )
return;

// Flush the key buffers
Output_flushBuffers();

// Set the keyboard protocol to NKRO Mode
USBKeys_Protocol = 1;
}


// Sends a Consumer Control code to the USB Output buffer
void Output_consCtrlSend_capability( uint8_t state, uint8_t stateType, uint8_t *args )
{
@@ -374,6 +433,20 @@ void Output_usbCodeSend_capability( uint8_t state, uint8_t stateType, uint8_t *a

// ----- Functions -----

// Flush Key buffers
void Output_flushBuffers()
{
// Zero out USBKeys_Keys array
for ( uint8_t c = 0; c < USB_NKRO_BITFIELD_SIZE_KEYS; c++ )
USBKeys_Keys[ c ] = 0;

// Zero out other key buffers
USBKeys_ConsCtrl = 0;
USBKeys_Modifiers = 0;
USBKeys_SysCtrl = 0;
}


// USB Module Setup
inline void Output_setup()
{

+ 8
- 0
Output/usbMuxUart/output_com.h View File

@@ -80,6 +80,8 @@ extern USBKeyChangeState USBKeys_Changed;

extern uint8_t Output_Available; // 0 - Output module not fully functional, 1 - Output module working

extern uint8_t Output_DebugMode; // 0 - Debug disabled, 1 - Debug enabled



// ----- Capabilities -----
@@ -88,6 +90,10 @@ void Output_consCtrlSend_capability( uint8_t state, uint8_t stateType, uint8_t *
void Output_sysCtrlSend_capability( uint8_t state, uint8_t stateType, uint8_t *args );
void Output_usbCodeSend_capability( uint8_t state, uint8_t stateType, uint8_t *args );

// Configuration capabilities
void Output_kbdProtocolBoot_capability( uint8_t state, uint8_t stateType, uint8_t *args );
void Output_kbdProtocolNKRO_capability( uint8_t state, uint8_t stateType, uint8_t *args );



// ----- Functions -----
@@ -95,6 +101,8 @@ void Output_usbCodeSend_capability( uint8_t state, uint8_t stateType, uint8_t *a
void Output_setup();
void Output_send();

void Output_flushBuffers();

void Output_firmwareReload();
void Output_softReset();


+ 6
- 0
Output/usbMuxUart/setup.cmake View File

@@ -23,6 +23,12 @@ set( Module_SRCS
output_com.c
)

# Remove duplicate output_com.c files from pjrcUSB and uartOut
list ( REMOVE_ITEM Output_SRCS
Output/pjrcUSB/output_com.c
Output/uartOut/output_com.c
)


###
# Compiler Family Compatibility