====== OSA : OS_Csem_Signal_Now ======
<color blue>**OS_Csem_Signal_Now (csem)**</color>\\ 
<color blue>**OS_Csem_Signal_I (csem)**</color>\\ 
=== ===
Увеличивает значение семафора на 1. Если увеличивать уже некуда (семафор имеет максимально допустимое значение), то он не будет увеличен, а системный флаг bEventError установится.

Для использования счетных семафоров в файле ##[[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"
|-
|//''bEventError''//
| Если семафор на момент вызова имел максимальное значение, то функция ##[[osa:ref:allservices:OS_IsEventError|OS_IsEventError]]## вернет значение **true**
|}



=== Пример вызова: ===
<code cpp>

OST_CSME my_csem;
void Task (void)
{
    for (;;) {
        /*...*/
        OS_Csem_Signal_Now(my_csem);
        if (OS_IsEventError()) {
            // Семафор переполнен
        }
        /*...*/
    }
}
</code>


=== Old style name ===
-




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

  * [[osa:ref:allservices:OS_Csem_Signal|OS_Csem_Signal]]
  * [[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_Check|OS_Csem_Check]]


  * [[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~~