0% acharam este documento útil (0 voto)
58 visualizações16 páginas

Módulos Eletrônicos Arduino: DS3231, AT24C32 e Mais

Este documento resume uma série de módulos eletrônicos compatíveis com Arduino, incluindo módulos de relógio RTC DS3231, módulo de memória EEPROM AT24C32, módulo de comunicação WiFi ESP8266, módulo de leitor RFID MFRC522 e interface LCD I2C. Exemplos de código são fornecidos para mostrar como usar esses módulos com Arduino.

Enviado por

Eriton Neves
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
58 visualizações16 páginas

Módulos Eletrônicos Arduino: DS3231, AT24C32 e Mais

Este documento resume uma série de módulos eletrônicos compatíveis com Arduino, incluindo módulos de relógio RTC DS3231, módulo de memória EEPROM AT24C32, módulo de comunicação WiFi ESP8266, módulo de leitor RFID MFRC522 e interface LCD I2C. Exemplos de código são fornecidos para mostrar como usar esses módulos com Arduino.

Enviado por

Eriton Neves
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

SÉRIE módulos eletrônicos ARDUINO

Arduino módulos eletrônicos

• DS3231
• AT24C32
• ESP8266
• I2C 1602
• MFRC522
SÉRIE módulos eletrônicos ARDUINO

• DS3231 AT24C32 CII alta precisão Tempo real módulo de relógio

• DS3231: I2C em tempo real chip do relógio (RTC)

• AT24C32: EEPROM de armazenamento chip de 32KB

• integrado com o sensor de temperatura

• Integrado com CR2032 para manter o RTC correndo energia quando desligado
SÉRIE módulos eletrônicos ARDUINO

• Módulo DS3231-AT24C32 conexão com Arduino

• “ ds3231.ino ”mostra como usar este módulo

• Esta demonstração é baseada na biblioteca arduino

DS3231-AT24C32 . Baixar link:


http://pc.cd/vwvrtalK
• Extraia a biblioteca para “Arduino Root” / bibliotecas, em seguida,
reiniciar o arduino
SÉRIE módulos eletrônicos ARDUINO

• ds3231.ino
# incluem <DS3231.h>
# incluem <Wire.h>

DS3231 Relógio; bool


Century = false; booleano
h12; bool PM;

byte ADAY, AHour, AMinute, asecond, ABits; boleano ADY,


A12h, Apm;

ano byte, mês, data, a Dow, hora, minuto, segundo;

i2c_eeprom_write_byte vazio (deviceaddress int, unsigned int eeaddress, dados de byte) {

int = RDATA de dados;

Wire.beginTransmission (deviceaddress); Wire.write


((int) (eeaddress >> 8)); Wire.write ((int) (eeaddress
& 0xFF)); Wire.write (rdata); Wire.endTransmission
(); }

i2c_eeprom_read_byte byte (deviceaddress int, unsigned int eeaddress) {

byte rdata = 0xFF;


Wire.beginTransmission (deviceaddress); Wire.write
((int) (eeaddress >> 8)); Wire.write ((int) (eeaddress
& 0xFF)); Wire.endTransmission ();

Wire.requestFrom (deviceaddress, 1); se


(Wire.available ()) = rdata Wire.read ();

voltar RDATA; }
SÉRIE módulos eletrônicos ARDUINO

• ds3231.ino

void setup () {

// Inicie a interface I2C


Wire.begin ();

// Nós só precisamos definir o tempo de uma vez, CR2032 pode manter o tempo

if (i2c_eeprom_read_byte (0x57, 0)! = 1) {

Clock.setSecond (30); // Definir o segundo


Clock.setMinute (38); // Definir o minuto
Clock.setHour (20); // Definir a hora
Clock.setDoW (0); // Defina o dia da semana
Clock.setDate (6); // Defina a data do mês
Clock.setMonth (12); // definir o mês do ano
Clock.setYear (15); // definir o ano (últimos dois dígitos do ano)

// definição de tempo concluída, escrever a EEPROM para marcá-lo


i2c_eeprom_write_byte (0x57,0,1); // EEPROM endereço I2C 0x57
}

// Iniciar a interface serial


Serial.begin (115200); }
SÉRIE módulos eletrônicos ARDUINO

• ds3231.ino

vazio ReadDS3231 () {

int segundo, minuto, hora, dia, mês, ano, temperatura; segunda =


Clock.getSecond (); = minutos Clock.getMinute (); hora = Clock.getHour
(H12, PM); DATE = Clock.getDate ();

month = Clock.getMonth (século); ano =


Clock.getYear ();

temperatura = Clock.getTemperature ();

Serial.print ( "20"); Serial.print


(ano, DEC); Serial.print ( '-');

Serial.print (mês, a DEC);


Serial.print ( '-');
Serial.print (data, DEC);
Serial.print (' ');
Serial.print (horas, DEC);
Serial.print ( ':');
Serial.print (minutos, DEC);
Serial.print ( ':');
Serial.print (segunda, DEC);
Serial.print ( '\ n');
Serial.print ( "Temperatura =");
Serial.print (temperatura); Serial.print (
'\ n'); }

void loop () {

ReadDS3231 ();
atraso (1000); }
SÉRIE módulos eletrônicos ARDUINO

• LCD1602 e I2C Interface para LCD1602

• consome LCD1602 muitos IOs arduino (7 OI)

• Interface I2C para LCD1602 salva arduino IOs usando comunicação I2C
(Apenas 2 OI necessário)

• O botão azul pode ser utilizado para ajustar o brilho de luz de volta

• endereço padrão 0x27, A0 A1 A2 pode ser utilizado para a modificação endereço ver tabela 01
SÉRIE módulos eletrônicos ARDUINO

Tabela 01: Endereço de Referência


SÉRIE módulos eletrônicos ARDUINO

• LCD1602 conexão com Arduino

VCC <-> VCC GND


<-> GND A4 <->
SDA A5 <-> SCL • Biblioteca LiquidCrystal_I2C é para LCD1602.
Baixar link: http://pc.cd/zpirtalK
• Confira os exemplos neste biblioteca para mais
informações
• “ ds3231_lcd1602.ino ”É um exemplo para mostrar como
exibir data e temperatura na LCD1602. É baseado em
biblioteca DS3231AT24C32 e LiquidCrystal_I2C . bibliotecas
extrato para “Arduino raiz” / bibliotecas para uso
SÉRIE módulos eletrônicos ARDUINO

• ds3231_lcd1602.ino
# incluem <DS3231.h>
# incluem <LiquidCrystal_I2C.h>
# incluem <Wire.h>

LiquidCrystal_I2C LCD (0x27,16,2); // verificar o seu próprio dispositivo, endereço do dispositivo nesta demonstração é 0x27

DS3231 Relógio; bool


Century = false; booleano
h12; bool PM;

byte ADAY, AHour, AMinute, asecond, ABits; boleano ADY,


A12h, Apm;
ano byte, mês, data, a Dow, hora, minuto, segundo;

i2c_eeprom_write_byte vazio (deviceaddress int, unsigned int eeaddress, dados de byte) {

int = RDATA de dados;

Wire.beginTransmission (deviceaddress); Wire.write


((int) (eeaddress >> 8)); // MSB Wire.write ((int)
(eeaddress & 0xFF)); // LSB Wire.write (RDATA);
Wire.endTransmission (); }

i2c_eeprom_read_byte byte (deviceaddress int, unsigned int eeaddress) {

byte rdata = 0xFF;


Wire.beginTransmission (deviceaddress); Wire.write
((int) (eeaddress >> 8)); // MSB Wire.write ((int)
(eeaddress & 0xFF)); // LSB Wire.endTransmission ();

Wire.requestFrom (deviceaddress, 1); se


(Wire.available ()) = rdata Wire.read ();

voltar RDATA; }
SÉRIE módulos eletrônicos ARDUINO

• ds3231_lcd1602.ino
void setup () {

Wire.begin ();
if (i2c_eeprom_read_byte (0x57, 0)! = 1) {

Clock.setSecond (30); // Conjunto segundo Clock.setMinute (38); // Conjunto o


Clock.setHour minutos (20); // o Conjunto Clock.setDoW horas (0); // Defina o
dia da semana Clock.setDate (6); // Definir a data da Clock.setMonth mês (12);
// definir o mês do ano Clock.setYear (15); // definir o ano (últimos dois dígitos
do ano)

i2c_eeprom_write_byte (0x57,0,1); }

Serial.begin (115200);

// Inicializar lcd.init
LCD (); }

vazio ReadDS3231 () {

int segundo, minuto, hora, dia, mês, ano, temperatura; segunda =


Clock.getSecond (); = minutos Clock.getMinute (); hora = Clock.getHour
(H12, PM); DATE = Clock.getDate ();

month = Clock.getMonth (século); ano =


Clock.getYear ();

temperatura = Clock.getTemperature ();


SÉRIE módulos eletrônicos ARDUINO

• ds3231_lcd1602.ino

lcd.clear ();

lcd.print ( "Temperatura:");
lcd.print (temperatura);
// impressão ℃
lcd.write (0xDF);
lcd.print ( "C");

lcd.setCursor (0, 1);

//lcd.print("20" );
//lcd.print(year,DEC);
//lcd.print('- ');
lcd.print (mês, a DEC);
lcd.print ( '-');
lcd.print (data, DEC);
lcd.print (' ');
lcd.print (horas, DEC);
lcd.print ( ':');
lcd.print (minutos, DEC);
lcd.print ( ':');
lcd.print (segunda, DEC); }

void loop () {

ReadDS3231 ();
atraso (1000); }
SÉRIE módulos eletrônicos ARDUINO

• MFRC522 RFID Leia Module

• Fonte de alimentação DC 3.3V-5V

• upports comunicações I2C comunicação serial com endereço de ISP (podem ser selecionados através

do interruptor de mergulho no Conselho)

• tipos de cartão de suporte: Mifare1, Mifare1 S70, Mifare ultraleve, Mifare Pro, e Mifare
DESFire

• módulo Acessórios RFID um cartão IC cartões anel chave IC


SÉRIE módulos eletrônicos ARDUINO

• Módulo RFID MFRC522 conexão com Arduino

• Biblioteca RFID é para LCD1602. Baixar link:


http://pc.cd/rJirtalK
• Verifica https://github.com/miguelbalboa/rfid
Para maiores informações

• Muitos exemplos incluídos nesta biblioteca


SÉRIE módulos eletrônicos ARDUINO

• ESP8266 módulo WiFi

• SDIO 2,0, SPI, UART


• pacote QFN 32 pinos
• Integrado RF mudar, balun, 24dBm PA, DCXO e PMU
• processador integrado RISC, memória on-chip e interfaces de memória externa
• Integrado MAC / processadores de banda de base
• Qualidade da gestão de serviço
• interface de I2S para aplicações de áudio de alta fidelidade
• On-chip baixa de desistência linear reguladores para todos os fornecimentos internos

• arquitetura proprietária livre de espúrios relógio geração


• Integrado WEP, TKIP, AES, e os motores WAPI
• Suporte comandos AT, cheque https://github.com/espressif/esp8266_at/wiki/AT_Description
SÉRIE módulos eletrônicos ARDUINO

• ESP8266 WiFi Módulo de Conexão com Arduino

• Biblioteca ESP8266wifi pode ser usado para este módulo. Baixar link:
http://pc.cd/wHirtalK
• Verifica https://github.com/ekstrand/ESP8266wifi Para maiores informações
• Se o seu arduino SoftwareSerial não suportam Baud 115200, tente usar série do hardware em
seu lugar.
• Você pode conectar esp8226 com uma-UART USB (TTL) chip (eg PL2303, CH340, FT232
...) e depurá-lo usando comandos AT através UART.
USR-TCP232-Test pode ser usado para o teste. Ligação: http://pc.cd/7LirtalK

Você também pode gostar