kennyho-rass

napetisedmisegment

May 15th, 2020
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <SPI.h>
  2. byte CS = 10;
  3. byte displayArray[10] = { B11000000,    // 0
  4.                           B11111001,    // 1
  5.                           B10100100,    // 2
  6.                           B10110000,    // 3
  7.                           B10011001,    // 4
  8.                           B10010010,    // 5
  9.                           B10000010,    // 6
  10.                           B11111000,    // 7
  11.                           B10000000,    // 8
  12.                           B10010000,    // 9
  13.                         };
  14. int analogInput = 1;
  15. float Vout = 0.00;
  16. float Vin = 0.00;
  17. float R1 = 100000.00; // resistance of R1 (100K)
  18. float R2 = 10000.00; // resistance of R2 (10K)
  19. int val = 0;
  20.  
  21. void setup() {  // put your setup code here, to run once:
  22.   pinMode (CS, OUTPUT);
  23.   pinMode(analogInput, INPUT);  // přiřazení vstupního portu
  24.   Serial.begin(9600); //Přenosová rychlost
  25.   SPI.begin();
  26. }
  27. void loop() {
  28.   val = analogRead(analogInput);// přečte analogový vstup
  29.   Vout = (val * 5.00) / 1024.00; // vzorec pro výpočet napětí out tj. V +, zde 5,00
  30.   Vin = Vout / (R2 / (R1 + R2)); // vzorec pro výpočet napětí, tj. GND
  31.   if (Vin < 0.09) // podmínka
  32.   {
  33.     Vin = 0.00; // prohlášení, které zruší nežádoucí čtení!
  34.   }
  35.   Serial.print("\t  Napětí daného zdroje =");
  36.   Serial.print(Vin);
  37.   Serial.println(".");
  38.   zobraz (Vin);
  39.   delay(100);  // pro udržení rychlosti výstupu v sériovém monitoru
  40. }
  41. void zobraz(byte cislo)
  42. {
  43.   digitalWrite(CS, LOW);
  44.   SPI.transfer (displayArray[cislo % 10]);
  45.   SPI.transfer (displayArray[cislo / 10]);
  46.   digitalWrite(CS, HIGH);
  47. }
Add Comment
Please, Sign In to add comment