Robótica Livre
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5039
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Inicio do Capítulo 3  - Porta Serial Empty Inicio do Capítulo 3 - Porta Serial

Dom Set 15, 2019 3:52 pm
Iniciamos oficialmente o capítulo 3 estudando mais aprofundadamente a porta serial, as funções estão todas na apostila e abaixo segue mais detalhes sobre elas:

1) Serial.begin(velocidade);
a) Essa função é a que configura a porta serial que está compartilhando os pinos digitais D0 e D1, após configurado esses pinos não poderão mais ser utilizados como pinos digitais.

b) Vimos que o parâmetro velocidade deve ser compatibilizado o monitor serial e tem velocidade default de 9600, mas pode ser aumentado para melhorar a performance da porta e reduzir o tempo de transmissão. Durante a transmissão de dados pela porta serial o programa fica retido aguardando o fim da transmissão o que pode causar falhas em programas onde a performance é essencial para o bom funcionamento.

2)Serial.end();
a) Essa função finaliza o uso da porta serial e devolve os pinos D0 e D1 para suas funções de pinos digitais,

3) Serial.available();
a) Essa função quando acionada retorna dois estados distintos, 0 se não tem nenhum dado recebido pela porta serial e 1 quando tem dados recebidos guardados no buffer.

b) O uso mais comum para essa função é em programas em que se espera receber dados da porta serial. Abaixo a forma mais utilizada nessa função.
if(Serial.available()){ // Checa se a porta serial recebeu algum dado. Se recebei retorna VERDADEIRO e roda o bloco de instruções
bloco de instruções; // Comandos normalmente usados para leitura e organização dos dados oriundos da porta serial.
}

4) Serial.read();
a) Para leitura dos dados da porta serial, usa-se o serial.read(), que vai ler o primeiro byte do buffer ( memória interna da porta serial) normalmente usamos uma variável para guardar o byte recebido.

b) Quando não há mais dados a serem recebidos a leitura retorna o caractere -1

5) Serial.print(valor, formato);
a) Usado para enviar dados para porta serial, nessa função pode ser escolhido o formato do número abaixo as formas:
Serial.print(1.23456); // transmite 1.23 (default)
Serial.print(1.23456,3); // transmite 1.234 Serial.print(“Alô
Mundo!“); // transmite a frase (string)
Serial.print(‘A’); // transmite o caracter A
Serial.print("frase inteira"); //transmite a frase entre as aspas duplas
Serial.print(‘A’,BIN); // transmite 01000001
Serial.print(‘A’,OCT); // transmite o octal 101
Serial.print(‘A’,HEX); // transmite o hexa 41
Serial.print(‘A’,DEC); // transmite o decimal 65

b) pode ser enviados caracteres especiais de controle do terminal como os listados na tabela abaixo:
00000111 U+0007 \a apito
00001000 U+0008 \b backspace
00001001 U+0009 \t tabulação
00001010 U+000A \n fim de linha
00001011 U+000B \v tab vertical
00001100 U+000C \f fim de página
00001101 U+000D \r carriage return

5) Serial.println();
Como a anterior essa função envia para a porta serial um caracter ASCII com os mesmos parâmetros opcionais de ‘formato’, porem acrescenta ao final da transmissão o caracter \r Carriage Return(retorno ao início da linha) e o caracter \n New Line (mudança para a próxima linha).
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos