75 lines
3.1 KiB
C
75 lines
3.1 KiB
C
|
|
/*----------------------------------------------------------------------------------------------------
|
|||
|
|
# THIS FILE IS A PART OF XerolySkinner's PROJECT
|
|||
|
|
#
|
|||
|
|
# THIS PROGRAM IS FREE SOFTWARE
|
|||
|
|
#
|
|||
|
|
# E-mail:ZABBCCCBBAZ@163.com
|
|||
|
|
# QQ:2715099320
|
|||
|
|
#
|
|||
|
|
# Copyright (c) 2022 XerolySkinner
|
|||
|
|
# All rights reserved.
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
/*----------------------------------------------------------------------------------------------------
|
|||
|
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:bsp_Console
|
|||
|
|
ʱ<EFBFBD><EFBFBD>:20220805-0424
|
|||
|
|
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա:<EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>
|
|||
|
|
˵<EFBFBD><EFBFBD>:<EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
// ͷ<>ļ<EFBFBD>
|
|||
|
|
#include "vartable.h"
|
|||
|
|
#include "string.h"
|
|||
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
// <09><><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>
|
|||
|
|
//
|
|||
|
|
#define console_num(num) (*((num*)(console_buff+1)))
|
|||
|
|
#define CONSOLE_BUFF_LEN 32
|
|||
|
|
uint8_t console_buff[CONSOLE_BUFF_LEN]={0};
|
|||
|
|
struct console_pack consolePack={0,0,0};
|
|||
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
// <09><><EFBFBD><EFBFBD>
|
|||
|
|
//
|
|||
|
|
void bsp_ConsoleInit(UART_HandleTypeDef *huart){
|
|||
|
|
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>
|
|||
|
|
__HAL_UART_ENABLE_IT(huart,UART_IT_IDLE);
|
|||
|
|
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
HAL_UART_Receive_DMA(huart,console_buff,CONSOLE_BUFF_LEN);}
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
void bsp_ConsoleJump(UART_HandleTypeDef *huart){
|
|||
|
|
// <09><><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>ת
|
|||
|
|
if(__HAL_UART_GET_FLAG(huart,UART_FLAG_IDLE)!=RESET){
|
|||
|
|
__HAL_UART_CLEAR_IDLEFLAG(huart);
|
|||
|
|
HAL_UART_IdleCpltCallback(huart);}}
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
void HAL_UART_IdleCpltCallback(UART_HandleTypeDef *huart){
|
|||
|
|
HAL_UART_DMAStop(huart);
|
|||
|
|
if(huart==&huart1){
|
|||
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
// <09><>ťʶ<C5A5><CAB6><EFBFBD><EFBFBD>
|
|||
|
|
if(console_buff[0]==0){
|
|||
|
|
switch(console_buff[1]){
|
|||
|
|
case 0:
|
|||
|
|
printf("<EFBFBD><EFBFBD>ť0");break;
|
|||
|
|
case 1:
|
|||
|
|
printf("<EFBFBD><EFBFBD>ť1");break;
|
|||
|
|
default:
|
|||
|
|
printf("<EFBFBD><EFBFBD>ťδ֪\r\n");break;}}
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
// <09><>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>-Ĭ<><C4AC>С<EFBFBD>˽<EFBFBD><CBBD>շ<EFBFBD>ʽ
|
|||
|
|
if(console_buff[0]==1){
|
|||
|
|
memcpy(&consolePack,console_buff+1,sizeof(struct console_pack));}
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
// <09><>ֵʶ<D6B5><CAB6><EFBFBD><EFBFBD>
|
|||
|
|
if(console_buff[0]==2)printf("2<EFBFBD><EFBFBD>:%d\r\n",console_num(int));
|
|||
|
|
//----------------------------------------------------------------------------------------------------
|
|||
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////////
|
|||
|
|
}
|
|||
|
|
HAL_UART_Receive_DMA(huart,console_buff,CONSOLE_BUFF_LEN);}
|
|||
|
|
//////////////////////////////////////////////////////////////////////////////////////////////////////
|