wch-code/ch32v103_cherryusb/User/main.c

42 lines
1.1 KiB
C

#include "debug.h"
#include "usbd_core.h"
#include "usb_hid.h"
void led_init(void)
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_Init(GPIOC, &GPIO_InitStructure);
}
void hid_keyboard_init(uint8_t busid, uint32_t reg_base);
void hid_keyboard_test(uint8_t busid, uint8_t key);
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
SystemCoreClockUpdate();
Delay_Init();
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n", SystemCoreClock);
printf( "ChipID:%08x\r\n", DBGMCU_GetCHIPID() );
printf("This is printf example\r\n");
led_init();
hid_keyboard_init(0, 0);
while(1) {
hid_keyboard_test(0, 0x00);
GPIO_WriteBit(GPIOC, GPIO_Pin_13, Bit_SET);
Delay_Ms(900);
hid_keyboard_test(0, HID_KBD_USAGE_A);
GPIO_WriteBit(GPIOC, GPIO_Pin_13, Bit_RESET);
Delay_Ms(100);
}
}