Qualquer placa baseada em microcontrolador AVR que siga o esquema padrão do Arduino e seja atualizada com o Arduino carregador de inicialização pode ser chamada de placa Arduino. Não há outra ferramenta disponível que ajude na prototipagem fácil como o Arduino. A placa Arduino possui todos os circuitos necessários para fazer o microcontrolador AVR integrado funcionar. Quando se trata de programar a placa Arduino, qualquer pessoa que tenha conhecimento básico de programação C pode começar rapidamente com o Arduino IDE. O tutorial sobre Começando com Arduino explica sobre as etapas necessárias para começar a usar uma placa Arduino. A placa Arduino usada neste projeto é a placa Arduino pro-mini e a versão IDE do Arduino é 1.0.3 para Windows. A imagem da placa Arduino pro-mini e do Arduino IDE são mostradas abaixo;
Fig. 2: Placa Arduino Pro-Mini típica
Fig. 3: Janela do software Arduino IDE
Como a placa Arduino pro-mini não possui circuito para interface com a porta serial ou porta USB do PC, uma placa conversora USB para TTL externa é necessária para conectá-la ao PC. Este hardware auxilia na programação da placa Arduino e também auxilia na comunicação serial com a porta USB do PC.
4: Placa conversora USB para TTL externa para programação Arduino e comunicação serial
Presume-se que o leitor tenha passado pelo projeto como começar com o Arduino e experimentei todas as coisas discutidas lá. O Arduino IDE tem muitas funções que ajudam a fazer a interface do módulo LCD de quatro bits. Existem funções para inicializar o módulo LCD e para escrever caracteres no módulo LCD. As funções utilizadas na codificação destes projetos são lcd.begin e lcd.print . As funções estão disponíveis na biblioteca
Cristal Líquido
Esta função deve ser chamada para inicializar a biblioteca LCD de quatro bits e então apenas as funções da biblioteca podem ser chamadas no código. A função possui seis parâmetros que devem ser fornecidos durante uma chamada de função de acordo com a conexão do circuito com a placa Arduino e o módulo LCD. Os detalhes dos parâmetros da função estão listados na ordem abaixo.
Fig. 5: Parâmetros de função de LiquidCrystallcd
Por exemplo, a instrução a seguir pode ser usada para inicializar uma biblioteca LCD para o código escrito para o circuito no qual o pino RS está conectado ao pino 12, o pino Enable ao 11 e D4, D5, D6 e D7 aos pinos 5, 4, 3 e 2 respectivamente.
lcd.begin
Esta função pode ser usada para inicializar o módulo LCD. O primeiro parâmetro é o número de linhas do módulo LCD em uso e o segundo parâmetro é o número de colunas. A função lcd.begin pode ser usada para inicializar um LCD 16*2 usando a instrução;
lcd.begin(16, 2);
A instrução acima inicializará o LCD 16*2 no modo de quatro bits com modo de exibição de duas linhas.
lcd.print
Esta função é usada para exibir um caractere ou string ASCII em uma tela LCD. Se um valor for fornecido como parâmetro da função, ele formatará esse valor em uma string exibível e depois o exibirá no LCD.
A função lcd.print é análoga à função Serial.print discutida no projeto sobre como fazer depuração serial com Arduino, como fazer entrada e saída serial com Arduino e como enviar dados seriais do Arduino.
A função lcd.print pode ser usada para imprimir uma string usando a instrução mostrada abaixo;
lcd.print(“olá mundo”);
A instrução acima imprimirá a string “olá mundo” na tela LCD. Se o valor de uma variável precisar ser impresso na tela LCD, a mesma função pode ser usada, pois pode formatar um valor para a string ASCII que representa o valor.
lcd.imprimir(100);
Na instrução acima, o valor 100 é formatado para a string “100” pela função lcd.print e então o exibe no módulo LCD.
O CÓDIGO
O código inclui primeiro a biblioteca
// inclui o código da biblioteca:
#include
// inicializa a biblioteca com os números dos pinos da interface
LiquidCrystallcd(12, 11, 5, 4, 3, 2);
// dê um nome ao pino do LED:
LED interno = 6;
configuração nula
{
// configura o número de colunas e linhas do LCD:
lcd.begin(16, 2);
// Imprime uma mensagem no LCD.
lcd.print(“GARAGEM DE ENGENHEIROS”);
// inicializa o pino digital como saída.
pinMode(led, SAÍDA);
}
loop vazio
{
digitalWrite(led, ALTO); //liga o LED (HIGH é o nível de tensão)
atraso(1000); // espere um segundo
digitalWrite(led, BAIXO); //desliga o LED deixando a tensão BAIXA
atraso(1000); // espere um segundo
}
O código inicializa o módulo, exibe uma string no módulo usando as funções disponíveis na biblioteca
Código fonte do projeto
### /*============================ EG LABS ===================================// Demonstration on how to use 16x2 LCD display with an arduino board The circuit: The circuit: * LCD RS pin to digital pin 12 * LCD Enable pin to digital pin 11 * LCD D4 pin to digital pin 5 * LCD D5 pin to digital pin 4 * LCD D6 pin to digital pin 3 * LCD D7 pin to digital pin 2 * LCD R/W pin to ground * 10K resistor: * ends to +5V and ground * wiper to LCD pin 3 * LED anode attached to digital output 6 * LED cathode attached to ground through a 1K resistor //============================ EG LABS ===================================*/ // include the library code: #include// initialize the library with the numbers of the interface pins LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // give the LED pin a name: int led = 6; void setup { // set up the LCD's number of columns and rows: lcd.begin(16, 2); // Print a message to the LCD. lcd.print("ENGINEERS GARAGE"); // initialize the digital pin as an output. pinMode(led, OUTPUT); } void loop { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } ###
Diagramas de circuito
Interface de diagrama de circuito-LCD de 4 bits-Arduino |
Componentes do Projeto
- Arduino ProMini
- LCD
- LIDERADO
- Resistor
Vídeo do projeto