Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Adafruit_GFX.h>
- #include <Adafruit_SSD1331.h>
- #include <SPI.h>
- // Pin definitions
- #define sclk 13
- #define mosi 11
- #define cs 10
- #define rst 9
- #define dc 8
- // Color definitions
- #define BLACK 0x0000
- #define BLUE 0x001F
- #define RED 0xF800
- #define GREEN 0x07E0
- #define CYAN 0x07FF
- #define MAGENTA 0xF81F
- #define YELLOW 0xFFE0
- #define WHITE 0xFFFF
- Adafruit_SSD1331 display = Adafruit_SSD1331(cs, dc, rst);
- String Departures[4];
- String Arrivals[4];
- void setup() {
- display.begin();
- loadData();
- updateDisplay(1);
- }
- void loop() {
- updateDisplay(0);
- delay(4000);
- updateDisplay(1);
- delay(4000);
- updateDisplay(2);
- delay(4000);
- }
- void updateDisplay(byte mode) {
- byte x, y;
- display.fillScreen(BLACK);
- switch(mode) {
- case 0:
- display.setTextSize(1);
- display.setTextColor(CYAN);
- display.setCursor(18, 0);
- display.print("DEPARTURES");
- display.setTextColor(WHITE);
- display.setCursor(0, 10);
- display.print(" H Destination");
- display.drawFastHLine(0, 19, display.width()-1, WHITE);
- y = 12;
- for(byte i=0; i<=3; i++) {
- y += 10;
- display.setCursor(0, y);
- display.print(Departures[i]);
- }
- break;
- case 1:
- display.setTextSize(1);
- display.setTextColor(RED);
- display.setCursor(14, 0);
- display.print("DO NOT CROSS");
- display.setCursor(18, 10);
- display.print("THE TRACKS");
- display.drawFastHLine(20, 37, 53, WHITE);
- display.drawFastHLine(20, 49, 53, WHITE);
- x = 25;
- for(byte i=0; i<=4; i++) {
- display.drawFastVLine(x, 33, 22, WHITE);
- x += 10;
- }
- display.drawCircle(44, 43, 20, RED);
- display.drawCircle(44, 43, 21, RED);
- display.drawLine(30, 54, 65, 32, RED);
- display.drawLine(30, 53, 65, 31, RED);
- break;
- case 2:
- display.setTextSize(1);
- display.setTextColor(GREEN);
- display.setCursor(20, 0);
- display.print("ARRIVALS");
- display.setTextColor(WHITE);
- display.setCursor(0, 10);
- display.print(" H Origin");
- display.drawFastHLine(0, 19, display.width()-1, WHITE);
- y = 12;
- for(byte i=0; i<=3; i++) {
- y += 10;
- display.setCursor(0, y);
- display.print(Arrivals[i]);
- }
- break;
- }
- }
- void loadData(){
- Departures[0] = " 7 Airport";
- Departures[1] = " 9 City center";
- Departures[2] = "10 Airport";
- Departures[3] = "12 Lake";
- Arrivals[0] = " 9 Airport";
- Arrivals[1] = "11 City center";
- Arrivals[2] = "13 Airport";
- Arrivals[3] = "15 Lake";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement