Este repositório hospeda a apresentação que será apresentada na oficina ESP32 e Protocolo I2C, no IOT Maker Hub da Universidade Positivo no dia 23/05/2018.
Esta oficina tem o objetivo mostrar as principais características e recursos do microcontrolador ESP32 e também explicar como é o funcionamento e as características do protocolo de comunicação I2C, através de um simples exemplo utilizando o NodeMCU ESP32 e o módulo TinyRTC, que utiliza os CI's de Real Time Clock DS1307 e a EEPROM AT24C32.
A hospedagem é feita pelo GitHub, mas a apresentação é realizada através da plataforma GitPitch. A apresentação no formato Markdown pode ser lida clicando aqui, ou acessando o arquivo [PITCHME.md] na pasta raiz desse repositório. Para ver o arquivo em modo de apresentação basta acessar: https://gitpitch.com/Calebe94/OficinaESP32#/
Este exemplo utiliza o barramento I2C0 do ESP32 para configurar o CI DS1307 que é um relógio de tempo real com calendário e a EEPROM CI AT24C32 que fornece 4096 palavras de 8 bits cada, os CI's estão montados em um módulo chamado de TinyRTC que pode ser visto na figura abaixo.
O funcionamento do projeto é dado da seguinte forma: Haverá dois botões, um botão que quando pressionado irá armazenar os valores do RTC na EEPROM. E o outro botão quando pressionado irá imprimir no terminal os valores que serão adquiridos na EEPROM.
O código desse projeto foi desenvolvido utilizando a framework esp-idf, que é a principal framework para desenvolvimento com o chip ESP32. Todas as instruções para a instalação do esp-idf estão neste site. O código deste projeto pode ser acessado na pasta project/ no diretório raiz deste repositório.
- I2C (Inter-Integrated Circuit) Bus Technical Overview and Frequently Asked Questions
- NXP Semiconductors - I2C-bus specification and user manual
- Philips Semiconductors - I2C MANUAL
- Wikipedia - I2C
- Texas Instruments - Understanding the I2C Bus
- Newton Braga - Conheça o Barramento I2C (MIC098)
- I2C Info - I2C Bus Specification