// Application Main program __NO_RETURN void app_main (void *argument) { (void)argument; DAP_Setup(); // DAP Setup USBD_Initialize(0U); // USB Device Initialization USBD_Connect(0U); // USB Device Connect while (!USBD_Configured(0U)); // Wait for USB Device to configure LED_CONNECTED_OUT(1U); // Turn on Debugger Connected LED LED_RUNNING_OUT(1U); // Turn on Target Running LED Delayms(500U); // Wait for 500ms LED_RUNNING_OUT(0U); // Turn off Target Running LED LED_CONNECTED_OUT(0U); // Turn off Debugger Connected LED // Create DAP Thread DAP_ThreadId = osThreadNew(DAP_Thread, NULL, &DAP_ThreadAttr); // Create SWO Thread SWO_ThreadId = osThreadNew(SWO_Thread, NULL, &SWO_ThreadAttr); osDelay(osWaitForever); for (;;) {}; }
// Main program int main (void) { DAP_Setup(); // DAP Setup USBD_Initialize(0U); // USB Device Initialization USBD_Connect(0U); // USB Device Connect while (!USBD_Configured(0U)); // Wait for USB Device to configure LED_CONNECTED_OUT(1U); // Turn on Debugger Connected LED LED_RUNNING_OUT(1U); // Turn on Target Running LED Delayms(500U); // Wait for 500ms LED_RUNNING_OUT(0U); // Turn off Target Running LED LED_CONNECTED_OUT(0U); // Turn off Debugger Connected LED // Create HID Thread HID0_ThreadId = osThreadCreate(osThread(HID0_Thread), NULL); osThreadSetPriority(osThreadGetId(), osPriorityIdle); for (;;); // Endless Loop }
void main (void) { // set pll out 48Mhz, set cpu clock 48Mhz SYS_UnlockReg(); CLK_EnableXtalRC(CLK_PWRCON_XTL12M_EN_Msk); CLK_WaitClockReady(CLK_CLKSTATUS_XTL12M_STB_Msk); CLK_SetCoreClock(48000000); CLK_EnableModuleClock(USBD_MODULE); CLK_SetModuleClock(USBD_MODULE, 0, CLK_CLKDIV_USB(1)); DAP_Setup(); USBD_Open(&gsInfo, HID_ClassRequest, NULL); HID_Init(); balabala_hid_init(); USBD_Start(); NVIC_EnableIRQ(USBD_IRQn); while(1) { usbd_hid_process(); } }