Facebook
From Commodious Pheasant, 6 Years ago, written in Plain Text.
This paste is a reply to Re: Re: Re: Re: Untitled from Reliable Stork - view diff
Embed
Download Paste or View Raw
Hits: 520
  1. #include <SPI.h>
  2. #include <Wire.h>
  3. #include <Adafruit_GFX.h>
  4. #include <Adafruit_SSD1306.h>
  5. #include <Fonts/FreeSans9pt7b.h>
  6. #define sensor PD5
  7. Adafruit_SSD1306 display(128 ,64, &Wire);
  8.  
  9. int previous_state;
  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.   Serial.println("Dzialam...");
  19.   // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally
  20.   display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  21.   Serial.println("Init OLED");
  22.   display.display();
  23.   delay(2000);
  24.   display.clearDisplay ();
  25.   display.setFont(&FreeSans9pt7b);
  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.   previous_state=0;
  46.   Serial.println("Ustawiam status na 0");
  47. }
  48.  
  49. void wyswietl(float wartosc)
  50. {
  51.   to_disp = float(wartosc)/1000;
  52.   display.clearDisplay();
  53.   if (to_disp <1.0 )
  54.     {
  55.       to_disp_2 = 1.0/to_disp;
  56.       display.setFont(&FreeSans9pt7b);           // Normal 1:1 pixel scale
  57.       display.setCursor(20,14);
  58.       display.println(F("1"));
  59.       display.drawLine(5,32,42,32, WHITE);
  60.       display.setCursor(25,34);
  61.       display.println(to_disp_2,0);
  62.       display.drawLine(50,0,50,64, WHITE);
  63.       display.setCursor(60,24);
  64.       display.println(to_disp,3);
  65.       display.setCursor(110,23);
  66.       display.println(F("[s]"));
  67.       Serial.println("Wyswietlilem obliczenia < 1");
  68.     }
  69.   else
  70.     {
  71.     display.setCursor(15,20);
  72.     display.println(to_disp,3);
  73.     display.setCursor(100,20);
  74.     display.println(F("s"));
  75.     Serial.println("Nie mam co wyswietlic");
  76.     }
  77.   display.display();
  78. }
  79.  
  80.  
  81. void loop() {
  82.   int sensorState = digitalRead(sensor);
  83.  
  84.   if (previous_state == 0 && sensorState == HIGH)
  85.     {
  86.       time1 = millis();
  87.       previous_state = 1;
  88.       Serial.println("zmiana statusu");
  89.     }
  90.   if (previous_state == 1 && sensorState == LOW)
  91.     {
  92.       calc = millis() - time1;
  93.       wyswietl(calc);
  94.       Serial.println("Wyslalem do wyswietlacza");
  95.       previous_state = 0;
  96.     }
  97. Serial.println(sensorState);
  98. Serial.print(" --- ");
  99. Serial.print(previous_state);
  100. delay(100);
  101. }

Replies to Re: Re: Re: Re: Re: Untitled rss

Title Name Language When
Re: Re: Re: Re: Re: Re: Untitled Colossal Finch text 6 Years ago.