int pin_pot=A0;
int AD_value=0;
int brzina;
int nDelayMicroseconds = 50;
int d1 = 8;
int d2 = 9;
int d3 = 10;
int d4 = 11;
int data;
int segData;
void setup() {
DDRD= B11111111;
DDRB= B11111111;
pinMode(pin_pot,INPUT);
}
void loop() {
int d1, d2, d3, d4;
d1 = data / 1000 % 10; //Znamenka tisućice
d2 = data / 100 % 10; //Znamenka stotice
d3 = data / 10 % 10; //Znamenka desetice
d4 = data % 10;
data=analogRead(pin_pot);
for (int m = 0; m<80; m++) {
segData = DigitTo7SegEncoder(d1, 1);
pickDigit(1); //Selection of a digital display
PORTD = segData;
delayMicroseconds(nDelayMicroseconds);
segData = DigitTo7SegEncoder(d2, 1);
pickDigit(2); //Select the first two digital display
PORTD = segData;
delayMicroseconds(nDelayMicroseconds);
segData = DigitTo7SegEncoder(d3, 1);
pickDigit(3); //Select the first three digital display
PORTD = segData;
delayMicroseconds(nDelayMicroseconds);
segData = DigitTo7SegEncoder(d4, 1);
pickDigit(4); //Select the first four digital display
PORTD = segData;
delayMicroseconds(nDelayMicroseconds);
}
}
void pickDigit(int x) //Defined pickDigit (x), whose role is to open the port dx
{
digitalWrite(d1, HIGH);
digitalWrite(d2, HIGH);
digitalWrite(d3, HIGH);
digitalWrite(d4, HIGH);
switch (x)
{
case 1:
digitalWrite(d1, LOW);
break;
case 2:
digitalWrite(d2, LOW);
break;
case 3:
digitalWrite(d3, LOW);
break;
default:
digitalWrite(d4, LOW);
break;
}
}
unsigned char DigitTo7SegEncoder(unsigned char digit, unsigned char common)
{
unsigned char SegVal;
switch (digit)
{
case 0: if (comm 1) SegVal = 0b00111111; // broj 0
else SegVal = ~0b00111111;
break;
case 1: if (comm 1) SegVal = 0b00000110; // broj 1
else SegVal = ~0b00000110;
break;
case 2: if (comm 1) SegVal = 0b01011011; // broj 2
else SegVal = ~0b01011011;
break;
case 3: if (comm 1) SegVal = 0b01001111; // broj 3
else SegVal = ~0b01001111;
break;
case 4: if (comm 1) SegVal = 0b01100110; // broj 4
else SegVal = ~0b01100110;
break;
case 5: if (comm 1) SegVal = 0b01101101; // broj 5
else SegVal = ~0b01101101;
break;
case 6: if (comm 1) SegVal = 0b01111101; // broj 6
else SegVal = ~0b01111101;
break;
case 7: if (comm 1) SegVal = 0b00000111; // broj 7
else SegVal = ~0b00000111;
break;
case 8: if (comm 1) SegVal = 0b01111111; // broj 8
else SegVal = ~0b01111111;
break;
case 9: if (comm 1) SegVal = 0b01101111; // broj 9
else SegVal = ~0b01101111;
}
return SegVal;
}
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}