FS_GET_SPACE

Obter informações sobre o espaço do sistema de arquivos.

Nota

Antes de utilizar este bloco de função, consulte no manual do controlador utilizado se o mesmo possui suporte para sistema de arquivos no SDCARD.

Bloco

               FS_GET_SPACE
         +----------------------+
BOOL ----|START             DONE|---- BOOL
         |                      |
         |                RESULT|---- INT
         |                      |
         |          SD_MEM_TOTAL|---- ULINT
         |                      |
         |           SD_MEM_FREE|---- ULINT
         |                      |
         |           SD_MEM_USED|---- ULINT
         |                      |
         |            SD_MEM_BAD|---- ULINT
         |                      |
         |        ROOT_TOT_FILES|---- INT
         +----------------------+

Parâmetros

Nome

Parâmetro

Tipo Dado

Valor Inicial

Descrição

START

Entrada

BOOL

FALSE

Ativação da função

ENO

Saída

BOOL

FALSE

Saida de habilitação

DONE

Saída

BOOL

FALSE

Pulso de fim de execução da função

RESULT

Saída

INT

0

Código de retorno da execução da função

SD_MEM_TOTAL

Saída

ULINT

0

Tamanho total do cartão de memória do SDCARD [bytes]

SD_MEM_FREE

Saída

ULINT

0

Quantidade de memória livre no cartão de memória do SDCARD [bytes]

SD_MEM_USED

Saída

ULINT

0

Quantidade de memória utilizada no cartão de memória do SDCARD [bytes]

D_MEM_BAD

Saída

ULINT

0

Quantidade de memória com defeito no cartão de memória do SDCARD [bytes]

ROOT_TOT_FILES

Saída

INT

0

Total de arquivos criados na pasta raiz do sistema de arquivos no SDCARD

Detalhamento dos Parâmetros

Parâmetro

Descrição

START

Deve ser colocado em “TRUE” para iniciar a execução. Caso seu valor seja alterado para “FALSE” antes do fim da operação, o bloco irá ser resetado.

DONE

Pulso para indicar o término da execução da função. Após este pulso (fica ativo por apenas um ciclo de scan), o resultado da execução da função deve ser consultado no parâmetro de saída “RESULT”.

RESULT

Código de retorno associado a execução da função, onde:

Se for igual a 0: Função executada com sucesso, código HILS.SUCCESS

Se for diferente de 0: Falha na execução da função [3]

SD_MEM_TOTAL

Tamanho total do cartão de memória do SDCARD em bytes.

SD_MEM_FREE

Quantidade de memória livre no cartão de memória do SDCARD em bytes.

SD_MEM_USED

Quantidade de memória utilizada no cartão de memória do SDCARD em bytes.

D_MEM_BAD

Quantidade de memória com defeito no cartão de memória do SDCARD em bytes.

ROOT_TOT_FILES

Contabiliza os arquivos existentes apenas no diretório raiz do sistema de arquivos no SDCARD. Ou seja, não contabiliza os arquivos em subdiretórios. Para contabilizar a quantidade de arquivos de um determinado diretório utilize o bloco de função “FS_DIR_INFO”. O valor -1 indica erro no processo de contabilização dos arquivos. OBS: Não contabiliza pastas, apenas arquivos.

Segue alguns exemplos de códigos de retorno:

RESULT

LABEL [4]

Descrição

0

HILS.SUCCESS

Função executada com sucesso.

5

HILS.GL_INV_PAR

Parâmetro(s) inválido(s).

7

HILS.GL_UNA_CMD

Comando não disponivel ou nao implementado.

8

HILS.GL_INV_STT

Estado corrente inválido.

11

HILS.GL_CMD_CAN

Comando cancelado.

16

HILS.GL_CMD_PEND

Tratamento do comando pendente.

24

HILS.RE_NOT_AVA

Sem suporte para o sistema de arquivos ou SDCARD não detectado.

25

HILS.RE_INV_LEN

Tamanho do buffer do recurso inválido.

33

HILS.RE_NOT_INIT

Recurso não inicializado.

34

HILS.RE_BUSY

Recurso em processamento.

167

HILS.RC_FS_CORRUPT

Sistema de arquivo pode estar corrompido.

174

HILS.RC_FS_NOTFOUND

O arquivo não foi encontrado.

Exemplo

Declaração de variáveis

Nome

Tipo

Valor Inicial

Descrição

MY_START

BOOL

FALSE

Ativação da função

GET_SPACE

FS_GET_SPACE

Instância do bloco “FS_GET_SPACE”

Clique aqui para baixar a tabela de variáveis

Código ST

// Preenche parâmetros para a chamada do bloco de função
MY_START := TRUE;        // Ativação do bloco da função
(* ... *)

// Exemplo de ativação do bloco de função FS_GET_SPACE
GET_SPACE(
  START := MY_START      // [BOOL] Ativação da função
  );

// Aguarda término da execução da função do sistema de arquivos
if (GET_SPACE.DONE) then

  MY_START := FALSE;     // reseta ativação da função

  // Testa código de retorno da execução da função
  if (GET_SPACE.RESULT = HILS.SUCCESS) then
    // ... Função executada com sucesso

    // As informações podem ser acessadas conforme descrito abaixo:
    //
    //   GET_SPACE.SD_MEM_TOTAL   = Tamanho total do cartão de memória do SDCARD [bytes]
    //   GET_SPACE.SD_MEM_FREE    = Quantidade de memória livre no cartão de memória do SDCARD [bytes]
    //   GET_SPACE.SD_MEM_USED    = Quantidade de memória utilizada no cartão de memória do SDCARD [bytes]
    //   GET_SPACE.D_MEM_BAD      = Quantidade de memória com defeito no cartão de memória do SDCARD [bytes]
    //   GET_SPACE.ROOT_TOT_FILES = Total de arquivos criados na pasta raiz do sistema de arquivos no SDCARD


  else
    // ... Erro na execução da função
  end_if;

end_if;

(* ... *)