OSA : OS_Queue_Create

OS_Queue_Create (queue, buffer, size)

Нельзя вызывать из прерывания

Создает очередь сообщений queue. После создания очередь сообщений пуста.

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

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

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

Только не из прерывания

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

queue Дескриптор очереди сообщений. Переменная типа OST_QUEUE.
buffer Буфер, куда будут складываться сообщения при отправке в очередь. Для PIC16 буфер может размещаться в памяти только в bank0 или bank1
size Размер очереди сообщений. Следует сопоставлять с типом сообщений и размером буфера buffer, чтобы не произошел выход за границы буфера

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

Нет

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

OST_QUEUE queue;
bank1 OST_MSG buffer[10]; // Буфер на 10 сообщений
 
void main (void)
{
    OS_Init();
    OS_Queue_Create (queue, buffer, 10);   // Создаем очередь на 10 сообщений
    /*...*/
}

Old style name

OS_CreateQMsg

См. также