Init
This commit is contained in:
parent
7de6ea1a1d
commit
47757ea4ee
254
ArbiterCommand.c
254
ArbiterCommand.c
|
|
@ -9,32 +9,7 @@
|
|||
#include "AsciiStringParsingUtils.h"
|
||||
#include "memory.h"
|
||||
#include <stdlib.h>
|
||||
|
||||
/*
|
||||
void sendOk(tAtCmd *AtCmd) {
|
||||
AtCmdPrepare(AtCmd);
|
||||
AtCmdTxClear(AtCmd);
|
||||
AtCmdTxAddStatic(AtCmd, "OK");
|
||||
AtCmdTxSendLn(AtCmd);
|
||||
AtCmdRxClear(AtCmd);
|
||||
}
|
||||
|
||||
void sendError(tAtCmd *AtCmd) {
|
||||
AtCmdPrepare(AtCmd);
|
||||
AtCmdTxClear(AtCmd);
|
||||
AtCmdTxAddStatic(AtCmd, "ERROR");
|
||||
AtCmdTxSendLn(AtCmd);
|
||||
AtCmdRxClear(AtCmd);
|
||||
}
|
||||
|
||||
void sendVers(tAtCmd *AtCmd) {
|
||||
AtCmdPrepare(AtCmd);
|
||||
AtCmdTxClear(AtCmd);
|
||||
AtCmdTxAddStatic(AtCmd, "v001");
|
||||
AtCmdTxSendLn(AtCmd);
|
||||
AtCmdRxClear(AtCmd);
|
||||
}
|
||||
*/
|
||||
#include "dig_pot.h"
|
||||
|
||||
|
||||
//начало ------------------------------Отправка без подтверждения-------------------------------------------------------
|
||||
|
|
@ -45,7 +20,6 @@ void TaskSerialToCanCyclic0_Init(tTaskSerialToCanCyclic *env,
|
|||
tSerialPortFrameIO *ioCAN
|
||||
) {
|
||||
|
||||
// env->access = osMutexNew(NULL);
|
||||
env->ioCAN = ioCAN;
|
||||
env->txDataQueue = osMessageQueueNew(20, sizeof(can_rx_message_type), NULL);
|
||||
|
||||
|
|
@ -57,8 +31,6 @@ void TaskSerialToCanCyclic0_Init(tTaskSerialToCanCyclic *env,
|
|||
static _Noreturn void Serial_ToCanCyclic0_Thread(tTaskSerialToCanCyclic *env) {
|
||||
for (;;) {
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
|
||||
can_rx_message_type data;
|
||||
if (osMessageQueueGet(env->txDataQueue, &data, NULL, 1000) == osOK) {
|
||||
|
||||
|
|
@ -71,18 +43,13 @@ static _Noreturn void Serial_ToCanCyclic0_Thread(tTaskSerialToCanCyclic *env) {
|
|||
}
|
||||
}
|
||||
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
uint32_t GetCountQueueCanCyclic0(tTaskSerialToCanCyclic *env) {
|
||||
uint32_t count = 0;
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
count = osMessageQueueGetCount(env->txDataQueue);
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
return count;
|
||||
}
|
||||
|
|
@ -90,10 +57,7 @@ uint32_t GetCountQueueCanCyclic0(tTaskSerialToCanCyclic *env) {
|
|||
osStatus_t PutQueueCanCyclic0(tTaskSerialToCanCyclic *env, can_rx_message_type *dataCan) {
|
||||
osStatus_t status = osErrorTimeout;
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
status = osMessageQueuePut(env->txDataQueue, dataCan, 0x0, 0U);
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
return status;
|
||||
}
|
||||
|
|
@ -118,7 +82,6 @@ void TaskSerialToCanCyclic1_Init(tTaskSerialToCanCyclic *env,
|
|||
|
||||
) {
|
||||
|
||||
// env->access = osMutexNew(NULL);
|
||||
env->ioCAN = ioCAN;
|
||||
env->txDataQueue = osMessageQueueNew(20, sizeof(can_rx_message_type), NULL);
|
||||
|
||||
|
|
@ -130,8 +93,6 @@ void TaskSerialToCanCyclic1_Init(tTaskSerialToCanCyclic *env,
|
|||
static _Noreturn void Serial_ToCanCyclic1_Thread(tTaskSerialToCanCyclic *env) {
|
||||
for (;;) {
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
|
||||
can_rx_message_type data;
|
||||
if (osMessageQueueGet(env->txDataQueue, &data, NULL, 1000) == osOK) {
|
||||
|
||||
|
|
@ -144,18 +105,13 @@ static _Noreturn void Serial_ToCanCyclic1_Thread(tTaskSerialToCanCyclic *env) {
|
|||
}
|
||||
}
|
||||
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
uint32_t GetCountQueueCanCyclic1(tTaskSerialToCanCyclic *env) {
|
||||
uint32_t count = 0;
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
count = osMessageQueueGetCount(env->txDataQueue);
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
return count;
|
||||
}
|
||||
|
|
@ -163,10 +119,7 @@ uint32_t GetCountQueueCanCyclic1(tTaskSerialToCanCyclic *env) {
|
|||
osStatus_t PutQueueCanCyclic1(tTaskSerialToCanCyclic *env, can_rx_message_type *dataCan) {
|
||||
osStatus_t status = osErrorTimeout;
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
status = osMessageQueuePut(env->txDataQueue, dataCan, 0x0, 0U);
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
return status;
|
||||
}
|
||||
|
|
@ -193,7 +146,6 @@ void TaskSerialToCanSpontany_Init(tTaskSerialToCanSpontany *env,
|
|||
|
||||
) {
|
||||
|
||||
// env->access = osMutexNew(NULL);
|
||||
env->ioCAN = ioCAN;
|
||||
|
||||
env->ioUSB1 = ioUSB1;
|
||||
|
|
@ -209,8 +161,6 @@ void TaskSerialToCanSpontany_Init(tTaskSerialToCanSpontany *env,
|
|||
static _Noreturn void Serial_ToCanSpontany_Thread(tTaskSerialToCanSpontany *env) {
|
||||
for (;;) {
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
|
||||
can_rx_message_Spontany data;
|
||||
if (osMessageQueueGet(env->txDataQueue, &data, NULL, 1000) == osOK) {
|
||||
|
||||
|
|
@ -254,18 +204,13 @@ static _Noreturn void Serial_ToCanSpontany_Thread(tTaskSerialToCanSpontany *env)
|
|||
}
|
||||
}
|
||||
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
osStatus_t PutQueueCanSpontany(tTaskSerialToCanSpontany *env, can_rx_message_Spontany *dataCan) {
|
||||
osStatus_t status = osErrorTimeout;
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
status = osMessageQueuePut(env->txDataQueue, dataCan, 0x0, 0U);
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
return status;
|
||||
}
|
||||
|
|
@ -286,6 +231,50 @@ void TaskSerialToCanSpontany_StartThread(tTaskSerialToCanSpontany *env) {
|
|||
//начало ------------------------------Парсер команд--------------------------------------------------------------------
|
||||
//начало ------------------------------Парсер команд--------------------------------------------------------------------
|
||||
//начало ------------------------------Парсер команд--------------------------------------------------------------------
|
||||
static bool
|
||||
setResistance(tTaskSerial *env, char *name, const TablePoint *table, int table_size, tSensorType sensorType,
|
||||
tSensorAdr sensorAdr1, tSensorAdr sensorAdr2) {
|
||||
char *start = env->At.rxBuffer.data + strlen(name);
|
||||
int16_t temperature = atoi(start);
|
||||
uint32_t resistance = get_resistance_by_temperature_linear(table, table_size, temperature);
|
||||
uint8_t step100;
|
||||
uint8_t step10;
|
||||
find_steps_for_resistance(resistance, &step100, &step10);
|
||||
|
||||
step100 = 255 - step100;
|
||||
step10 = 255 - step10;
|
||||
|
||||
bool result1 = setSpiSensor(env->sensorSPI, sensorType, sensorAdr1, step100);
|
||||
bool result2 = setSpiSensor(env->sensorSPI, sensorType, sensorAdr2, step10);
|
||||
|
||||
if ((result1) && (result2)) {
|
||||
env->ioUSB->transmit(env->ioUSB->env, (uint8_t *) "OK\r\n", sizeof("OK\r\n") - 1, 1000);
|
||||
} else {
|
||||
env->ioUSB->transmit(env->ioUSB->env, (uint8_t *) "ERROR\r\n", sizeof("ERROR\r\n") - 1, 1000);
|
||||
}
|
||||
|
||||
return (result1 && result2);
|
||||
}
|
||||
|
||||
static bool
|
||||
setResistanceInit(tTaskSerial *env, char *name, int16_t temperature, const TablePoint *table, int table_size,
|
||||
tSensorType sensorType,
|
||||
tSensorAdr sensorAdr1, tSensorAdr sensorAdr2) {
|
||||
|
||||
uint32_t resistance = get_resistance_by_temperature_linear(table, table_size, temperature);
|
||||
|
||||
uint8_t step100;
|
||||
uint8_t step10;
|
||||
find_steps_for_resistance(resistance, &step100, &step10);
|
||||
|
||||
step100 = 255 - step100;
|
||||
step10 = 255 - step10;
|
||||
|
||||
bool result1 = setSpiSensor(env->sensorSPI, sensorType, sensorAdr1, step100);
|
||||
bool result2 = setSpiSensor(env->sensorSPI, sensorType, sensorAdr2, step10);
|
||||
|
||||
return (result1 && result2);
|
||||
}
|
||||
|
||||
void SerialCommand_Scheduler(tTaskSerial *env) {
|
||||
|
||||
|
|
@ -296,6 +285,7 @@ void SerialCommand_Scheduler(tTaskSerial *env) {
|
|||
if (AtCmdRxBeginWithStatic(&env->At, "T")) {
|
||||
|
||||
uint8_t data[8];
|
||||
memset(data, 0, sizeof(data));
|
||||
|
||||
uint8_t size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[1], 2);
|
||||
uint8_t opt = data[0];
|
||||
|
|
@ -345,16 +335,15 @@ void SerialCommand_Scheduler(tTaskSerial *env) {
|
|||
if (AtCmdRxBeginWithStatic(&env->At, "t")) {
|
||||
|
||||
uint8_t data[8];
|
||||
//uint32_t adr = iAsciiStringParseUnsignedLongDecimalNumber(&env->At.rxBuffer.data[1],
|
||||
// &env->At.rxBuffer.data[9]);
|
||||
memset(data, 0, sizeof(data));
|
||||
|
||||
uint8_t size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[0], 1);
|
||||
uint8_t size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[1], 2);
|
||||
uint8_t opt = data[0];
|
||||
|
||||
size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[1], 1);
|
||||
size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[3], 2);
|
||||
uint8_t remote = data[0];
|
||||
|
||||
size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[3], 8);
|
||||
size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[5], 8);
|
||||
uint32_t adr = (data[0] << 24) | (data[1] << 16) | (data[2] << 8) | (data[3] << 0);
|
||||
|
||||
uint8_t len = &env->At.rxBuffer.data[env->At.rxBuffer.len] - &env->At.rxBuffer.data[9] - 2;
|
||||
|
|
@ -393,12 +382,76 @@ void SerialCommand_Scheduler(tTaskSerial *env) {
|
|||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "V")) {
|
||||
env->ioUSB->transmit(env->ioUSB->env, (uint8_t *) "v001\r\n", sizeof("v001\r\n") - 1, 1000);
|
||||
SystemDelayMs(1);
|
||||
env->ioUSB->transmit(env->ioUSB->env, (uint8_t *) "OK\r\n", sizeof("OK\r\n") - 1, 1000);
|
||||
env->ioUSB->transmit(env->ioUSB->env, (uint8_t *) "v001\r\nOK\r\n", sizeof("v001\r\nOK\r\n") - 1, 1000);
|
||||
}
|
||||
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_FL_Upper")) {
|
||||
setResistance(env, "Duct_FL_Upper", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_A,
|
||||
SENSOR_ADR_1, SENSOR_ADR_2);
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_FR_Upper")) {
|
||||
setResistance(env, "Duct_FR_Upper", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_A,
|
||||
SENSOR_ADR_3, SENSOR_ADR_4);
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_FL_Lower")) {
|
||||
setResistance(env, "Duct_FL_Lower", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_A,
|
||||
SENSOR_ADR_5, SENSOR_ADR_6);
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_FR_Lower")) {
|
||||
setResistance(env, "Duct_FR_Lower", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_A,
|
||||
SENSOR_ADR_7, SENSOR_ADR_8);
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_FL_Side")) {
|
||||
setResistance(env, "Duct_FL_Side", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_A,
|
||||
SENSOR_ADR_9, SENSOR_ADR_10);
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_FR_Side")) {
|
||||
setResistance(env, "Duct_FR_Side", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_A,
|
||||
SENSOR_ADR_11, SENSOR_ADR_12);
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Sen_Eva_F")) {
|
||||
setResistance(env, "Sen_Eva_F", duct_lookup_table_20000, size_duct_lookup_table_20000, SENSOR_TYPE_A,
|
||||
SENSOR_ADR_13, SENSOR_ADR_14);
|
||||
}
|
||||
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_RL_Side")) {
|
||||
setResistance(env, "Duct_RL_Side", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_B,
|
||||
SENSOR_ADR_5, SENSOR_ADR_6);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_RR_Side")) {
|
||||
setResistance(env, "Duct_RR_Side", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_B,
|
||||
SENSOR_ADR_7, SENSOR_ADR_8);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_RL")) {
|
||||
setResistance(env, "Duct_RL", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_B,
|
||||
SENSOR_ADR_1, SENSOR_ADR_2);
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Duct_RR")) {
|
||||
setResistance(env, "Duct_RR", duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_B,
|
||||
SENSOR_ADR_3, SENSOR_ADR_4);
|
||||
}
|
||||
|
||||
if (AtCmdRxBeginWithStatic(&env->At, "Sen_Eva_R")) {
|
||||
setResistance(env, "Sen_Eva_R", duct_lookup_table_20000, size_duct_lookup_table_20000, SENSOR_TYPE_B,
|
||||
SENSOR_ADR_9, SENSOR_ADR_10);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
//конец ------------------------------Парсер команд--------------------------------------------------------------------
|
||||
|
|
@ -416,15 +469,15 @@ void TaskSerialUSB1_Init(tTaskSerial *env,
|
|||
tSerialPortIO *ioUSB1,
|
||||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic0,
|
||||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic1,
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany,
|
||||
tSensorSPI *sensorSPI
|
||||
|
||||
) {
|
||||
|
||||
// env->access = osMutexNew(NULL);
|
||||
env->from_usb = from_usb;
|
||||
|
||||
env->ioUSB = ioUSB1;
|
||||
|
||||
env->sensorSPI = sensorSPI;
|
||||
env->TaskSerialToCanCyclic0 = TaskSerialToCanCyclic0;
|
||||
env->TaskSerialToCanCyclic1 = TaskSerialToCanCyclic1;
|
||||
env->TaskSerialToCanSpontany = TaskSerialToCanSpontany;
|
||||
|
|
@ -443,15 +496,60 @@ void TaskSerialUSB1_Init(tTaskSerial *env,
|
|||
|
||||
|
||||
static _Noreturn void Serial_USB1_Thread(tTaskSerial *env) {
|
||||
|
||||
int16_t temperature = 250;
|
||||
|
||||
setResistanceInit(env, "Duct_FL_Upper", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000,
|
||||
SENSOR_TYPE_A,
|
||||
SENSOR_ADR_1,
|
||||
SENSOR_ADR_2);
|
||||
setResistanceInit(env, "Duct_FR_Upper", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000,
|
||||
SENSOR_TYPE_A,
|
||||
SENSOR_ADR_3,
|
||||
SENSOR_ADR_4);
|
||||
setResistanceInit(env, "Duct_FL_Lower", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000,
|
||||
SENSOR_TYPE_A,
|
||||
SENSOR_ADR_5,
|
||||
SENSOR_ADR_6);
|
||||
setResistanceInit(env, "Duct_FR_Lower", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000,
|
||||
SENSOR_TYPE_A,
|
||||
SENSOR_ADR_7,
|
||||
SENSOR_ADR_8);
|
||||
setResistanceInit(env, "Duct_FL_Side", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000,
|
||||
SENSOR_TYPE_A,
|
||||
SENSOR_ADR_9,
|
||||
SENSOR_ADR_10);
|
||||
setResistanceInit(env, "Duct_FR_Side", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000,
|
||||
SENSOR_TYPE_A,
|
||||
SENSOR_ADR_11,
|
||||
SENSOR_ADR_12);
|
||||
setResistanceInit(env, "Sen_Eva_F", temperature, duct_lookup_table_20000, size_duct_lookup_table_20000,
|
||||
SENSOR_TYPE_A,
|
||||
SENSOR_ADR_13,
|
||||
SENSOR_ADR_14);
|
||||
setResistanceInit(env, "Duct_RL_Side", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000,
|
||||
SENSOR_TYPE_B,
|
||||
SENSOR_ADR_5,
|
||||
SENSOR_ADR_6);
|
||||
setResistanceInit(env, "Duct_RR_Side", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000,
|
||||
SENSOR_TYPE_B,
|
||||
SENSOR_ADR_7,
|
||||
SENSOR_ADR_8);
|
||||
setResistanceInit(env, "Duct_RL", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_B,
|
||||
SENSOR_ADR_1,
|
||||
SENSOR_ADR_2);
|
||||
setResistanceInit(env, "Duct_RR", temperature, duct_lookup_table_3000, size_duct_lookup_table_3000, SENSOR_TYPE_B,
|
||||
SENSOR_ADR_3,
|
||||
SENSOR_ADR_4);
|
||||
setResistanceInit(env, "Sen_Eva_R", temperature, duct_lookup_table_20000, size_duct_lookup_table_20000,
|
||||
SENSOR_TYPE_B,
|
||||
SENSOR_ADR_9,
|
||||
SENSOR_ADR_10);
|
||||
|
||||
for (;;) {
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
|
||||
SerialCommand_Scheduler(env);
|
||||
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
SystemDelayMs(1);
|
||||
}
|
||||
}
|
||||
|
|
@ -476,12 +574,13 @@ void TaskSerialUSB2_Init(tTaskSerial *env,
|
|||
tSerialPortIO *ioUSB2,
|
||||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic0,
|
||||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic1,
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany,
|
||||
tSensorSPI *sensorSPI
|
||||
) {
|
||||
|
||||
// env->access = osMutexNew(NULL);
|
||||
env->from_usb = from_usb;
|
||||
|
||||
env->sensorSPI = sensorSPI;
|
||||
env->ioUSB = ioUSB2;
|
||||
|
||||
env->TaskSerialToCanCyclic0 = TaskSerialToCanCyclic0;
|
||||
|
|
@ -504,13 +603,8 @@ void TaskSerialUSB2_Init(tTaskSerial *env,
|
|||
static _Noreturn void Serial_USB2_Thread(tTaskSerial *env) {
|
||||
for (;;) {
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
|
||||
SerialCommand_Scheduler(env);
|
||||
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
SystemDelayMs(1);
|
||||
}
|
||||
}
|
||||
|
|
@ -657,7 +751,7 @@ void Task_RECEIVED_SerialUSB2_Init(tTaskReceivedSerial *env,
|
|||
|
||||
// env->access = osMutexNew(NULL);
|
||||
env->from_usb = from_usb2;
|
||||
env->ioUSB= ioUSB2;
|
||||
env->ioUSB = ioUSB2;
|
||||
env->ioCAN = ioCAN;
|
||||
|
||||
SerialPortClearRxBuffer(env->ioUSB);
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
#include "SerialPortIO.h"
|
||||
#include "AtCmdCommon.h"
|
||||
#include "CanSerialPortFrame.h"
|
||||
|
||||
#include "SensorSPI.h"
|
||||
|
||||
typedef enum {
|
||||
FROM_USB1,
|
||||
|
|
@ -70,6 +70,8 @@ typedef struct {
|
|||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic1;
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany;
|
||||
|
||||
tSensorSPI *sensorSPI;
|
||||
|
||||
struct {
|
||||
osThreadId_t id;
|
||||
uint32_t stack[1024];
|
||||
|
|
@ -109,7 +111,8 @@ void TaskSerialUSB1_Init(tTaskSerial *env,
|
|||
tSerialPortIO *ioUSB1,
|
||||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic0,
|
||||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic1,
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany,
|
||||
tSensorSPI *sensorSPI
|
||||
);
|
||||
|
||||
void TaskSerialUSB1_StartThread(tTaskSerial *env);
|
||||
|
|
@ -119,7 +122,8 @@ void TaskSerialUSB2_Init(tTaskSerial *env,
|
|||
tSerialPortIO *ioUSB2,
|
||||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic0,
|
||||
tTaskSerialToCanCyclic *TaskSerialToCanCyclic1,
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany
|
||||
tTaskSerialToCanSpontany *TaskSerialToCanSpontany,
|
||||
tSensorSPI *sensorSPI
|
||||
|
||||
);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue