---
# System prepended metadata

title: Seven Segment i Biblioteki

---

# Seven Segment i Biblioteki

## Kody do zajęć na dzień 2gi
Skrypt do zajęć:
https://planetarobotow.sharepoint.com/:w:/s/PkolonieadministracjaWoska/Ef2otwmG0UtJvmZHitUJFroBplfqnD2O_ekjwgQMmff8YA?e=ir2hoG
### Kod bez użycia biblioteki
```bez_biblioteki.cpp
void wyswietl(byte *segmenty){
  for(int i=0; i<7; i++){
    if(segmenty[i] == 1)
      digitalWrite(i+2, LOW);
     else
      digitalWrite(i+2, HIGH);
  }
}

void symbol(char sym){
  if(sym=='0'){
                    //{A, B, C, D, E, F, G}
    byte segmenty[] = {1, 1, 1, 1, 1, 1, 0};
    wyswietl(segmenty);
  }
  if(sym=='1'){
    byte segmenty[] = {0, 1, 1, 0, 0, 0, 0};
    wyswietl(segmenty);
  }
}


void setup() {
  // put your setup code here, to run once:  
  for(int i=2; i<10; i++){
    pinMode(i, OUTPUT);
  }
}

void loop() {
  symbol('0');
  delay(1000);
  symbol('1');
  delay(1000);
}

```

### Kod z użyciem biblioteki

```z_biblioteka.cpp
#include "SevSeg.h"
SevSeg sevseg;

void setup() {
  // put your setup code here, to run once:
  byte digitPins[] = {13};
  byte segmentPins[] = {5,6,7,8,9,10,11,12};
  sevseg.begin(COMMON_ANODE, 1, digitPins, segmentPins, true, false, false, true);
  sevseg.setBrightness(90);
}

void loop() {
  // put your main code here, to run repeatedly:
  static unsigned long timer = millis();
  static int seconds = 10;
  if(millis() - timer >= 1000){
    timer += 1000;
    seconds--;
    sevseg.setNumber(seconds, 1);
  }
  if(seconds <= 0){
    seconds = 10;
    timer = millis();
  }
  sevseg.refreshDisplay();
}

```

# Szkic kodu z diodką (własna biblioteka)
### Biblioteka
```cpp
//diodka.cpp

#include diodka.h

class diodka{
	private:
	int pin;
	public:
	diodka(int p){    //inicjalizator
		pin = p;
		pinMode(pin, OUTPUT);
	}
	void kropka(){
		digitalWrite(pin, HIGH);
		delay(500);
		digitalWrite(pin, LOW);
		delay(500);
	}
	void kreska(){
		digitalWrite(pin, HIGH);
		delay(1500);
		digitalWrite(pin, LOW);
		delay(500);
	}
};

```

### Nagłówek
```cpp
//diodka.h

#include <Arduino.h>
class diodka{
	private:
	int pin;
	public:
	void kropka();
	void kreska();
}

```

### Kod główny
```cpp
//main.cpp

#include "diodka.h"    //nazwę biblioteki załączanej z pliku podajemy w cudzysołowiu

void setup(){
	diodka mojadiodka(4);    //tworzymy obiekt mojadiodka wykorzystując klasę z biblioteki
}

void loop(){
	mojadiodka.kropka();mojadiodka.kropka();mojadiodka.kropka();
	mojadiodka.kreska();mojadiodka.kreska();mojadiodka.kreska();
	mojadiodka.kropka();mojadiodka.kropka();mojadiodka.kropka();
}
```