Обновление
This commit is contained in:
parent
ae1e97fa26
commit
b06b31a411
|
|
@ -20,7 +20,9 @@ static void DMA_USART2_ErrorCallback() {
|
||||||
static void DMA_USART2_TransferCompleteCallback() {
|
static void DMA_USART2_TransferCompleteCallback() {
|
||||||
++SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF;
|
++SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF;
|
||||||
|
|
||||||
SerialPortTransmit(&SERIAL_PORTS.cliVirtualInIo,
|
// SerialPort_RxDmaBufToQueue(SERIAL_PORTS.SerialPortLog_IO.env, buf_USART2_DMA);
|
||||||
|
|
||||||
|
SerialPortTransmit(&SERIAL_PORTS.cliVirtualPortIn_Io,
|
||||||
(uint8_t *) &buf_USART2_DMA[SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF],
|
(uint8_t *) &buf_USART2_DMA[SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF],
|
||||||
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF, 0);
|
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF, 0);
|
||||||
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF += SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF;
|
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF += SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF;
|
||||||
|
|
@ -34,7 +36,9 @@ static void DMA_USART2_TransferCompleteCallback() {
|
||||||
|
|
||||||
static void FCUART_IldeInterrupt_CallBack(uint8_t u8UartIndex) {
|
static void FCUART_IldeInterrupt_CallBack(uint8_t u8UartIndex) {
|
||||||
|
|
||||||
SerialPortTransmit(&SERIAL_PORTS.cliVirtualInIo,
|
SerialPort_RxDmaBufToQueue(SERIAL_PORTS.SerialPortLog_IO.env, buf_USART2_DMA);
|
||||||
|
|
||||||
|
SerialPortTransmit(&SERIAL_PORTS.cliVirtualPortIn_Io,
|
||||||
(uint8_t *) &buf_USART2_DMA[SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF],
|
(uint8_t *) &buf_USART2_DMA[SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF],
|
||||||
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF, 0);
|
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF, 0);
|
||||||
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF += SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF;
|
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF += SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_LEN_BUF;
|
||||||
|
|
@ -42,7 +46,7 @@ static void FCUART_IldeInterrupt_CallBack(uint8_t u8UartIndex) {
|
||||||
if (SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF >= SERIAL_PORTS.SerialPortLog.DMA_BUF_LEN)
|
if (SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF >= SERIAL_PORTS.SerialPortLog.DMA_BUF_LEN)
|
||||||
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF = 0;
|
SERIAL_PORTS.SerialPortLog.UART_DMA_RECEIVED_POINTER_BUF = 0;
|
||||||
|
|
||||||
// DMA_ModifyAddress(DMA_INSTANCE_0, SERIAL_PORTS.SerialPortLog.RX_DMA_CHANNEL, &(SERIAL_PORTS.SerialPortLog.UART->DATA), (void *)((uint32_t)(buf_USART2_DMA)));
|
// DMA_ModifyAddress(DMA_INSTANCE_0, SERIAL_PORTS.SerialPortLog.RX_DMA_CHANNEL, &(SERIAL_PORTS.SerialPortLog.UART->DATA), (void *)((uint32_t)(buf_USART2_DMA)));
|
||||||
|
|
||||||
PROCESS_UNUSED_VAR(u8UartIndex)
|
PROCESS_UNUSED_VAR(u8UartIndex)
|
||||||
}
|
}
|
||||||
|
|
@ -143,9 +147,16 @@ void SerialPorts_Init() {
|
||||||
tSerialPorts *env = &SERIAL_PORTS;
|
tSerialPorts *env = &SERIAL_PORTS;
|
||||||
|
|
||||||
//// Виртуальный сериал порт
|
//// Виртуальный сериал порт
|
||||||
SerialPortP2p_Init(&env->cliVirtualPort, 4 * 1024, 1024);
|
|
||||||
env->cliVirtualInIo = SerialPortP2p_GetIoFirst(&env->cliVirtualPort);
|
SerialPortVirt_Init(&env->cliVirtualPortOut, 1024);
|
||||||
env->cliVirtualOutIo = SerialPortP2p_GetIoSecond(&env->cliVirtualPort);
|
env->cliVirtualPortOut_Io = SerialPortVirt_GetIo(&env->cliVirtualPortOut);
|
||||||
|
|
||||||
|
SerialPortVirt_Init(&env->cliVirtualPortIn, 128);
|
||||||
|
env->cliVirtualPortIn_Io = SerialPortVirt_GetIo(&env->cliVirtualPortIn);
|
||||||
|
|
||||||
|
// SerialPortP2p_Init(&env->cliVirtualPort, 4 * 1024, 1024);
|
||||||
|
// env->cliVirtualInIo = SerialPortP2p_GetIoFirst(&env->cliVirtualPort);
|
||||||
|
// env->cliVirtualOutIo = SerialPortP2p_GetIoSecond(&env->cliVirtualPort);
|
||||||
|
|
||||||
vSerialPort_InitUSART2(&env->SerialPortLog);
|
vSerialPort_InitUSART2(&env->SerialPortLog);
|
||||||
SERIAL_PORTS.SerialPortLog_IO = vSerialPortGetIo(&env->SerialPortLog);
|
SERIAL_PORTS.SerialPortLog_IO = vSerialPortGetIo(&env->SerialPortLog);
|
||||||
|
|
|
||||||
|
|
@ -6,16 +6,17 @@
|
||||||
#define HVAC_M7_SERIALPORTS_H
|
#define HVAC_M7_SERIALPORTS_H
|
||||||
|
|
||||||
#include "SerialPortFlagchip.h"
|
#include "SerialPortFlagchip.h"
|
||||||
#include "SerialPortP2p.h"
|
#include "SerialPortVirt.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
tSerialPortFlagchip SerialPortLog;
|
tSerialPortFlagchip SerialPortLog;
|
||||||
tSerialPortIO SerialPortLog_IO;
|
tSerialPortIO SerialPortLog_IO;
|
||||||
|
|
||||||
|
tSerialPortVirt cliVirtualPortOut;
|
||||||
|
tSerialPortIO cliVirtualPortOut_Io;
|
||||||
|
|
||||||
tSerialPortP2p cliVirtualPort;
|
tSerialPortVirt cliVirtualPortIn;
|
||||||
tSerialPortIO cliVirtualInIo;
|
tSerialPortIO cliVirtualPortIn_Io;
|
||||||
tSerialPortIO cliVirtualOutIo;
|
|
||||||
|
|
||||||
} tSerialPorts;
|
} tSerialPorts;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue