diff --git a/libs/include/mpu6050.h b/libs/include/mpu6050.h index 625a5a9..fd97b7c 100644 --- a/libs/include/mpu6050.h +++ b/libs/include/mpu6050.h @@ -60,7 +60,6 @@ typedef struct{ }SixAxis, *pSixAxis; -void initLED(); void MPU_Sigle_Write(unsigned char reg_addr, unsigned char reg_data); unsigned char MPU_Sigle_Read(unsigned reg_addr); short MPU_GetData(unsigned char REG_Addr); diff --git a/libs/source/uart.c b/libs/source/uart.c index 3ac4f74..f39a15f 100644 --- a/libs/source/uart.c +++ b/libs/source/uart.c @@ -108,15 +108,6 @@ unsigned char uart_Float2Char(float value) { } void uart_sendStr(char *cmd) { - // unsigned short pointer = 0; - // while(*(cmd + pointer)) { - // uart_sendData(*(cmd + pointer)); - // pointer++; - // } - - // for(;*cmd;) - // uart_sendData(*cmd++); - while(*cmd) uart_sendData(*cmd++); } diff --git a/src/main.c b/src/main.c index c443bb2..38f1e51 100644 --- a/src/main.c +++ b/src/main.c @@ -114,12 +114,14 @@ void mpu_task() { } } +#ifdef DEBUG_BLDC void pid_task() { while(1) { pid_SingleAxis(&g_pid_roll, 0); vTaskDelay(10); } } +#endif void uart_task() { while(1) { @@ -138,6 +140,48 @@ void uart_task() { } } +void uart_debugPID() { + while(1) { + TTY_CLEAR(); + + TTY_RED(); + uart_sendStr(" Motor占空比: "); + TTY_NONE(); + TTY_BLUE(); + uart_showData(*g_pid_roll.Channel1); + uart_sendStr("\t"); + uart_showData(*g_pid_roll.Channel2); + TTY_NONE(); + + uart_sendStr("\n\rRoll:\t"); + uart_Float2Char(*g_pid_roll.Feedback); + + uart_sendStr("\tGyro:\t"); + uart_Float2Char(*g_pid_roll.Gyro); + + uart_sendStr("\n\rP:\t"); + uart_Float2Char(g_pid_roll.p); + + uart_sendStr("\n\rI:\t"); + uart_Float2Char(g_pid_roll.i); + + uart_sendStr("\n\rD:\t"); + uart_Float2Char(g_pid_roll.d); + + uart_sendStr("\n\r=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=_=\n\rInner Cache:\t"); + uart_Float2Char(g_pid_roll.InnerLast); + uart_sendStr("\n\rOutter Cache:\t"); + uart_Float2Char(g_pid_roll.OutterLast); + + uart_sendStr("\n\rOutput:\t\t"); + TTY_RED(); + uart_showData(g_pid_roll.output); + TTY_NONE(); + uart_sendStr("\n\r"); + vTaskDelay(100); + } +} + int main() { #ifdef DEBUG_BLDC @@ -152,8 +196,9 @@ int main() { uart_sendStr("MPU6050 Connect Success!"); UART_CR(); - xTaskCreate(uart_task, "UART_TASK", 100, NULL, 1, NULL); - xTaskCreate(mpu_task, "MPU_TASK", 100, NULL, 2, NULL); + xTaskCreate(uart_debugPID, "UART_TASK", 100, NULL, 1, NULL); + xTaskCreate(mpu_task, "MPU_TASK", 100, NULL, 3, NULL); + xTaskCreate(pid_task, "PID_TASK", 100, NULL, 2, NULL); vTaskStartScheduler(); uart_sendStr("Stack Overflow..."); while(1);