You are on page 1of 2

Symbol

Symbol
Symbol
Symbol
Symbol
Symbol
Symbol
Symbol
Symbol

P0=PortD.3
Sa=PortF.1
Sb=PortD.0
Sc=PortF.2
Sd=PortD.2
Se=PortF.6
Sf=PortB.12
Sg=PortD.8
Sp=PortF.3

Symbol
Symbol
Symbol
Symbol

D0=PortB.9
D1=PortF.0
D2=PortD.1
D3=PortB.10
dim dig3, dig2, dig1, dig0, Baux as byte
Dim DDat as word

'
'
'
'
'
'
'
'
'
'
'

sub procedure bcd7seg (dim digx as byte)


'select case digx
case 0 Sa=1
Sb=1 Sc=1 Sd=1 Se=1 Sf=1
case 1 Sa=0
Sb=1 Sc=1 Sd=0 Se=0 Sf=0
case 2 Sa=1
Sb=1 Sc=0 Sd=1 Se=1 Sf=0
case 3 Sa=1
Sb=1 Sc=1 Sd=1 Se=0 Sf=0
case 4 Sa=0
Sb=1 Sc=1 Sd=0 Se=0 Sf=1
case 5 Sa=1
Sb=0 Sc=1 Sd=1 Se=0 Sf=1
case 6 Sa=1
Sb=0 Sc=1 Sd=1 Se=1 Sf=1
case 7 Sa=1
Sb=1 Sc=1 Sd=0 Se=0 Sf=0
case 8 Sa=1
Sb=1 Sc=1 Sd=1 Se=1 Sf=1
case 9 Sa=1
Sb=1 Sc=1 Sd=1 Se=0 Sf=1
end select

Sg=0
Sg=0
Sg=1
Sg=1
Sg=1
Sg=1
Sg=1
Sg=0
Sg=1
Sg=1

end sub
sub procedure anyname ()
dim digito as byte [4]
digito[3]=DDat div 1000
digito[2]=(DDat mod 1000) div 100
digito[1]=((DDat mod 1000)mod 100) div 10
digito[0]=DDat mod 10
for Baux = 0 to 3
select case digito [Baux]
case 0 Sa=1
Sb=1 Sc=1
case 1 Sa=0
Sb=1 Sc=1
case 2 Sa=1
Sb=1 Sc=0
case 3 Sa=1
Sb=1 Sc=1
case 4 Sa=0
Sb=1 Sc=1
case 5 Sa=1
Sb=0 Sc=1
case 6 Sa=1
Sb=0 Sc=1
case 7 Sa=1
Sb=1 Sc=1
case 8 Sa=1
Sb=1 Sc=1
case 9 Sa=1
Sb=1 Sc=1
end select
select case Baux
case 0
d0=1
case 1
d1=1
case 2
d2=1
case 3
d3=1
end select

Sd=1
Sd=0
Sd=1
Sd=1
Sd=0
Sd=1
Sd=1
Sd=0
Sd=1
Sd=1

Se=1
Se=0
Se=1
Se=0
Se=0
Se=0
Se=1
Se=0
Se=1
Se=0

Sf=1
Sf=0
Sf=0
Sf=0
Sf=1
Sf=1
Sf=1
Sf=0
Sf=1
Sf=1

Sg=0
Sg=0
Sg=1
Sg=1
Sg=1
Sg=1
Sg=1
Sg=0
Sg=1
Sg=1

main:

delay_ms(5)
d0=0 d1=0 d2=0 d3=0
next Baux
end sub
ADPCFG = 0x00FF
TRISB = 0x00FF
TrisD = 0xfef8
TrisF = 0xffb0

inicio:
DDat=(ADC_read(0))
'DDat=DDat+1
anyname()
goto inicio
end.

You might also like