====== OSA : OS_Csem_Check ======
<color blue>**bool OS_Csem_Check (csem)**</color>\\ 
<color blue>**bool OS_Csem_Check_I (csem)**</color>\\ 
=== ===



Смотрим, установлен ли семафор (д.б. != 0)

Для использования счетных семафоров в файле ##[[osa:ref:appendix:configuration|OSAcfg.h]]## должна быть определена константа ##[[osa:ref:appendix:configuration#Системные константы|OS_ENABLE_CSEM]]##. Разрядность счетных семафоров задается константой ##[[osa:ref:appendix:configuration#Содержание данных|OS_CSEM_SIZE]]##
<note>
Для PIC16 переменная csem может размещаться в памяти только в **bank0** или **bank1**
</note>

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



=== Параметры функции: ===
{| class = "fpl"
|-
|//''csem''//
|счетный семафор - переменная типа ##[[osa:ref:description:data_types#OST_CSEM|OST_CSEM]]##
|}


=== Возвращаемое значение: ===
{| class = "fpl"
|-
|//''false''//
| Семафор не установлен (=0)
|-
|//''true''//
| Семафор установлен (!= 0)
|}


=== Пример вызова: ===
<code cpp>
OST_CSEM my_csem;
void Task (void)
{
    for (;;) {
        /*...*/
        if (OS_Csem_Check (my_csem)) {     // Проверяем, установлен ли семафор
            OS_Csem_Accept(my_csem);       // Обрабатываем его
            /*...*/
        };
        /*...*/
    }
}
</code>


=== Old style name ===
<color gray>**OS_CheckCSem**</color>\\ 









=== См. также ===
  * [[osa:ref:allservices:OS_Csem_Create|OS_Csem_Create]]

  * [[osa:ref:allservices:OS_Csem_Signal|OS_Csem_Signal]]
  * [[osa:ref:allservices:OS_Csem_Signal_Now|OS_Csem_Signal_Now]]
  * [[osa:ref:allservices:OS_Csem_Set|OS_Csem_Set]]
  * [[osa:ref:allservices:OS_Csem_SetValue|OS_Csem_SetValue]]
  * [[osa:ref:allservices:OS_Csem_Reset|OS_Csem_Reset]]
  * [[osa:ref:allservices:OS_Csem_Accept|OS_Csem_Accept]]









  * [[osa:ref:allservices:OS_Csem_Wait|OS_Csem_Wait]]
  * [[osa:ref:allservices:OS_Csem_Wait_TO|OS_Csem_Wait_TO]]

----
  * [[osa:ref:services:alphabetical|Алфавитный указатель]]
  * [[osa:ref:services:brieflist|Все сервисы]]
~~UP~~