Обновление
This commit is contained in:
parent
1a282b63a4
commit
72d6add914
|
|
@ -11,6 +11,7 @@
|
|||
|
||||
typedef struct {
|
||||
osMessageQueueId_t queue;
|
||||
osMutexId_t access;
|
||||
} tSerialPortVirt;
|
||||
|
||||
void SerialPortVirt_Init(tSerialPortVirt *env, uint16_t queueBufferLen);
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
|
||||
void SerialPortVirt_Init(tSerialPortVirt *env, uint16_t queueBufferLen) {
|
||||
env->queue = osMessageQueueNew(queueBufferLen, 1, NULL);
|
||||
env->access = osMutexNew(NULL);
|
||||
}
|
||||
|
||||
static uint16_t vSerialPortReceiveQueue(uint8_t *data, uint16_t size, uint32_t timeout, osMessageQueueId_t queueId) {
|
||||
|
|
@ -34,7 +35,16 @@ static uint16_t vSerialPortReceiveQueue(uint8_t *data, uint16_t size, uint32_t t
|
|||
}
|
||||
|
||||
static uint16_t vSerialPortReceive(tSerialPortVirt *env, uint8_t *data, uint16_t size, uint32_t timeout) {
|
||||
return vSerialPortReceiveQueue(data, size, timeout, env->queue);
|
||||
|
||||
uint16_t result = 0;
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
result = vSerialPortReceiveQueue(data, size, timeout, env->queue);
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
static uint16_t vSerialPortTransmitQueue(uint8_t *data, uint16_t size, uint32_t timeout, osMessageQueueId_t queueId) {
|
||||
|
|
@ -70,7 +80,15 @@ static uint16_t vSerialPortTransmitQueue(uint8_t *data, uint16_t size, uint32_t
|
|||
|
||||
|
||||
static uint16_t vSerialPortTransmit(tSerialPortVirt *env, uint8_t *data, uint16_t size, uint32_t timeout) {
|
||||
return vSerialPortTransmitQueue(data, size, timeout, env->queue);
|
||||
|
||||
uint16_t result = 0;
|
||||
|
||||
// if (osMutexAcquire(env->access, 1000) == osOK) {
|
||||
result = vSerialPortTransmitQueue(data, size, timeout, env->queue);
|
||||
// osMutexRelease(env->access);
|
||||
// }
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
tSerialPortIO SerialPortVirt_GetIo(tSerialPortVirt *env) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue