OSA : OS_Queue_Send_Now

OS_Queue_Send_Now (queue, message)
OS_Queue_Send_I (queue, message)

Отправляем сообщение с содержимым message в очередь queue. Если в очереди нет места, то из нее выталкивается самое старое сообщение.

Для использования очередей сообщений в файле OSAcfg.h должна быть определена константа OS_ENABLE_QUEUE.

Для PIC16 переменная queue может размещаться в памяти только в bank0 или bank1

Разрешен вызов:

Параметры функции:

queue Дескриптор очереди сообщений. Переменная типа OST_QUEUE.
message указатель на тело сообщения (тип OST_MSG)

Возвращаемое значение:

bEventError Если перед вызовом в очереди не было свободного места, то сервис OS_IsEventError возвратит true

Пример вызова:

OST_QUEUE queue;
 
void Task (void)
{
    static char Data[5];
    for (;;) {
        /*...*/
        OS_Queue_Send_Now (queue, Data);
        /*...*/
    }
}

Old style name

OS_SendQMsgNoWait

См. также