TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: eneko166 en 06 de Diciembre de 2012, 17:05:03
-
Estoy haciendo un contador ascendente/descendente bdc en mikrobasic, ya que en ensamblador me parecia bastante mas complicado, pa0 es para decrementar, pa1 para incrementar, pb0-pb3 son las salidas bcd y pb4-pb5 son las masas de los displays. el caso es que no se porque no me realiza la cuenta, he revisado el circuito de arriba a abajo y no logro dar con ello.
Device 16F870
Xtal 20
Dim i As Byte
Dim unidad As Byte
Dim decena As Byte
Dim contador As Word
All_Digital = true
TRISB = 0
TRISA = 1
PORTB = 0
Main:
If PORTA.0 = 1 Then
DelayMS 100
contador = contador - 1
If contador < 0 Then contador = 99
EndIf
If PORTA.1 = 1 Then
DelayMS 100
contador = contador + 1
If contador > 99 Then contador = 0
EndIf
DelayMS 5
unidad = i Dig 0
PORTB = unidad + 16
DelayMS 5
decena = i Dig 1
PORTB = decena + 32
GoTo Main
End
-
Estoy haciendo un contador ascendente/descendente bdc en mikrobasic, ya que en ensamblador me parecia bastante mas complicado, pa0 es para decrementar, pa1 para incrementar, pb0-pb3 son las salidas bcd y pb4-pb5 son las masas de los displays. el caso es que no se porque no me realiza la cuenta, he revisado el circuito de arriba a abajo y no logro dar con ello.
Device 16F870
Xtal 20
Dim i As Byte
Dim unidad As Byte
Dim decena As Byte
Dim contador As Word
All_Digital = true
TRISB = 0
TRISA = 1
PORTB = 0
Main:
If PORTA.0 = 1 Then
DelayMS 100
contador = contador - 1
If contador < 0 Then contador = 99
EndIf
If PORTA.1 = 1 Then
DelayMS 100
contador = contador + 1
If contador > 99 Then contador = 0
EndIf
DelayMS 5
unidad = i Dig 0
PORTB = unidad + 16
DelayMS 5
decena = i Dig 1
PORTB = decena + 32
GoTo Main
End
-
No veo que el valor del contador, que me supongo que es lo que quieres visualizar , lo lleves a ningun sitio. Slo lo estas decrementando e incrementando segun sea el pulsador qsobre el que actues, pero el valor no lo representas por ningun lado.
F.