I2C-Controlled OLED Display with External EEPROM and Interactive Pushbuttons
View and Edit Project In Cirkit Designer
Circuit Documentation
Summary of the Circuit
This circuit appears to be designed for interfacing a Wemos D1 Mini microcontroller with various peripherals including an OLED display, an external EEPROM, a port expander (MCP23017), a MIDI connector, multiple pushbuttons, and several LEDs with current-limiting resistors. The Wemos D1 Mini is powered by a 3.3V supply and communicates with the I2C devices (OLED display, EEPROM, and MCP23017). The pushbuttons are likely used for user input, and the LEDs provide visual feedback. The MIDI connector could be used for musical data communication.
Component List
Microcontroller
- Wemos D1 Mini: A compact microcontroller based on the ESP8266, featuring WiFi capabilities and multiple digital I/O pins.
Displays
- OLED 128x64 I2C Monochrome Display: A small display for visual output, interfaced via the I2C protocol.
Memory
- AT24C256 External EEPROM: An I2C-compatible electrically erasable programmable read-only memory chip for additional data storage.
I/O Expanders
- MCP23017: A 16-bit I/O expander with an I2C interface, used to increase the number of I/O pins available to the microcontroller.
Connectors
- MIDI Chassis connector: A standard 5-pin connector used for MIDI (Musical Instrument Digital Interface) communication.
Input Devices
- Pushbuttons: Simple momentary pushbuttons used for user input.
Indicators
- LEDs (red and blue): Light-emitting diodes used as visual indicators, likely to show status or feedback.
Passive Components
- Resistors: Various resistors used for current limiting and pull-up/pull-down configurations.
Wiring Details
Wemos D1 Mini
3V3connected to the power supply lines of the OLED display, EEPROM, and MCP23017.Gconnected to the ground lines of the OLED display, EEPROM, MCP23017, and MIDI connector.D2connected to the SDA lines of the OLED display, EEPROM, and MCP23017.D1connected to the SCL line of the MCP23017.
OLED 128x64 I2C Monochrome Display
VDDconnected to the 3.3V power supply.GNDconnected to the ground.SCKconnected to the SCL line of the EEPROM.SDAconnected to the SDA line shared with the Wemos D1 Mini and EEPROM.
AT24C256 External EEPROM
VCCconnected to the 3.3V power supply.GNDconnected to the ground.SCLconnected to the SCK line of the OLED display.SDAconnected to the SDA line shared with the Wemos D1 Mini and OLED display.
MCP23017
VINconnected to the 3.3V power supply.GNDconnected to the ground.SCLconnected to the D1 pin of the Wemos D1 Mini.SDAconnected to the D2 pin of the Wemos D1 Mini.A0-A5connected to various pushbuttons through pull-up resistors.B1, B4, B5connected to the cathodes of blue LEDs.RSTnot connected in the provided net list.
MIDI Chassis Connector
- Pin
2connected to the ground.
Pushbuttons
- One side of each pushbutton connected to the ground.
- The other side of each pushbutton connected to various pins on the MCP23017 through pull-up resistors.
LEDs
- The cathodes of the blue LEDs connected to various pins on the MCP23017.
- The anodes of the blue LEDs connected to the 3.3V power supply through current-limiting resistors.
Resistors
- Several 10kΩ resistors likely used as pull-up resistors for the pushbuttons and I2C lines.
- Several 220Ω resistors likely used as current-limiting resistors for the LEDs.
Documented Code
No code was provided in the input. Typically, this section would include the source code for the microcontroller, with comments explaining the functionality of each part of the code. Since there is no code to document, this section remains empty. If code becomes available, it should be added here with appropriate documentation.