Arduino en OLED-gebaseerde mobiele automaten
Componenten en benodigdheden
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Over dit project
Originele pagina
http://runtimeprojects.com/2016/02/arduino-and-oled-based-cellular-automata/
Dit project maakt gebruik van een I2C 128×64 OLED om een kleine cellulaire automaat weer te geven die wordt aangedreven door Arduino Nano.
Vereisten
- 2x kleine breadboards (of 1x standaard)
- 1x Arduino Nano (kan ook Uno zijn)
- 1x OLED I2C 128×64
- 4x jumperdraden
Aannames
Tijdens deze tutorial ga ik ervan uit dat je weet wat een Arduino is (o_O) en dat je weet hoe je de IDE moet gebruiken en eenvoudige schetsen kunt uploaden. Ik ga er ook van uit dat je een beetje programmeert, bij voorkeur C-programmering.
Dus laten we beginnen!!
Achtergrond
Wat zijn mobiele automaten? Ik zal 1 type cellulaire automaten uitleggen, namelijk de Game of Life van John Conway. Het is een raster of cellen met elk 2 toestanden Waar of Onwaar/aan of uit/levend of dood. Deze cellen worden beheerst door 2 eenvoudige regels:
Regel 1 :Een cel die dood is en wordt omringd door precies 3 levende cellen, wordt geboren
Regel 2: Een cel die leeft en 3 of 2 levende cellen heeft, blijft in leven, anders sterft hij
Simpel, niet? Als je meer informatie nodig hebt, bezoek dan de Game Of Life of Cellular Automata op Wikipedia.
Circuity
Dus sluit de Arduino en OLED LCD aan op het breadboard en begin met de bedrading.
- Arduino —– OLED
- 3.3v ———— VCC (let op uw OLED-spanningsvereisten)
- GND ———– GND
- A4 ————– VIB
- A5 ————– SCL
Daarna heb ik beide breadboards rug aan rug bevestigd en een kleine tv gemaakt
De schets programmeren
Om het spelen met het OLED-display te vergemakkelijken (en mogelijk te maken) gaan we 2 bibliotheken van Adafruit gebruiken. Als je niet weet hoe je bibliotheken moet toevoegen, ga dan naar https://www.arduino.cc/en/Guide/Libraries
- Adafruit GFX-bibliotheek die wordt gebruikt om alle afbeeldingen en tekst te verwerken die worden weergegeven op de OLED https://github.com/adafruit/Adafruit-GFX-Library
- Adafruit SSD1306-bibliotheek die in feite de driver is voor onze OLED. Deze bibliotheek werkt alleen met OLED SSD1306 128×32 en 128×64 https://github.com/adafruit/Adafruit_SSD1306
De schets kan worden gedownload van onze github:https://github.com/klauscam/Arduino-Cellular-Automata/
Enige uitleg
Op lijn 51 met code
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialiseer met de I2C-addr 0x3C (128x64)
het adres, dat de 0x3C is, kan anders zijn. Ik zocht naar de meest voor de hand liggende en probeerde er een paar voordat ik het werkend kreeg.
Werkend product
De zichtbare horizontale lijnen zijn het resultaat van verversingsfrequenties van de OLED en de camera.
Als je hulp nodig hebt met de code of iets dergelijks, laat dan je opmerkingen achter in het opmerkingengedeelte hieronder.
Bedankt
Tags:Arduino Arduino Nano Cellular Automata I2C OLED-scherm Tutorial
Code
Github
https://github.com/adafruit/Adafruit-GFX-Libraryhttps://github.com/adafruit/Adafruit-GFX-LibraryGithub
https://github.com/adafruit/Adafruit_SSD1306https://github.com/adafruit/Adafruit_SSD1306Github
https://github.com/klauscam/Arduino-Cellular-Automata/https://github.com/klauscam/Arduino-Cellular-Automata/Productieproces
- Arduino Pong Game - OLED-scherm
- LCD-animatie en gaming
- DIY voltmeter met Arduino en smartphone
- Pixie:een op Arduino gebaseerd NeoPixel-polshorloge
- Python3- en Arduino-communicatie
- Op Arduino gebaseerde RPM-teller met een nieuw en sneller algoritme
- eDOT - op Arduino gebaseerde precisieklok en weerstation
- FM-radio met Arduino en RDA8057M
- Aanwezigheidssysteem op basis van Arduino en Google Spreadsheet
- Een valdetectiesysteem op basis van Arduino, Windows en Azure
- Arduino en Android-gebaseerd wachtwoordbeveiligd deurslot