add board abstract layer

rename arch to mcu
This commit is contained in:
hathach
2012-12-04 18:18:29 +07:00
parent 82820a2066
commit f31ade6151
15 changed files with 358 additions and 116 deletions

View File

@@ -29,13 +29,17 @@
<option id="com.crt.advproject.gcc.thumb.697143257" name="Thumb mode" superClass="com.crt.advproject.gcc.thumb" value="true" valueType="boolean"/>
<option id="gnu.c.compiler.option.preprocessor.def.symbols.371325215" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols">
<listOptionValue builtIn="false" value="__REDLIB__"/>
<listOptionValue builtIn="false" value="BOARD=BOARD_LPCXPRESSO1347"/>
<listOptionValue builtIn="false" value="MCU=MCU_LPC134X"/>
<listOptionValue builtIn="false" value="DEBUG"/>
<listOptionValue builtIn="false" value="__CODE_RED"/>
</option>
<option id="gnu.c.compiler.option.misc.other.204394496" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-c -fmessage-length=0 -fno-builtin -ffunction-sections -fdata-sections" valueType="string"/>
<option id="gnu.c.compiler.option.include.paths.1207481236" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/CMSISv2p10_LPC13Uxx/inc}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/LPC13Uxx_DriverLib/inc}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/CDL/CMSISv2p10_LPC13Uxx/lpcinc}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/${ProjName}/boards}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/CDL/CMSISv2p10_LPC13Uxx/inc}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/CDL/LPC13UxxLib/inc}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/tinyusb/tinyusb}&quot;"/>
</option>
<option id="gnu.c.compiler.option.include.files.318820756" name="Include files (-include)" superClass="gnu.c.compiler.option.include.files"/>
@@ -59,13 +63,11 @@
<listOptionValue builtIn="false" value="--gc-sections"/>
</option>
<option id="gnu.c.link.option.paths.1465143173" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/CMSISv2p10_LPC13Uxx/Debug}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/LPC13Uxx_DriverLib/Debug}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/tinyusb/Debug}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/CDL/LPC13Uxx}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/tinyusb/lpc134x}&quot;"/>
</option>
<option id="gnu.c.link.option.libs.447978281" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="CMSISv2p10_LPC13Uxx"/>
<listOptionValue builtIn="false" value="LPC13Uxx_DriverLib"/>
<listOptionValue builtIn="false" value="CDL"/>
<listOptionValue builtIn="false" value="tinyusb"/>
</option>
<option id="com.crt.advproject.link.gcc.hdrlib.1111642583" name="Use C library" superClass="com.crt.advproject.link.gcc.hdrlib" value="com.crt.advproject.gcc.link.hdrlib.codered.nohost" valueType="enumerated"/>

View File

@@ -3,8 +3,6 @@
<name>device_keyboard</name>
<comment></comment>
<projects>
<project>CMSISv2p10_LPC13Uxx</project>
<project>LPC13Uxx_DriverLib</project>
<project>tinyusb</project>
</projects>
<buildSpec>
@@ -82,4 +80,11 @@
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
<linkedResources>
<link>
<name>boards</name>
<type>2</type>
<locationURI>PARENT-2-PROJECT_LOC/boards</locationURI>
</link>
</linkedResources>
</projectDescription>

View File

@@ -4,6 +4,7 @@
#include <cr_section_macros.h>
#include <NXP/crp.h>
#include "board.h"
#include "tusb.h"
// Variable to store CRP value in. Will be placed automatically
@@ -16,19 +17,7 @@ int main(void)
uint32_t currentSecond, lastSecond;
currentSecond = lastSecond = 0;
SystemInit();
systickInit(1);
GPIOInit();
#define CFG_LED_PORT (0)
#define CFG_LED_PIN (7)
#define CFG_LED_ON (1)
#define CFG_LED_OFF (0)
GPIOSetDir(CFG_LED_PORT, CFG_LED_PIN, 1);
LPC_GPIO->CLR[CFG_LED_PORT] = (1 << CFG_LED_PIN);
board_init();
tusb_init();
while (1)
@@ -38,7 +27,7 @@ int main(void)
{
/* Toggle LED once per second */
lastSecond = currentSecond;
GPIOSetBitValue(CFG_LED_PORT, CFG_LED_PIN, lastSecond % 2);
board_leds(0x01, lastSecond%2);
#ifndef CFG_CLASS_CDC
if (usb_isConfigured())
@@ -55,38 +44,38 @@ int main(void)
#endif
}
#ifdef CFG_CLASS_CDC
if (usb_isConfigured())
{
uint8_t cdc_char;
if( tusb_cdc_getc(&cdc_char) )
{
switch (cdc_char)
{
#ifdef CFG_CLASS_HID_KEYBOARD
case '1' :
{
uint8_t keys[6] = {HID_USAGE_KEYBOARD_aA + 'e' - 'a'};
tusb_hid_keyboard_sendKeys(0x08, keys, 1); // windows + E --> open explorer
}
break;
#endif
#ifdef CFG_CLASS_HID_MOUSE
case '2' :
tusb_hid_mouse_send(0, 10, 10);
break;
#endif
default :
cdc_char = toupper(cdc_char);
tusb_cdc_putc(cdc_char);
break;
}
}
}
#endif
// #ifdef CFG_CLASS_CDC
// if (usb_isConfigured())
// {
// uint8_t cdc_char;
// if( tusb_cdc_getc(&cdc_char) )
// {
// switch (cdc_char)
// {
// #ifdef CFG_CLASS_HID_KEYBOARD
// case '1' :
// {
// uint8_t keys[6] = {HID_USAGE_KEYBOARD_aA + 'e' - 'a'};
// tusb_hid_keyboard_sendKeys(0x08, keys, 1); // windows + E --> open explorer
// }
// break;
// #endif
//
// #ifdef CFG_CLASS_HID_MOUSE
// case '2' :
// tusb_hid_mouse_send(0, 10, 10);
// break;
// #endif
//
// default :
// cdc_char = toupper(cdc_char);
// tusb_cdc_putc(cdc_char);
// break;
//
// }
// }
// }
//#endif
}
return 0;