Code bitte immer als Quelltext posten, so kann dir besser geholfen werden!
Ich poste dir mal ein Beispiel für RN-AVR-Universal, das läßt sich leicht für RN-Control umsetzen.
Hier wird Port D7 als Eingang genutzt. Bei deiner Anweisung wäre es Port D2 der als Eingang genutzt wird.
Code:
'##############################################################
'DCF_Decoder3.bas
'
'
'Das Programm liest die Uhrzeit aus dem digetalen DCF-Decoder aus
'und gibt die Zeit über RS232 aus
'Den digitalen DCF Decoder gibt es nur bei Robotikhardware.de
'Es muss lediglich PIN PD7 mit dem DOUT Pin des Chips DCF-RS1 verbunden werden
'Natürlich auch GND und VCC
'
'Wenn ein USB Modul an RN-AVR UNIVERSAL angesteckt oder eingelötet wurde
'dann wird das Ergebnis über USB zu einem virtuellen COM Port übertragen
'und kann auch mit allen Programmen oder Terminalprogramm empfangen werden
'
' (c) Frank roboternetz.de
'Bezug: www.robotikhardware.de
'Weitere Beispiele auf DVD oder im www.Roboternetz.de und rn-wissen.de
'######################################################################
Declare Sub DCF_UhrzeitLesen()
$programmer = 12 'MCS USB (Zeile weglassen wenn anderer Programmer)
'$prog &HFF , &HFF , &HD9 , &HFE 'Fusebits richtig programmieren (Quarz ein,Jtag aus)
$regfile = "m644pdef.dat"
$framesize = 32
$swstack = 32
$hwstack = 64
$crystal = 8000000 'Quarzfrequenz
$baud = 9600 'Baudrate (Übertragungsgeschwindigkeit)
Baud = 9600
Config Pind.6 = Output 'LED
Led1 Alias Portd.6
'Diese Variablen enthalten nach dem Abruf die Uhrzeit und Datum Informationen
Dim uhr_sek As byte
Dim uhr_min As byte
Dim uhr_std As byte
Dim uhr_tag As byte
Dim uhr_monat As byte
Dim uhr_jahr As byte
Dim uhr_wochentag As byte
Dim uhr_sommerzeit As byte
Dim uhr_zeitumschaltung As byte
Dim uhr_sync As byte
dim bstart as byte 'Enthaelt Byte Zeilenanfang immer 126
dim bende as byte 'Enthaelt Byte Zeilenanfang immer 127
dim zeitgueltig as byte
wait 1
zeitgueltig=0
Do
DCF_UhrzeitLesen
if zeitgueltig=1 then
Print "Heute haben wir den: "; uhr_tag;".";uhr_monat;".";uhr_jahr;" ";uhr_std;":"; uhr_min;":";uhr_sek;" Wochentag:";uhr_wochentag
if uhr_sommerzeit=1 then print "Es gilt Sommerzeit!"
print "Die Uhr wurde von "; uhr_sync; " Minuten per Funk abgeglichen"
print
endif
Wait 5
toggle led1
Loop
'Hilfsfunktionen
'Diese Funktion ruft der Zeit im binären Modus ab
'und uerbergibt diese den globalen Uhr Variablen
Sub DCF_UhrzeitLesen()
Config Pind.7 = Input
if Pind.7 =1 then 'DCF Uhrzeit bereits vorhanden?
'Kurz auf GND setzen um DCF Decoderzeit ausgeben zu lassen
Config PORTD.7 = output
PORTD.7=0
waitus 1
Config Pind.7 = Input
Open "comd.7:2400,8,n,1" For input As #1
Inputbin #1,bstart,uhr_tag,uhr_monat,uhr_jahr,uhr_std, uhr_min,uhr_sek,uhr_wochentag,uhr_sommerzeit,uhr_zeitumschaltung,uhr_sync,bende
Close #1
Config Pind.7 = Input
uhr_tag=uhr_tag-65
uhr_monat =uhr_monat-65
uhr_jahr =uhr_jahr-65
uhr_std=uhr_std-65
uhr_min =uhr_min-65
uhr_sek =uhr_sek-65
uhr_wochentag = uhr_wochentag-65
uhr_sommerzeit=uhr_sommerzeit-65
uhr_zeitumschaltung=uhr_zeitumschaltung-65
uhr_sync=uhr_sync-65
zeitgueltig=1
else
zeitgueltig=0
Print "Zeit noch nicht verifiziert!"
endif
end sub
Lesezeichen