Facebook
From Sweet Octupus, 6 Years ago, written in Plain Text.
This paste is a reply to Untitled from Queen Duck - view diff
Embed
Download Paste or View Raw
Hits: 516
  1. #include <SPI.h>
  2. #include <Wire.h>
  3. #include <Adafruit_GFX.h>
  4. #include <Adafruit_SSD1306.h>
  5. #define sensor  14
  6.  
  7. Adafruit_SSD1306 display(128 ,64, &Wire);
  8.  
  9. int previous_state = 0;
  10. unsigned long time1, time2, calc;
  11. float to_disp, to_disp_2;
  12.  
  13.  
  14. void setup() {
  15.   pinMode(sensor, INPUT);
  16.  
  17.   Serial.begin(9600);
  18.   // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally
  19.   if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C))  // Address 0x3C for 128x64
  20.     Serial.println("SSD1306 allocation failed");
  21.     for(;;); // Don't proceed, loop forever
  22.   display.display();
  23.   delay(2000);
  24.  
  25.   display.clearDisplay ();
  26.   display.setTextSize(1);
  27.   display.setTextColor(WHITE);
  28.   display.setCursor(0,0);
  29.   display.println(F("Laser"));
  30.   display.setCursor(12,10);
  31.   display.println(F("Shutter"));
  32.   display.setCursor(24,20);
  33.   display.println(F("Tester"));
  34.   display.setCursor(90,50);
  35.   display.println(F("v. 1.0a"));
  36.   display.display();
  37.   Serial.println("Wyswietlilem powitanie");
  38.   delay(3000);
  39.   display.clearDisplay();
  40.   display.setTextSize(3);
  41.   display.setTextColor(WHITE);
  42.   display.setCursor(20,20);
  43.   display.println(F("Ready..."));
  44.   display.display();
  45.   Serial.println("Wyswietlilem status");
  46. }
  47.  
  48. void wyswietl(float wartosc)
  49. {
  50.   display.clearDisplay();
  51.   if (wartosc <1.0 )
  52.     {
  53.       to_disp_2 = 1.0/wartosc;
  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(wartosc,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(wartosc,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.  
  81.   int sensorState = digitalRead(sensor);
  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.       time2 = millis();
  91.       previous_state = 0;
  92.       calc = time2-time1;
  93.       to_disp = float(calc)/1000;
  94.       wyswietl(to_disp);
  95.       Serial.println("Wyslalem do wyswietlacza");
  96.     }
  97.    
  98.   delay(10);
  99. }

Replies to Re: Untitled rss

Title Name Language When
Re: Re: Untitled Mustard Terrapin text 6 Years ago.