Facebook
From Mustard Terrapin, 6 Years ago, written in Plain Text.
This paste is a reply to Re: Untitled from Sweet Octupus - view diff
Embed
Download Paste or View Raw
Hits: 557
  1. #include <SPI.h>
  2. #include <Wire.h>
  3. #include <Adafruit_GFX.h>
  4. #include <Adafruit_SSD1306.h>
  5. #define sensor PD5
  6. Adafruit_SSD1306 display(128 ,64, &Wire);
  7.  
  8. int previous_state = 0;
  9. unsigned long time1, time2, calc;
  10. float to_disp, to_disp_2;
  11.  
  12.  
  13. void setup() {
  14.   pinMode(sensor, INPUT);
  15.  
  16.   Serial.begin(9600);
  17.   // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally
  18.   if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C))  // Address 0x3C for 128x64
  19.     Serial.println("SSD1306 allocation failed");
  20.     for(;;); // Don't proceed, loop forever
  21.   display.display();
  22.   delay(2000);
  23.  
  24.   display.clearDisplay ();
  25.   display.setTextSize(1);
  26.   display.setTextColor(WHITE);
  27.   display.setCursor(0,0);
  28.   display.println(F("Laser"));
  29.   display.setCursor(12,10);
  30.   display.println(F("Shutter"));
  31.   display.setCursor(24,20);
  32.   display.println(F("Tester"));
  33.   display.setCursor(90,50);
  34.   display.println(F("v. 1.0a"));
  35.   display.display();
  36.   Serial.println("Wyswietlilem powitanie");
  37.   delay(3000);
  38.   display.clearDisplay();
  39.   display.setTextSize(3);
  40.   display.setTextColor(WHITE);
  41.   display.setCursor(20,20);
  42.   display.println(F("Ready..."));
  43.   display.display();
  44.   Serial.println("Wyswietlilem status");
  45. }
  46.  
  47. void wyswietl(float wartosc)
  48. {
  49.   to_disp = float(wartosc)/1000;
  50.   display.clearDisplay();
  51.   if (to_disp <1.0 )
  52.     {
  53.       to_disp_2 = 1.0/to_disp;
  54.       display.setTextSize(2);             // Normal 1:1 pixel scale
  55.       display.setCursor(20,14);
  56.       display.println(F("1"));
  57.       display.drawLine(5,32,42,32, WHITE);
  58.       display.setCursor(25,34);
  59.       display.println(to_disp_2,DEC);
  60.       display.drawLine(50,0,50,64, WHITE);
  61.       display.setCursor(60,24);
  62.       display.println(to_disp,DEC);
  63.       display.setCursor(110,23);
  64.       display.println(F("[s]"));
  65.       Serial.println("Wyswietlilem obliczenia < 1");
  66.     }
  67.   else
  68.     {
  69.     display.setCursor(15,20);
  70.     display.println(to_disp,DEC);
  71.     display.setCursor(100,20);
  72.     display.println(F("s"));
  73.     Serial.println("Nie mam co wyswietlic");
  74.     }
  75.   display.display();
  76. }
  77.  
  78.  
  79. void loop() {
  80.   int sensorState = digitalRead(sensor);
  81.  
  82.   if (previous_state == 0 && sensorState == HIGH)
  83.     {
  84.       time1 = millis();
  85.       previous_state = 1;
  86.       Serial.println("zmiana statusu");
  87.     }
  88.   else if (previous_state == 1 && sensorState == LOW)
  89.     {
  90.       calc = millis() - time1;
  91.       wyswietl(calc);
  92.       Serial.println("Wyslalem do wyswietlacza");
  93.       previous_state = 0;
  94.     }
  95. Serial.println(sensorState);
  96. delay(10);
  97. }

Replies to Re: Re: Untitled rss

Title Name Language When
Re: Re: Re: Untitled Tiny Agouti text 6 Years ago.