Interagera med en OLED och en Accelerometer (4 / 6 steg)
Steg 4: Kod förklaring
Så är här vad som händer i koden. Först inkluderar vi alla bibliotek som vi behöver för att köra detta program. JUGL biblioteket innehåller funktionen krävs för att rita cirkel, medan JUGL_SSD1306_128x64 biblioteket används för att initiera skärmen. Detta senaste bibliotek innehåller också funktionerna "DrawPoint" och "Flush" att rita varje cirkelns pixlar och visa dem på skärmen. SPI och tråd-biblioteken används för att kommunicera med enheter via SPI och I2C. I det här fallet använder vi I2C kommunikation. Eftersom biblioteket stöder många förare, är det ange som vi använder. Linje 6 hand tar om detta genom att ange att vi kommer att använda drivrutinen SSD1306 på en 128 x 64 skärm. Nedan följer andra förare som detta bibliotek stöder:
- EPD 2.0
- EPD 1,44
- EPD 2,7
- PCF8833
- KS0107
I nästa del av koden, tilldelar vi Arduinos analoga ingångar A3 och A2 till x och y pins av sensorn, respektive. Vi också definiera de variabler som vi ska använda och skapa en array för att hålla x och y samordna (beskärningen av bollen). Sedan gör vi en framåt deklaration av de funktioner som vi kommer att använda i detta program.
Nästa, vi flytta till den setup delen av koden. Här gör vi en hänvisning till drivrutinen som vi använder. Baserat på referensen, vi initiera skärmen och få dess bredd och höjd. Slutligen, vi anropar funktionen "Cirkel". Denna funktion rensar skärmen och anger radien och ursprunget för vår boll. Vi använder funktionerna "FillCircle" och "Flush" från vårt bibliotek att dra bollen och Visa den. Detta genererar en boll på det nedre vänstra hörnet av skärmen med en radie på 5 bildpunkter och en beskärning på (5,5).