AULA 4 - Microcontroladores - Técnico: mudanças entre as edições
imported>Fargoud Sem resumo de edição |
imported>Fargoud Sem resumo de edição |
||
| Linha 29: | Linha 29: | ||
[[image: monitorserial.jpg|center]] | [[image: monitorserial.jpg|center]] | ||
A biblioteca Serial() do [http://wiring.org.co/reference/Serial.html Wiring] tem todas as funções necessárias para se implementar comunicação serial entre o Arduino e o PC. | |||
Nosso primeiro teste de uso do Monitor Serial vai ser um circuito e programação que acionam dois leds, conforme a montagem abaixo: | Nosso primeiro teste de uso do Monitor Serial vai ser um circuito e programação que acionam dois leds, conforme a montagem abaixo: | ||
Edição das 20h23min de 21 de outubro de 2015
Comunicação Serial
Apesar do Arduino ser gravado via porta USB, a comunicação se dá como serial padrão (USART). O ATmega328 permite comunicação serial no padrão UART TTL (5 V), que está disponível nos pinos digitais 0 (RX) e 1 (TX). Um chip FTDI FT232RL na placa encaminha esta comunicação serial através da USB e os drivers FTDI (incluído no software do Arduino) fornecem uma porta virtual para o software no computador.
O software Arduino inclui um Monitor Serial que permite que dados simples de texto sejam enviados e recebidos à placa Arduino.
Os LEDs RX e TX da placa piscam quando os dados estão sendo transferidos ao computador pelo chip FTDI e há conexão USB (mas não quando há comunicação serial pelos pinos 0 e 1).
A biblioteca SoftwareSerial permite comunicação serial por quaisquer dos pinos digitais do Uno.
O ATmega328 também oferece suporte aos padrões de comunicação I2C (TWI) e SPI.
O software do Arduino inclui uma biblioteca Wire para simplificar o uso do barramento I2C.
Para usar a comunicação SPI, veja o manual do ATmega328.
Assim, no Arduino existe uma parte do hardware especifica para a conversão Serial/USB.
Disso resulta a criação de uma porta COM virtual no computador para a comunicação com o Arduino.
Como a comunicação é a serial padrão, é fácil trocar informações entre o computador e o Arduino.
Existe uma ferramenta própria na IDE do Arduino para a comunicação serial.
A biblioteca Serial() do Wiring tem todas as funções necessárias para se implementar comunicação serial entre o Arduino e o PC.
Nosso primeiro teste de uso do Monitor Serial vai ser um circuito e programação que acionam dois leds, conforme a montagem abaixo:
Agora, abra a IDE do Arduino e escreva/compile/carregue a seguinte programação:
char c;
void setup(){
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
Serial.begin(9600);
}
void loop()
{
if (Serial.available()>0)
{
c = Serial.read() - '0';
Serial.flush();
digitalWrite(c,!digitalRead(c));
}
}
Conecte o Arduino no PC, selecione a versão do seu Arduino (UNO, Duemilanove, etc) e porta (COMx, ttyUSBx, ttyACMx) e clique em UPLOAD. Abra o Serial Monitor e selecione 9600 no baud.
Ao digitar o número 2 no Serial Monitor, irá acender o LED conectado na porta digital 2 do Arduino, e ao digitar novamente o número 2, o LED apagará. Agora se digitar o número 3, irá acender o LED da porta digital 3 e se digitar novamente o número 3, o LED apagará.
E é isso! Bem simples! :)
No segundo teste, vamos acionar, acender e apagar, o led do pino 13 através de comandos de teclado do PC, na interface Serial Monitor, do Arduino.
A programação também é simples e bem interessante:
| Leitura das portas digitais | AULA 4 - Uso da comunicação serial | Leitura e escrita nas portas analógicas>> |
|---|



