You are on page 1of 1

1 '*******************************************************************************

2 '******************************* 7-segment kocka *******************************


3 '************** Bojan potočnik s pomočjo www.elektronik.si foruma **************
4
5 '*** S tem programom je čip zaseden 27% ****************************************
6 $regfile = "attiny24.dat" 'Definiram čip ATtiny24(A)
7 $crystal = 8000000 'Povem vrednost notranjega kvarca 8MHz
8 '*******************************************************************************
9
10 '*** Definiram I/O porte *******************************************************
11 Config PORTA = Output 'LEDice
12 Config PINB.2 = Input : PORTB.2 = 0 'Tipka, vključim pulldown upor
13 '*******************************************************************************
14
15 '*** Definiram spremenljivke ***************************************************
16 Dim Vrednost As Word , Vrednost2 As Word , Stevec As Byte
17 Vrednost = 0 : Vrednost2 = 0 : Stevec = 0
18 '-------------------------------------------------------------------------------
19
20
21 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx GLAVNI PROGRAM xXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
22 Do
23 Waitus 10
24 Vrednost2 = Rnd(6) 'Vrni 0-5 (to je prava izzrebana stevilka),
to vedno ponavljaj
25 'Vedno ponavljaj
26 If PINB.2 = 1 Then
27 Waitms 20
28 If PINB.2 = 1 Then
29
30 '### Animacija ###
31 Stevec = 0 'Resetiram Stevec
32 Do
33 Vrednost = Rnd(6) 'Zgeneriram nakljucno stevilko
34 Gosub Izpisi_cifro 'Jo izpišem
35 Incr Stevec 'Povečam Stevec (da vem, koliko številk sem
že ispisal)
36 Waitms 35 'Počakam 20ms (ravno prav)
37 Loop Until Stevec >= 20 'Ponovim 20x, to je v tem primeru ~500ms
38 '#################
39
40 Vrednost = Vrednost2 'Prepiši spremenljivko
41 Gosub Izpisi_cifro 'in končno izpišemo pravo cifro
42
43 End If
44 End If
45 Loop
46
47 End 'konec programa
48 '*******************************************************************************
49
50
51 '********************************
52 Izpisi_cifro:
53 Select Case Vrednost 'Glede na vrednost izpisi pravo stevilko na
7-segment
54 Case 0 : PORTA = &B00001001 '1
55 Case 1 : PORTA = &B01110011 '2
56 Case 2 : PORTA = &B01011011 '3
57 Case 3 : PORTA = &B11001001 '4
58 Case 4 : PORTA = &B11011010 '5
59 Case 5 : PORTA = &B11111010 '6
60 End Select
61 Return
62 '********************************
63
64
65
66
67

You might also like