mirror of
https://github.com/hathach/tinyusb.git
synced 2025-03-22 19:20:52 +00:00
added configurations for RX63X
This commit is contained in:
parent
eab214e07c
commit
86dab3f7e9
@ -132,6 +132,16 @@ extern uint32_t SystemCoreClock;
|
|||||||
#define configASSERT( x )
|
#define configASSERT( x )
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef __RX__
|
||||||
|
/* Renesas RX series */
|
||||||
|
#define vSoftwareInterruptISR INT_Excep_ICU_SWINT
|
||||||
|
#define vTickISR INT_Excep_CMT0_CMI0
|
||||||
|
#define configPERIPHERAL_CLOCK_HZ (configCPU_CLOCK_HZ/2)
|
||||||
|
#define configKERNEL_INTERRUPT_PRIORITY 1
|
||||||
|
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 4
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
/* FreeRTOS hooks to NVIC vectors */
|
/* FreeRTOS hooks to NVIC vectors */
|
||||||
#define xPortPendSVHandler PendSV_Handler
|
#define xPortPendSVHandler PendSV_Handler
|
||||||
#define xPortSysTickHandler SysTick_Handler
|
#define xPortSysTickHandler SysTick_Handler
|
||||||
@ -164,4 +174,6 @@ to all Cortex-M ports, and do not rely on any particular library functions. */
|
|||||||
See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
|
See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
|
||||||
#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
|
#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* __FREERTOS_CONFIG__H */
|
#endif /* __FREERTOS_CONFIG__H */
|
||||||
|
@ -93,3 +93,22 @@ void vApplicationGetTimerTaskMemory( StaticTask_t **ppxTimerTaskTCBBuffer, Stack
|
|||||||
configTIMER_TASK_STACK_DEPTH is specified in words, not bytes. */
|
configTIMER_TASK_STACK_DEPTH is specified in words, not bytes. */
|
||||||
*pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH;
|
*pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if CFG_TUSB_MCU == OPT_MCU_RX63X
|
||||||
|
#include "iodefine.h"
|
||||||
|
void vApplicationSetupTimerInterrupt(void)
|
||||||
|
{
|
||||||
|
/* Enable CMT0 */
|
||||||
|
SYSTEM.PRCR.WORD = (0xA5u<<8) | TU_BIT(1);
|
||||||
|
MSTP(CMT0) = 0;
|
||||||
|
SYSTEM.PRCR.WORD = (0xA5u<<8);
|
||||||
|
|
||||||
|
CMT0.CMCNT = 0;
|
||||||
|
CMT0.CMCOR = (unsigned short)(((configPERIPHERAL_CLOCK_HZ/configTICK_RATE_HZ)-1)/128);
|
||||||
|
CMT0.CMCR.WORD = TU_BIT(6) | 2;
|
||||||
|
IR(CMT0, CMI0) = 0;
|
||||||
|
IPR(CMT0, CMI0) = configKERNEL_INTERRUPT_PRIORITY;
|
||||||
|
IEN(CMT0, CMI0) = 1;
|
||||||
|
CMT.CMSTR0.BIT.STR0 = 1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
@ -97,9 +97,11 @@ int main(void)
|
|||||||
// skip starting scheduler (and return) for ESP32-S2
|
// skip starting scheduler (and return) for ESP32-S2
|
||||||
#if CFG_TUSB_MCU != OPT_MCU_ESP32S2
|
#if CFG_TUSB_MCU != OPT_MCU_ESP32S2
|
||||||
vTaskStartScheduler();
|
vTaskStartScheduler();
|
||||||
|
#if CFG_TUSB_MCU != OPT_MCU_RX63X
|
||||||
NVIC_SystemReset();
|
NVIC_SystemReset();
|
||||||
return 0;
|
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if CFG_TUSB_MCU == OPT_MCU_ESP32S2
|
#if CFG_TUSB_MCU == OPT_MCU_ESP32S2
|
||||||
|
@ -132,6 +132,16 @@ extern uint32_t SystemCoreClock;
|
|||||||
#define configASSERT( x )
|
#define configASSERT( x )
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef __RX__
|
||||||
|
/* Renesas RX series */
|
||||||
|
#define vSoftwareInterruptISR INT_Excep_ICU_SWINT
|
||||||
|
#define vTickISR INT_Excep_CMT0_CMI0
|
||||||
|
#define configPERIPHERAL_CLOCK_HZ (configCPU_CLOCK_HZ/2)
|
||||||
|
#define configKERNEL_INTERRUPT_PRIORITY 1
|
||||||
|
#define configMAX_SYSCALL_INTERRUPT_PRIORITY 4
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
/* FreeRTOS hooks to NVIC vectors */
|
/* FreeRTOS hooks to NVIC vectors */
|
||||||
#define xPortPendSVHandler PendSV_Handler
|
#define xPortPendSVHandler PendSV_Handler
|
||||||
#define xPortSysTickHandler SysTick_Handler
|
#define xPortSysTickHandler SysTick_Handler
|
||||||
@ -164,4 +174,6 @@ to all Cortex-M ports, and do not rely on any particular library functions. */
|
|||||||
See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
|
See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
|
||||||
#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
|
#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* __FREERTOS_CONFIG__H */
|
#endif /* __FREERTOS_CONFIG__H */
|
||||||
|
@ -93,3 +93,22 @@ void vApplicationGetTimerTaskMemory( StaticTask_t **ppxTimerTaskTCBBuffer, Stack
|
|||||||
configTIMER_TASK_STACK_DEPTH is specified in words, not bytes. */
|
configTIMER_TASK_STACK_DEPTH is specified in words, not bytes. */
|
||||||
*pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH;
|
*pulTimerTaskStackSize = configTIMER_TASK_STACK_DEPTH;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if CFG_TUSB_MCU == OPT_MCU_RX63X
|
||||||
|
#include "iodefine.h"
|
||||||
|
void vApplicationSetupTimerInterrupt(void)
|
||||||
|
{
|
||||||
|
/* Enable CMT0 */
|
||||||
|
SYSTEM.PRCR.WORD = (0xA5u<<8) | TU_BIT(1);
|
||||||
|
MSTP(CMT0) = 0;
|
||||||
|
SYSTEM.PRCR.WORD = (0xA5u<<8);
|
||||||
|
|
||||||
|
CMT0.CMCNT = 0;
|
||||||
|
CMT0.CMCOR = (unsigned short)(((configPERIPHERAL_CLOCK_HZ/configTICK_RATE_HZ)-1)/128);
|
||||||
|
CMT0.CMCR.WORD = TU_BIT(6) | 2;
|
||||||
|
IR(CMT0, CMI0) = 0;
|
||||||
|
IPR(CMT0, CMI0) = configKERNEL_INTERRUPT_PRIORITY;
|
||||||
|
IEN(CMT0, CMI0) = 1;
|
||||||
|
CMT.CMSTR0.BIT.STR0 = 1;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
@ -98,9 +98,11 @@ int main(void)
|
|||||||
// skip starting scheduler (and return) for ESP32-S2
|
// skip starting scheduler (and return) for ESP32-S2
|
||||||
#if CFG_TUSB_MCU != OPT_MCU_ESP32S2
|
#if CFG_TUSB_MCU != OPT_MCU_ESP32S2
|
||||||
vTaskStartScheduler();
|
vTaskStartScheduler();
|
||||||
|
#if CFG_TUSB_MCU != OPT_MCU_RX63X
|
||||||
NVIC_SystemReset();
|
NVIC_SystemReset();
|
||||||
return 0;
|
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if CFG_TUSB_MCU == OPT_MCU_ESP32S2
|
#if CFG_TUSB_MCU == OPT_MCU_ESP32S2
|
||||||
|
Loading…
x
Reference in New Issue
Block a user