• Matéria: Informática
  • Autor: UmserHuman0
  • Perguntado 5 anos atrás

O que é taxa de transferência?

Por que essa comunicação é dita serial?

Quais as fungöes que deverão ser
utilizadas na programagão de seu projeto com uso da porta serial?​

Respostas

respondido por: a1408
1

Resposta:

1)taxa de transferência de dados é o número médio de bits, caracteres ou blocos convertidos ou processados por unidade de tempo que passam entre equipamentos num sistema de transmissão de dados.

2)Uma comunicação é chamada de serial quando o envio dos códigos dos caracteres se processa sobre uma única linha, onde os bits enviados são encadeados um por vez, e numa fila.

3)Funções mais usadas com a placa Arduino UNO

Serial.begin()

É a primeira função a ser utilizada quando vai trabalhar com a comunicação serial. Ela configura a taxa de comunicação em bits por segundo (baud rate). Possui um segundo parâmetro opcional para a definição da quantidade de bits, paridade e stop bits. Se for omitido esse parâmetro o padrão será 8 bits, sem paridade e 1 stop bit.

Sintaxe:

Serial.begin(speed)

Serial.begin(speed, config)

Parâmetros:

speed: velocidade em bit por segundo (baud rate) - long

config: configura a quantidade de bits, paridade e stop bits. Os valores válidos são :

SERIAL_5N1

SERIAL_6N1

SERIAL_7N1

SERIAL_8N1 (padrão)

SERIAL_5N2

SERIAL_6N2

SERIAL_7N2

SERIAL_8N2

SERIAL_5E1

SERIAL_6E1

SERIAL_7E1

SERIAL_8E1

SERIAL_5E2

SERIAL_6E2

SERIAL_7E2

SERIAL_8E2

SERIAL_5O1

SERIAL_6O1

SERIAL_7O1

SERIAL_8O1

SERIAL_5O2

SERIAL_6O2

SERIAL_7O2

SERIAL_8O2

Retorno

Essa função não retorna nada.

Serial.available()

Retorna a quantidades de bytes disponíveis para leitura no buffer de leitura. Essa função auxilia em loops onde a leitura dos dados só e realizada quando há dados disponível. A quantidade máxima de bytes no buffer é 64.

Sintaxe:

Serial.available();

Parâmetros:

Não passa nenhum parâmetro.

Retorno:

(int) - quantidade de bytes disponíveis para leitura

Serial.read()

Lê o byte mais recente apontado no buffer de entrada da serial.

Sintaxe:

Serial.read();

Parâmetros:

Não passa nenhum parâmetro.

Retorno:

(int) - O primeiro byte disponível no buffer da serial. Retorna -1 caso n tenha dado disponível.

Serial.print()

Escreve na serial texto em formato  ASCII. Essa função tem muitas possibilidades. Números inteiros são escritos usando um caractere ASCII para cada dígito. O mesmo ocorre para números flutuante e, por padrão, são escrito duas casas decimais. Bytes são enviados como caracteres únicos e strings e caracteres são enviados como escritos.

Vejamos alguns exemplos:

Serial.print ( 123 ); // Envia "123"

Serial.print ( 1.234567 ); // Envia "1.23"

Serial.print ( 'N' ); // Envia "N".

Serial.print ( "Hello world" ); // Envia "Hello world".

Obs.: caracteres são enviados com aspas simples e strings com aspas duplas.

Um segundo parâmetro opcional define a base numérica para formatar o valor enviado. São aceitos os seguintes parâmetros:

BIN - binário, base 2

OCT - octal, base 8

HEX - hexadecimal, base 16

DEC - decimal, base 10

Para números em ponto flutuante esse parâmetro define a quantidade de casas decimais a serem enviadas após o ponto. Exemplos:

Serial.print(78, BIN) envia em binário "1001110"

Serial.print(78, OCT) envia emr octal "116"

Serial.print(78, DEC) envia em  decimal "78"

Serial.print(78, HEX) envia em hexadecimal  "4E"

Serial.println(1.23456, 0) envia apenas "1", sem casas decimais

Serial.println(1.23456, 2)envia "1.23", ou seja, duas casas decimais

Serial.println(1.23456, 4) envia  "1.2346", ou seja, 4 casas decimais

Sintaxe:

Serial.print(val)

Serial.print(val, format)

Parâmetros:

val:valor para ser escrito na serial - qualquer tipo de dado.

format: base numérica para tipos inteiros ou a quantidade de casas decimais para números flutuantes.

Retorno:

size_t (long): retorna a quantidade de bytes escritos

Serial.println()

Funciona praticamente igual a função Serial.print(), a única diferença é que esta função acrescenta ao fim da mensagem o caractere de retorno de carro (ASCII 13 ou ‘\r’) e o caractere de nova linha(ASCII 10 ou ‘\n’). A sintaxe, os parâmetros e o retorno são os mesmos da função Serial.print().

Serial.write()

Escreve um byte na porta serial.

Sintaxe:

Serial.write(val)

Serial.write(str)

Serial.write(buf, len)

Parâmetros:

val: um valor para ser enviado como um único byte.

str: uma string para ser enviada como uma sequência de bytes.

buf: um array para ser enviado como uma serie de bytes.

len: o tamanho do buffer a ser enviado.

Retorno:

(byte) - Retorna a quantidade de bytes escritos na serial. A leitura desse numero é opcional.

Explicação:

Perguntas similares