Para este tutorial precisaremos de:
- 1 Arduino (uno, nano, mega...)
- 1 CI 74HC595
- 1 RTC1307
- 1 LCD16x2
- 1 Potenciometro B10K
Você encontra estes e outros componentes na loja Sttamp.com
Porque usar o CI 74HC595?
A maior vantagem de usar este CI, e a quantidade de portas que ele utiliza, assim você economiza muitas portas, pois você estará ligando seu LCD com apenas 3 portas no Arduíno, essas portas são preciosas para projetos grandes. Este CI 74HC595 é um registrador de deslocamento de 8 bits serial-in (CI somente de saída), em serie ou em paralelo, resumindo, você pode usar este CI para controlar até 8 saídas de uma vez.
O RTC1307 (Real Time Clock) e um dos melhores e mais utilizados módulos para armazenar a hora.
Para este projeto, você vai precisar de duas bibliotecas, a do RTC1307 e a do CI74HC595
Clique aqui para baixar a biblioteca do RTC1307
Clique aqui para baixar a biblioteca do CI 74HC595

Você encontra todos os componentes sitados na loja Sttamp.com o menor preço e melhor qualidade do Brasil.
Não esqueça de baixar as bibliotecas, ou seu código não ira funcionar
Lembrando que esta biblioteca só funciona para o CI 74HC595.
Lembrando que esta biblioteca só funciona para o CI 74HC595.
Código:
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Mais tutoriais em http://blog.sttamp.com/ | |
grupo no whatsApp "Viciados em Arduino" des de 27/04/2014 | |
WhatsAppp +55 66 9667-0801 | |
*/ | |
#include <DS1307.h> //inclui a biblioteca do RTC1307 | |
#include <LiquidCrystal595.h> //inclui a biblioteca liquidcrystal595 do ci 74HC595 | |
LiquidCrystal595 lcd(2,3,4); //definindo os pinos do arduino onde vai ser ligado o 74hc595 | |
DS1307 rtc(A4, A5); // definindo os pinos do arduino onde vai ser ligado o rtc1307 | |
void setup() //inicia o setup | |
{ | |
rtc.halt(false); // define o estado do rtc | |
lcd.begin(16, 2); // define o modelo do lcd 16 colunas por 2 linhas | |
//obs. nao esquecer de tirar as barras // abaixo para definir a hora, depois de definido a hora | |
//os codigos abaixo servem somente para setar a hora | |
//rtc.setDOW(FRIDAY); | |
//rtc.setTime(16, 58, 0); // define horas, minutos, segundos | |
//rtc.setDate(27, 12, 2014); // define dia, mes, ano, | |
//rtc.setSQWRate(SQW_RATE_1); | |
//rtc.enableSQW(true); | |
// depois de compilado o codgo no seu arduino, coloque novamente as barras, e compile novamente | |
} // finaliza o setup | |
void loop() // inicia o loop | |
{ | |
lcd.clear(); // limpa a tela do lcd | |
lcd.setCursor(0,0); //define a posiçao onde sera impresso | |
//coluna 0, linha 0 | |
lcd.print("Hora : "); // ira escrever no lcd Hora: | |
lcd.print(rtc.getTimeStr()); // ira mostrar a hora no lcd | |
lcd.print(" "); // recebera o rtc.getTimeStr e ira imprimir no lcd | |
lcd.setCursor(0,1); //define a posiçao onde sera impresso | |
//coluna 0, linha 1 | |
lcd.print("Data : "); // ira escrever no lcd Data: | |
lcd.print(rtc.getDateStr(FORMAT_SHORT)); // ira mostrar a data no lcd | |
lcd.print(" "); // ira receber o rtc.getDateStr e ira imprimir no lcd | |
lcd.print(rtc.getDOWStr(FORMAT_SHORT));// ira mostrar a data no lcd | |
delay (1010); //define o tempo de 1 segundo para atualizar o codgo no seu lcd | |
//obs. nao alterar esse tempo | |
} // fiinaliza o loop |
vc sabe como mudar os pinos de dados da bliblioteca LiquidCrystal595 para usar outros pinos desejados?
ResponderExcluir