Define CLOCK_FREQUENCY = 4 'Definimos la frecuencia
'Define SIMULATION_WAITMS_VALUE = 1
Include "_FuncionesGeneralLibrary.bas"
AllDigital
TRISA.0 = 1
TRISA.1 = 1
TRISA.2 = 1
TRISA.3 = 1
TRISA.4 = 1
TRISB.0 = 0
TRISB.1 = 0
TRISB.2 = 0
TRISB.3 = 0
PORTB.4 = 0
PORTB.5 = 0
Dim w1 As Word
Dim w2 As Word
Dim w3 As Word
'Contadores validación teclas
Dim dl_ra3 As Word
Dim dl_ra2 As Word
Dim dl_ra4 As Word
dl_ra3 = 0
dl_ra2 = 0
dl_ra4 = 0
Dim wait As Word
wait = 10 'Tiempo para validar tecla
inicio:
If PORTA.3 = 0 Then ';suma
dl_ra3 = dl_ra3 + 1 'Contador tiempo tecla pulsada
If dl_ra3 > wait Then 'Valida la tecla
w1 = w1 + 1
dl_ra3 = 0 'Reset contador tecla
Endif
Endif
If PORTA.2 = 0 Then ';resta
dl_ra2 = dl_ra2 + 1
If dl_ra2 > wait Then
dl_ra2 = 0
If w1 > 0 Then
w1 = w1 - 1
Endif
Endif
Endif
If PORTA.4 = 0 Then ';reset
dl_ra4 = dl_ra4 + 1
If dl_ra4 > wait Then
w1 = 0
w2 = 0
w3 = 0
dl_ra4 = 0
Endif
Endif
Gosub mostrar
'Reset contador teclas
If PORTA.3 = 1 Then dl_ra3 = 0
If PORTA.2 = 1 Then dl_ra2 = 0
If PORTA.4 = 1 Then dl_ra4 = 0
Goto inicio
End
'Subrutinas ***************************
mostrar:
If w1 = 100 Then w1 = 0
w2 = _getdig32(w1, 0)
w3 = _getdig32(w1, 1)
PORTB = 240 Or w2
Low PORTB.5
High PORTB.4
WaitMs 10 'pause 10
PORTB = 240 Or w3
Low PORTB.4
High PORTB.5
WaitMs 10 'pause 10
Return