Criando uma Função

Para criar uma Função, acesse Blocos Criar/Editar Função. Será solicitado que você dê um nome para a Função (não utilize nomes que já existem na biblioteca padrão do BLOCODE).

Após escolher um nome para o bloco, será apresentada a tela para editar o código da Função.

Neste exemplo o nome da Função foi "MYFUNC". O BLOCODE preenche automaticamente os locais necessários com o nome da função.

Na aba HEADER .h é gerado o seguinte código:

//##BLOCK
//##NAME MYFUNC
//##ISFUNCTION
//##DESCRIPTION Block small description
/*
//##DOC 
Bloc documentation..
- You can use `Markdown`
//##ENDDOC
*/
#define MYFUNC_type BOOL
/************************* 
    //##VAR_INPUT
    BOOL I1;
    SINT I2;
    //##END_VAR

    //##VAR_OUTPUT
    MYFUNC_type Q;
    //##END_VAR
*************************/

MYFUNC_type MYFUNC(BOOL I1, SINT I2);
//##END_BLOCK

É possível editar as variáveis de entrada e saída do bloco e as seguintes informações:

  • DESCRIPTION: Uma breve descrição do bloco
  • DOC: Uma documentação para o bloco que será apresentada na hora de utilizar o bloco. Aqui é possível usar marcação Markdown para o texto.
  • Edite a linha #define MYFUNC_type BOOL trocando BOOL pelo tipo de dado que sua função irá retornar, se necessário.
  • A variáveis de entrada são colocadas uma por linha entre //##VAR_INPUT e //##END_VAR. E as variáveis de saída são colocadas uma por linha entre //##VAR_OUTPUT e //##END_VAR.
  • A Função não pode conter variáveis fora dessas marcações.
  • A Função não pode conter mais de uma variável de saída.

NOTA: Edite também a linha MYFUNC_type MYFUNC(BOOL I1, SINT I2); para que as variáveis fiquem iguais as definidas acima. Por exemplo, se foi definido o seguinte:

    //##VAR_INPUT
    BOOL I1;
    SINT I2;
    UINT I3
    //##END_VAR

Então a linha em questão deverá ficar: MYFUNC_type MYFUNC(BOOL I1, SINT I2, UINT I3);. A ordem dos parãmetros deve ser igual a ordem definida entre //##VAR_INPUT e \\##END_VAR.

Na aba IMPLEMENTATION .c é gerado o seguinte código:

MYFUNC_type MYFUNC(BOOL I1, SINT I2){
    if(I1 == 0){
        return I2;
    }
    return 0;
}

NOTA: Aqui também deve-se editar a linha MYFUNC_type MYFUNC(BOOL I1, SINT I2){ de modo que os parâmetros fiquem iguais aos da aba HEADER .h.

A função MYFUNC é executada a cada ciclo de execução do programa. A variável st é um ponteiro para a estrutura de dados do bloco. O usuário deve editar essa função para que a Função tenha o comportamento desejado.

Sobre


BLOCODE é um software online que ajuda as pessoas a desenvolver aplicações robustas e confiáveis.

Siga


IOTBRAS


® 2021 IOTBRAS. Todos os direitos reservados.