mirror of
https://github.com/avem-labs/Avem.git
synced 2023-09-01 15:18:49 +08:00
[MOD]: Add PID Task
This commit is contained in:
parent
848805f6e4
commit
4f0fca8b92
@ -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);
|
||||
|
@ -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++);
|
||||
}
|
||||
|
49
src/main.c
49
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);
|
||||
|
Loading…
x
Reference in New Issue
Block a user