Начало
This commit is contained in:
parent
432176a0db
commit
98efa5d0b1
|
|
@ -176,13 +176,13 @@ static _Noreturn void Serial_ToCanSpontany_Thread(tTaskSerialToCanSpontany *env)
|
||||||
data.can_rx_message.dlc, data.can_rx_message.standard_id, 0, 2,
|
data.can_rx_message.dlc, data.can_rx_message.standard_id, 0, 2,
|
||||||
1000);
|
1000);
|
||||||
if (sent) {
|
if (sent) {
|
||||||
if (data.from_uart == SPONTANY_FROM_UART) {
|
if (data.from_uart == FROM_UART) {
|
||||||
sendOk(env->At_UART);
|
sendOk(env->At_UART);
|
||||||
} else {
|
} else {
|
||||||
sendOk(env->At_UART_USB);
|
sendOk(env->At_UART_USB);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (data.from_uart == SPONTANY_FROM_UART) {
|
if (data.from_uart == FROM_UART) {
|
||||||
sendError(env->At_UART);
|
sendError(env->At_UART);
|
||||||
} else {
|
} else {
|
||||||
sendError(env->At_UART_USB);
|
sendError(env->At_UART_USB);
|
||||||
|
|
@ -195,13 +195,13 @@ static _Noreturn void Serial_ToCanSpontany_Thread(tTaskSerialToCanSpontany *env)
|
||||||
1000);
|
1000);
|
||||||
|
|
||||||
if (sent) {
|
if (sent) {
|
||||||
if (data.from_uart == SPONTANY_FROM_UART) {
|
if (data.from_uart == FROM_UART) {
|
||||||
sendOk(env->At_UART);
|
sendOk(env->At_UART);
|
||||||
} else {
|
} else {
|
||||||
sendOk(env->At_UART_USB);
|
sendOk(env->At_UART_USB);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (data.from_uart == SPONTANY_FROM_UART) {
|
if (data.from_uart == FROM_UART) {
|
||||||
sendError(env->At_UART);
|
sendError(env->At_UART);
|
||||||
} else {
|
} else {
|
||||||
sendError(env->At_UART_USB);
|
sendError(env->At_UART_USB);
|
||||||
|
|
@ -240,26 +240,23 @@ void SerialCommand_Scheduler(tTaskSerial *env) {
|
||||||
if (AtCmdRxBeginWithStatic(&env->At, "T")) {
|
if (AtCmdRxBeginWithStatic(&env->At, "T")) {
|
||||||
|
|
||||||
uint8_t data[8];
|
uint8_t data[8];
|
||||||
//uint32_t adr = iAsciiStringParseUnsignedLongDecimalNumber(&env->At.rxBuffer.data[1],
|
|
||||||
// &env->At.rxBuffer.data[7]);
|
|
||||||
|
|
||||||
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];
|
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];
|
uint8_t remote = data[0];
|
||||||
|
|
||||||
size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[3], 4);
|
size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[5], 4);
|
||||||
uint32_t adr = (data[0] << 8) | data[1];
|
uint32_t adr = (data[0] << 8) | data[1];
|
||||||
|
|
||||||
|
uint8_t len = &env->At.rxBuffer.data[env->At.rxBuffer.len] - &env->At.rxBuffer.data[9] - 2;
|
||||||
uint8_t len = &env->At.rxBuffer.data[env->At.rxBuffer.len] - &env->At.rxBuffer.data[7] - 2;
|
|
||||||
|
|
||||||
if (len > 16) {
|
if (len > 16) {
|
||||||
len = 16;
|
len = 16;
|
||||||
}
|
}
|
||||||
|
|
||||||
size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[7], len);
|
size = iAsciiStringParseHexBytes(data, &env->At.rxBuffer.data[9], len);
|
||||||
|
|
||||||
|
|
||||||
can_rx_message_Spontany dataCan;
|
can_rx_message_Spontany dataCan;
|
||||||
|
|
@ -355,9 +352,8 @@ void SerialCommand_Scheduler(tTaskSerial *env) {
|
||||||
//начало ------------------------------Обработчик UART команд-----------------------------------------------------------
|
//начало ------------------------------Обработчик UART команд-----------------------------------------------------------
|
||||||
|
|
||||||
void TaskSerialUART_Init(tTaskSerial *env,
|
void TaskSerialUART_Init(tTaskSerial *env,
|
||||||
spontany_from_uart from_uart,
|
tFrom_uart from_uart,
|
||||||
tSerialPortIO *ioUART,
|
tSerialPortIO *ioUART,
|
||||||
tSerialPortFrameIO *ioCAN,
|
|
||||||
osMessageQueueId_t txDataQueue_Spontany,
|
osMessageQueueId_t txDataQueue_Spontany,
|
||||||
osMessageQueueId_t txDataQueue_Cyclic0,
|
osMessageQueueId_t txDataQueue_Cyclic0,
|
||||||
osMessageQueueId_t txDataQueue_Cyclic1
|
osMessageQueueId_t txDataQueue_Cyclic1
|
||||||
|
|
@ -369,7 +365,6 @@ void TaskSerialUART_Init(tTaskSerial *env,
|
||||||
env->from_uart = from_uart;
|
env->from_uart = from_uart;
|
||||||
|
|
||||||
env->ioUART = ioUART;
|
env->ioUART = ioUART;
|
||||||
env->ioCAN = ioCAN;
|
|
||||||
|
|
||||||
env->txDataQueue_Spontany = txDataQueue_Spontany;
|
env->txDataQueue_Spontany = txDataQueue_Spontany;
|
||||||
env->txDataQueue_Cyclic0 = txDataQueue_Cyclic0;
|
env->txDataQueue_Cyclic0 = txDataQueue_Cyclic0;
|
||||||
|
|
@ -418,9 +413,8 @@ void TaskSerialUART_StartThread(tTaskSerial *env) {
|
||||||
//начало ------------------------------Обработчик UART USB команд-------------------------------------------------------
|
//начало ------------------------------Обработчик UART USB команд-------------------------------------------------------
|
||||||
|
|
||||||
void TaskSerialUSB_Init(tTaskSerial *env,
|
void TaskSerialUSB_Init(tTaskSerial *env,
|
||||||
spontany_from_uart from_uart,
|
tFrom_uart from_uart,
|
||||||
tSerialPortIO *ioUART,
|
tSerialPortIO *ioUART,
|
||||||
tSerialPortFrameIO *ioCAN,
|
|
||||||
osMessageQueueId_t txDataQueue_Spontany,
|
osMessageQueueId_t txDataQueue_Spontany,
|
||||||
osMessageQueueId_t txDataQueue_Cyclic0,
|
osMessageQueueId_t txDataQueue_Cyclic0,
|
||||||
osMessageQueueId_t txDataQueue_Cyclic1
|
osMessageQueueId_t txDataQueue_Cyclic1
|
||||||
|
|
@ -430,7 +424,6 @@ void TaskSerialUSB_Init(tTaskSerial *env,
|
||||||
env->from_uart = from_uart;
|
env->from_uart = from_uart;
|
||||||
|
|
||||||
env->ioUART = ioUART;
|
env->ioUART = ioUART;
|
||||||
env->ioCAN = ioCAN;
|
|
||||||
|
|
||||||
env->txDataQueue_Spontany = txDataQueue_Spontany;
|
env->txDataQueue_Spontany = txDataQueue_Spontany;
|
||||||
env->txDataQueue_Cyclic0 = txDataQueue_Cyclic0;
|
env->txDataQueue_Cyclic0 = txDataQueue_Cyclic0;
|
||||||
|
|
|
||||||
|
|
@ -11,9 +11,9 @@
|
||||||
#include "CanSerialPortFrame.h"
|
#include "CanSerialPortFrame.h"
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
SPONTANY_FROM_UART,
|
FROM_UART,
|
||||||
SPONTANY_FROM_UART_USB
|
FROM_UART_USB
|
||||||
} spontany_from_uart;
|
} tFrom_uart;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
|
||||||
|
|
@ -22,8 +22,7 @@ typedef struct {
|
||||||
uint8_t AtTx[255];
|
uint8_t AtTx[255];
|
||||||
|
|
||||||
tSerialPortIO *ioUART;
|
tSerialPortIO *ioUART;
|
||||||
tSerialPortFrameIO *ioCAN;
|
tFrom_uart from_uart;
|
||||||
spontany_from_uart from_uart;
|
|
||||||
osMutexId_t access;
|
osMutexId_t access;
|
||||||
|
|
||||||
osMessageQueueId_t txDataQueue_Spontany;
|
osMessageQueueId_t txDataQueue_Spontany;
|
||||||
|
|
@ -59,7 +58,7 @@ typedef struct {
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
can_rx_message_type can_rx_message;
|
can_rx_message_type can_rx_message;
|
||||||
spontany_from_uart from_uart;
|
tFrom_uart from_uart;
|
||||||
} can_rx_message_Spontany;
|
} can_rx_message_Spontany;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
|
@ -82,9 +81,8 @@ typedef struct {
|
||||||
} tTaskSerialToCanSpontany;
|
} tTaskSerialToCanSpontany;
|
||||||
|
|
||||||
void TaskSerialUART_Init(tTaskSerial *env,
|
void TaskSerialUART_Init(tTaskSerial *env,
|
||||||
spontany_from_uart from_uart,
|
tFrom_uart from_uart,
|
||||||
tSerialPortIO *ioUART,
|
tSerialPortIO *ioUART,
|
||||||
tSerialPortFrameIO *ioCAN,
|
|
||||||
osMessageQueueId_t txDataQueue_Spontany,
|
osMessageQueueId_t txDataQueue_Spontany,
|
||||||
osMessageQueueId_t txDataQueue_Cyclic0,
|
osMessageQueueId_t txDataQueue_Cyclic0,
|
||||||
osMessageQueueId_t txDataQueue_Cyclic1
|
osMessageQueueId_t txDataQueue_Cyclic1
|
||||||
|
|
@ -93,9 +91,8 @@ void TaskSerialUART_Init(tTaskSerial *env,
|
||||||
void TaskSerialUART_StartThread(tTaskSerial *env);
|
void TaskSerialUART_StartThread(tTaskSerial *env);
|
||||||
|
|
||||||
void TaskSerialUSB_Init(tTaskSerial *env,
|
void TaskSerialUSB_Init(tTaskSerial *env,
|
||||||
spontany_from_uart from_uart,
|
tFrom_uart from_uart,
|
||||||
tSerialPortIO *ioUART,
|
tSerialPortIO *ioUART,
|
||||||
tSerialPortFrameIO *ioCAN,
|
|
||||||
osMessageQueueId_t txDataQueue_Spontany,
|
osMessageQueueId_t txDataQueue_Spontany,
|
||||||
osMessageQueueId_t txDataQueue_Cyclic0,
|
osMessageQueueId_t txDataQueue_Cyclic0,
|
||||||
osMessageQueueId_t txDataQueue_Cyclic1
|
osMessageQueueId_t txDataQueue_Cyclic1
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue