Paso 6: El programa
Aquí encontrará el pequeño programa básico que impulsa el reloj.La recepción de la señal se realizará automáticamente en el fondo por una rutina de firmware.
'********************************************************************
'
' BinUhr.BAS C-Control básico o
'
' Requisitos del sistema:
'
'-Aplicación tableros conectados al tablero de controlador de red
'
' Uso:
'
'-Salida de tiempo binario se puede convertir a bulbos de neón
'
'********************************************************************
' *** Definir datos ***
' variables para horas
definir Stunde08 bytes
definir Stunde04 bytes
definir Stunde02 bytes
definir Stunde01 bytes
' variables para minutos
definir Minute32 bytes
definir Minute16 bytes
definir Minute08 bytes
definir Minute04 bytes
definir Minute02 bytes
definir Minute01 bytes
' Puertos horas
definir s8 puerto [1]
definir s4 puerto [2]
definir s2 puerto [3]
definir s1 puerto [4]
' Puertos minutos
definir m32 puerto [5]
definir puerto de m16 [6]
definir m8 puerto [7]
definir puerto de m4 [8]
definir puerto m2 [9]
definir puerto de m1 [10]
' Puerto segundos
definir puerto de sg1 [11]
definir sg2 puerto [12]
' Puerto Tick Tack (marcando el sonido con relé)
definir puerto de tt [13]
' variables especiales
definir temperatura bytes
definir tempTime bytes
definir LastSecond bytes
' set seriell port2400 n 1 8
VELOCIDAD EN BAUDIOS R2400
' establecer segundos y Ticktack
SG1 = 0
SG2 = 1
TT = 0
' Programa principal
#loop
Espere segunda <> LastSecond
' alternar segunda lámparas y relés
TOG sg2
TOG sg1
TOG tt
LastSecond = segundo
GoSub BuildBinTime
GoSub WriteTime
GoSub serout
Goto bucle
#BuildBinTime
'
' horas
' Convertir horas en formato binario utilizando el comando mod, convertir formato de 24h a formato 12h
Si horas > 12 entonces tempTime = horas - 12 tempTime otro = hora
Stunde08 = tempTime / 8
Temp = tempTime mod 8
Stunde04 = temp / 4
Temp = temp mod 4
stunde02 = temp / 2
Temp = temp mod 2
Stunde01 = temp
'
'Minutos'
' Convertir minutos en formato binario utilizando comando mod
Minute32 = minutos / 32
Temp = minuto mod 32
Minute16 = temp / 16
Temp = temp mod 16
Minute08 = temp / 8
Temp = temp mod 8
Minute04 = temp / 4
Temp = temp mod 4
Minute02 = temp / 2
Temp = temp mod 2
Minute01 = temp
Volver
' Escribir tiempo convertido a bombillas
#WRITETIME
' Stunden
S8 = stunde08
S4 = stunde04
S2 = stunde02
S1 = stunde01
' Minuten
M32 = Minute32
M16 = Minute16
M8 = Minute08
M4 = Minute04
m2 = Minute02
M1 = Minute01
volver
' Escriba convertido y tiempo real serout
#SerOut
Imprimir "8", "4", "2", "1", "", "32", "16", "8", "4", "2", "1"
Imprimir Stunde08, Stunde04, Stunde02, Stunde01,"", Minute32, Minute16, Minute08, Minute04, Minute02, Minute01
Hora de impresión, minuto
volver