/*
串口中断函数
*/
void UART2_IRQHandler(void)
{
char cChar;
/*发送*/
// if(UART2->UARTMIS & (1UL << UART_TXInt))
// {
// UartPollingSenddata(UART2,cChar);
// }
/*接收*/
//判断中断标志位
if(UART2->UARTMIS & (1UL << UART_RXInt))
{
//查询方式接收
cChar = UartPollingReceiveData(UART2);
//查询方式发送
UartPollingSenddata(UART2,cChar);
}
//清除中断标志位
UART_IntClear(UART2,UART_AllInt);
}
/*
用户初始化
*/
void User_init(void)
{
//串口2配置为中断模式,波特率921600
UARTInterruptConfig(UART2,UART_BaudRate921600);
UartPollingSenddata(UART2,'@');
UartPollingSenddata(UART2,'@');
UartPollingSenddata(UART2,'@');
}
/*
用户主程序任务
*/
static void User_main(void *p_arg)
{
while (1)
{
//延时1000ms
vTaskDelay(1000);
}
//注销当前任务
vTaskDelete(NULL);
}
/**
* @brief
*
*/
int main(void)
{
hardware_default_init();
/*平台相关初始化*/
platform_init();
//用户初始化
User_init();
/* 版本信息 */
welcome();
/* 创建启动任务 */
xTaskCreate(task_init,"init task",280,NULL,4,NULL);
//创建用户主程序任务
xTaskCreate(User_main,"User main",280,NULL,4,NULL);
/* 启动调度,开始执行任务 */
vTaskStartScheduler();
while(1){}
}