mirror of
https://github.com/hathach/tinyusb.git
synced 2025-01-17 05:32:55 +08:00
add board abstract layer
rename arch to mcu
This commit is contained in:
parent
82820a2066
commit
f31ade6151
@ -9,6 +9,7 @@
|
||||
<externalSetting>
|
||||
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/tinyusb"/>
|
||||
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/tinyusb/Debug"/>
|
||||
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/tinyusb/lpc134x"/>
|
||||
<entry flags="RESOLVED" kind="libraryFile" name="tinyusb"/>
|
||||
</externalSetting>
|
||||
</externalSettings>
|
||||
@ -35,13 +36,15 @@
|
||||
<option id="com.crt.advproject.gcc.thumb.279363600" name="Thumb mode" superClass="com.crt.advproject.gcc.thumb" value="true" valueType="boolean"/>
|
||||
<option id="gnu.c.compiler.option.preprocessor.def.symbols.1841863300" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="__REDLIB__"/>
|
||||
<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.1344283117" 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="com.crt.advproject.c.misc.dialect.995251213" name="C Dialect" superClass="com.crt.advproject.c.misc.dialect" value="com.crt.advproject.misc.dialect.gnu99" valueType="enumerated"/>
|
||||
<option id="gnu.c.compiler.option.include.paths.1054321122" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/CMSISv2p10_LPC13Uxx/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/CDL/CMSISv2p10_LPC13Uxx/lpcinc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/CDL/CMSISv2p10_LPC13Uxx/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/device_keyboard}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/tinyusb}""/>
|
||||
</option>
|
||||
@ -1237,6 +1240,7 @@
|
||||
<option id="com.crt.advproject.gcc.thumb.191147189" name="Thumb mode" superClass="com.crt.advproject.gcc.thumb" value="true" valueType="boolean"/>
|
||||
<option id="gnu.c.compiler.option.preprocessor.def.symbols.302159449" name="Defined symbols (-D)" superClass="gnu.c.compiler.option.preprocessor.def.symbols" valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="__REDLIB__"/>
|
||||
<listOptionValue builtIn="false" value="MCU=MCU_LPC43XX"/>
|
||||
<listOptionValue builtIn="false" value="DEBUG"/>
|
||||
<listOptionValue builtIn="false" value="__CODE_RED"/>
|
||||
</option>
|
||||
|
86
demos/boards/board.h
Normal file
86
demos/boards/board.h
Normal file
@ -0,0 +1,86 @@
|
||||
/*
|
||||
* board.h
|
||||
*
|
||||
* Created on: Dec 4, 2012
|
||||
* Author: hathach
|
||||
*/
|
||||
|
||||
/*
|
||||
* Software License Agreement (BSD License)
|
||||
* Copyright (c) 2012, hathach (tinyusb.net)
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification,
|
||||
* are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. The name of the author may not be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
|
||||
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
||||
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
||||
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
* OF SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the tiny usb stack.
|
||||
*/
|
||||
|
||||
/** \file
|
||||
* \brief TBD
|
||||
*
|
||||
* \note TBD
|
||||
*/
|
||||
|
||||
/**
|
||||
* \defgroup Group_Board Boards
|
||||
* \brief TBD
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef _TUSB_BOARD_H_
|
||||
#define _TUSB_BOARD_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/// n-th Bit
|
||||
#ifndef BIT
|
||||
#define BIT(n) (1 << (n))
|
||||
#endif
|
||||
|
||||
#ifndef BOARD
|
||||
#define BOARD BOARD_NGX4330_EXPLORER
|
||||
#endif
|
||||
|
||||
#define BOARD_NGX4330_EXPLORER 1
|
||||
#define BOARD_LPCXPRESSO1347 2
|
||||
|
||||
//#ifdef BOARD == BOARD_NGX4330_EXPLORER
|
||||
//#include "board_ngx4330_explorer.h"
|
||||
//#endif
|
||||
|
||||
/// Init board peripherals : Clock, UART, LEDs, Buttons
|
||||
void board_init(void);
|
||||
void board_leds(uint32_t mask, uint32_t state);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _TUSB_BOARD_H_ */
|
||||
|
||||
/** @} */
|
64
demos/boards/board_lpcexpresso1347.c
Normal file
64
demos/boards/board_lpcexpresso1347.c
Normal file
@ -0,0 +1,64 @@
|
||||
/*
|
||||
* board_lpcexpresso1347.c
|
||||
*
|
||||
* Created on: Dec 4, 2012
|
||||
* Author: hathach
|
||||
*/
|
||||
|
||||
/*
|
||||
* Software License Agreement (BSD License)
|
||||
* Copyright (c) 2012, hathach (tinyusb.net)
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification,
|
||||
* are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. The name of the author may not be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
|
||||
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
||||
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
||||
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
* OF SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the tiny usb stack.
|
||||
*/
|
||||
|
||||
#include "board.h"
|
||||
|
||||
#if BOARD == BOARD_LPCXPRESSO1347
|
||||
|
||||
#include "LPC13Uxx.h"
|
||||
|
||||
#define CFG_LED_PORT (0)
|
||||
#define CFG_LED_PIN (7)
|
||||
#define CFG_LED_ON (1)
|
||||
#define CFG_LED_OFF (0)
|
||||
|
||||
void board_init(void)
|
||||
{
|
||||
SystemInit();
|
||||
systickInit(1);
|
||||
GPIOInit();
|
||||
GPIOSetDir(CFG_LED_PORT, CFG_LED_PIN, 1);
|
||||
LPC_GPIO->CLR[CFG_LED_PORT] = (1 << CFG_LED_PIN);
|
||||
}
|
||||
|
||||
void board_leds(uint32_t mask, uint32_t state)
|
||||
{
|
||||
if (mask)
|
||||
GPIOSetBitValue(CFG_LED_PORT, CFG_LED_PIN, state);
|
||||
}
|
||||
|
||||
#endif
|
93
demos/boards/board_ngx4330_explorer.c
Normal file
93
demos/boards/board_ngx4330_explorer.c
Normal file
@ -0,0 +1,93 @@
|
||||
/*
|
||||
* board_ngx4330_explorer.c
|
||||
*
|
||||
* Created on: Dec 4, 2012
|
||||
* Author: hathach
|
||||
*/
|
||||
|
||||
/*
|
||||
* Software License Agreement (BSD License)
|
||||
* Copyright (c) 2012, hathach (tinyusb.net)
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without modification,
|
||||
* are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. The name of the author may not be used to endorse or promote products
|
||||
* derived from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
|
||||
* SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
|
||||
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
|
||||
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
* OF SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the tiny usb stack.
|
||||
*/
|
||||
|
||||
#include "board.h"
|
||||
|
||||
#if BOARD == BOARD_NGX4330_EXPLORER
|
||||
|
||||
#include "lpc43xx_uart.h"
|
||||
#include "lpc43xx_scu.h"
|
||||
#include "lpc43xx_cgu.h"
|
||||
#include "lpc43xx_gpio.h"
|
||||
#include "lpc43xx_timer.h"
|
||||
#include "lpc43xx_i2c.h"
|
||||
#include "lpc43xx_gpdma.h"
|
||||
#include "lpc43xx_i2s.h"
|
||||
#include "lpc43xx_emc.h"
|
||||
|
||||
#define BOARD_MAX_LEDS 2
|
||||
const static struct {
|
||||
uint8_t port;
|
||||
uint8_t pin;
|
||||
}leds[BOARD_MAX_LEDS] = { {1, 11}, {1,12} };
|
||||
|
||||
void board_init(void)
|
||||
{
|
||||
CGU_Init();
|
||||
SysTick_Config( CGU_GetPCLKFrequency(CGU_PERIPHERAL_M4CORE)/1000 ); /* 1 ms Timer */
|
||||
|
||||
/* Turn on 5V USB VBUS TODO Should be Host-only */
|
||||
scu_pinmux(0x2, 6, MD_PUP | MD_EZI, FUNC4); // P2_6 USB1_PWR_EN, USB1 VBus function
|
||||
scu_pinmux(0x2, 5, MD_PLN | MD_EZI | MD_ZI, FUNC2); // P2_5 USB1_VBUS, MUST CONFIGURE THIS SIGNAL FOR USB1 NORMAL OPERATION
|
||||
|
||||
/* Turn on 5V USB VBUS TODO Should be Host-only */
|
||||
#if 1 //(BOARD == BOARD_XPLORER)
|
||||
scu_pinmux(0x1, 7, MD_PUP | MD_EZI, FUNC4); // P1_7 USB0_PWR_EN, USB0 VBus function Xplorer
|
||||
#else
|
||||
scu_pinmux(0x2, 3, MD_PUP | MD_EZI, FUNC7); // P2_3 USB0_PWR_EN, USB0 VBus function Farnell
|
||||
#endif
|
||||
|
||||
// Leds Init
|
||||
uint8_t i;
|
||||
for (i=0; i<BOARD_MAX_LEDS; i++)
|
||||
{
|
||||
scu_pinmux(leds[i].port, leds[i].pin, MD_PUP|MD_EZI|MD_ZI, FUNC0);
|
||||
GPIO_SetDir(leds[i].port, BIT(leds[i].pin), 1); // output
|
||||
}
|
||||
}
|
||||
|
||||
void board_leds(uint32_t mask, uint32_t state)
|
||||
{
|
||||
uint8_t i;
|
||||
for(i=0; i<BOARD_MAX_LEDS; i++)
|
||||
{
|
||||
if ( mask & BIT(i) )
|
||||
(mask & state) ? GPIO_SetValue(leds[i].port, BIT(leds[i].pin)) : GPIO_ClearValue(leds[i].port, BIT(leds[i].pin)) ;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
@ -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=""${workspace_loc:/CMSISv2p10_LPC13Uxx/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/LPC13Uxx_DriverLib/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/CDL/CMSISv2p10_LPC13Uxx/lpcinc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/${ProjName}/boards}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/CDL/CMSISv2p10_LPC13Uxx/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/CDL/LPC13UxxLib/inc}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/tinyusb/tinyusb}""/>
|
||||
</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=""${workspace_loc:/CMSISv2p10_LPC13Uxx/Debug}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/LPC13Uxx_DriverLib/Debug}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/tinyusb/Debug}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/CDL/LPC13Uxx}""/>
|
||||
<listOptionValue builtIn="false" value=""${workspace_loc:/tinyusb/lpc134x}""/>
|
||||
</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"/>
|
||||
|
@ -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>
|
||||
|
@ -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;
|
||||
|
@ -62,7 +62,7 @@
|
||||
#include <stdio.h>
|
||||
|
||||
#include "tusb_cfg.h"
|
||||
#include "arch/arch.h"
|
||||
#include "mcu/mcu.h"
|
||||
#include "hal/hal.h"
|
||||
#include "compiler/compiler.h"
|
||||
#include "errors.h"
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* arm_mx.h
|
||||
* compiler_iar.h
|
||||
*
|
||||
* Created on: Nov 26, 2012
|
||||
* Created on: Dec 3, 2012
|
||||
* Author: hathach
|
||||
*/
|
||||
|
||||
@ -32,27 +32,32 @@
|
||||
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
||||
* OF SUCH DAMAGE.
|
||||
*
|
||||
* This file is part of the tinyUSB stack.
|
||||
* This file is part of the tiny usb stack.
|
||||
*/
|
||||
|
||||
/** \file
|
||||
* \brief ARM Cortex Mx Header
|
||||
*
|
||||
* \note TBD
|
||||
* \brief IAR Compiler
|
||||
*/
|
||||
|
||||
/** \ingroup Group_Arch
|
||||
*
|
||||
/** \ingroup Group_Compiler
|
||||
* \defgroup Group_IAR IAR ARM
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef _TUSB_ARM_MX_H_
|
||||
#define _TUSB_ARM_MX_H_
|
||||
#ifndef _TUSB_COMPILER_IAR_H_
|
||||
#define _TUSB_COMPILER_IAR_H_
|
||||
|
||||
// #ifdef ARM_M3 ARM_M4 ARM_M0
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define ENDIAN_LITTLE
|
||||
#define ALIGNMENT (4)
|
||||
#define ATTR_PREPACKED __packed
|
||||
#define ATTR_PACKED
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _TUSB_COMPILER_IAR_H_ */
|
||||
|
||||
#endif /* _TUSB_ARM_MX_H_ */
|
||||
/** @} */
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* arch.h
|
||||
* mcu.h
|
||||
*
|
||||
* Created on: Nov 26, 2012
|
||||
* Author: hathach
|
||||
@ -42,33 +42,35 @@
|
||||
*/
|
||||
|
||||
/** \ingroup Group_Common
|
||||
* \defgroup Group_Arch Architecture
|
||||
* \brief Group_Arch brief
|
||||
* \defgroup Group_MCU MicroController
|
||||
* \brief Group_MCU brief
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef _TUSB_ARCH_H_
|
||||
#define _TUSB_ARCH_H_
|
||||
#ifndef _TUSB_MCU_H_
|
||||
#define _TUSB_MCU_H_
|
||||
|
||||
//#define ARCH_LPC134X
|
||||
//#define ARCH_LPC11XX
|
||||
#define ARCH_LPC43XX
|
||||
//#define MCU MCU_LPC43XX
|
||||
|
||||
#define MCU_LPC134X 1
|
||||
#define MCU_LPC11XX 2
|
||||
#define MCU_LPC43XX 3
|
||||
|
||||
#define ENDIAN_LITTLE ///< MCU Endian
|
||||
#define ALIGNMENT (4) ///< MCU Alignment
|
||||
|
||||
#if defined ARCH_LPC134X
|
||||
#include "arch_lpc134x.h"
|
||||
#elif defined ARCH_LPC43XX
|
||||
#include "arch_lpc43xx.h"
|
||||
#elif defined ARCH_LPC11XX
|
||||
#include "arch_lpc11xx.h"
|
||||
#if MCU == MCU_LPC134X
|
||||
#include "mcu_lpc134x.h"
|
||||
#elif MCU == MCU_LPC43XX
|
||||
#include "mcu_lpc43xx.h"
|
||||
#elif MCU == MCU_LPC11XX
|
||||
#include "mcu_lpc11xx.h"
|
||||
#else
|
||||
#error Arch is not found
|
||||
#error Arch is not supported yet
|
||||
#endif
|
||||
|
||||
#endif /* _TUSB_ARCH_H_ */
|
||||
#endif /* _TUSB_MCU_H_ */
|
||||
|
||||
/** @} */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* arch_lpc11xx.h
|
||||
* mcu_lpc11xx.h
|
||||
*
|
||||
* Created on: Nov 29, 2012
|
||||
* Author: hathach
|
||||
@ -41,20 +41,18 @@
|
||||
* \note TBD
|
||||
*/
|
||||
|
||||
/** \ingroup Group_Arch
|
||||
/** \ingroup Group_MCU
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef ARCH_LPC11XX_H_
|
||||
#define ARCH_LPC11XX_H_
|
||||
#ifndef MCU_LPC11XX_H_
|
||||
#define MCU_LPC11XX_H_
|
||||
|
||||
#define ARM_M0
|
||||
#define DEVICE_ROMDRIVER
|
||||
|
||||
#include "arm_mx.h"
|
||||
#include "LPC11Uxx.h"
|
||||
|
||||
#endif /* ARCH_LPC11XX_H_ */
|
||||
#define DEVICE_ROMDRIVER
|
||||
|
||||
#endif /* MCU_LPC11XX_H_ */
|
||||
|
||||
/** @} */
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* arch_lpc134x.h
|
||||
* mcu_lpc134x.h
|
||||
*
|
||||
* Created on: Nov 26, 2012
|
||||
* Author: hathach
|
||||
@ -41,21 +41,19 @@
|
||||
* \note TBD
|
||||
*/
|
||||
|
||||
/** \ingroup Group_Arch
|
||||
/** \ingroup Group_MCU
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef _TUSB_ARCH_LPC134_X_H_
|
||||
#define _TUSB_ARCH_LPC134_X_H_
|
||||
#ifndef _TUSB_MCU_LPC134_X_H_
|
||||
#define _TUSB_MCU_LPC134_X_H_
|
||||
|
||||
#define ARM_M3
|
||||
#define DEVICE_ROMDRIVER
|
||||
|
||||
#include "arm_mx.h"
|
||||
#include "LPC13Uxx.h"
|
||||
|
||||
#endif /* _TUSB_ARCH_LPC134_X_H_ */
|
||||
#define DEVICE_ROMDRIVER
|
||||
|
||||
#endif /* _TUSB_MCU_LPC134_X_H_ */
|
||||
|
||||
/** @} */
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* arch_lpc43xx.h
|
||||
* mcu_lpc43xx.h
|
||||
*
|
||||
* Created on: Nov 26, 2012
|
||||
* Author: hathach
|
||||
@ -41,21 +41,17 @@
|
||||
* \note TBD
|
||||
*/
|
||||
|
||||
/** \ingroup Group_Arch
|
||||
/** \ingroup Group_MCU
|
||||
*
|
||||
* @{
|
||||
*/
|
||||
|
||||
#ifndef _TUSB_ARCH_LPC43XX_H_
|
||||
#define _TUSB_ARCH_LPC43XX_H_
|
||||
#ifndef _TUSB_MCU_LPC43XX_H_
|
||||
#define _TUSB_MCU_LPC43XX_H_
|
||||
|
||||
#define ARM_M4
|
||||
//#define ARM_M0
|
||||
|
||||
#include "arm_mx.h"
|
||||
#include "LPC43xx.h"
|
||||
#include "lpc43xx_cgu.h"
|
||||
|
||||
#endif /* _TUSB_ARCH_LPC43XX_H_ */
|
||||
#endif /* _TUSB_MCU_LPC43XX_H_ */
|
||||
|
||||
/// @}
|
@ -37,7 +37,7 @@
|
||||
|
||||
#include "common/common.h"
|
||||
|
||||
#ifdef ARCH_LPC134X
|
||||
#if MCU == MCU_LPC134X
|
||||
|
||||
TUSB_Error_t hal_init()
|
||||
{
|
||||
|
@ -37,7 +37,7 @@
|
||||
|
||||
#include "common/common.h"
|
||||
|
||||
#ifdef ARCH_LPC43XX
|
||||
#if MCU == MCU_LPC43XX
|
||||
|
||||
TUSB_Error_t hal_init()
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user