Archiv verlassen und diese Seite im Standarddesign anzeigen : [Hilfe?] Wo ist der Fehler?+
The dark Side
16.03.2005, 15:39
Hallo!
Ich hab jetzt ein neues Programm geschrieben, dieses funktioniert aber nicht:
$regfile = "m8def.dat"
$crystal = 3686400
Config Portd.6 = Output
Config Portd.7 = Input
Do
If Portd.7 = 1 Then Portd.6 = 1
Portd.6 = 0
Loop
Versuche ich zu kompilieren, so bekomme ich folgende Fehler:
Error: 101 Line: 24 Can't find HW-Register [DDR6 ]
Error: 101 Line: 25 Can't find HW-Register [DDR7 ]
???
... also ich habe mal eben das Progr. auf 'nem Mega8 comp., ohne Fehler.
Hast Du evtl. in Bascom unter Menu OPTIONS/Compiler/Chip einen anderen/falschen Atmel eingestellt ???
mfg Gerhard
The dark Side
16.03.2005, 20:30
Also das "M8" ist doch der ATMega8, oder?
Bzw. Wenns beid dir läuft, kannst du mir dann sagen, ob es a8uch so funktioniert wie es soll?
Es muss heißen:
Config Pind.6 = Output
Config Pind.7 = Input
Bei Config benutzt du nur "port", wenn du z.B. Portd meinst.
MFG Moritz
Deine If- Anweisung ist aber auch sicher so noch nicht ganz richtig. Du schaltest D6 auf 1 und danach gleich wieder auf 0
Sicher hast du da noch ein "ELSE" und "END IF" vergessen ;-)
The dark Side
16.03.2005, 21:15
@RCO:
So wie du gesagt hast, habe ich es doch auch geschrieben.
@Frank
Nein, das ist schon richtig. Wenn PortD.7 länger als ein Zyklus high ist, so wird PortD.6 sehr schnell auf high/low gesetz. Sollte doch funktionieren
So wie du gesagt hast, habe ich es doch auch geschrieben
Naja, so eine Programmiersprache ist da vielleicht etwas weniger tolerant als du. So ganz dasselbe ist "Portd.6" und "Pind.6" ja nicht.
So wie du gesagt hast, habe ich es doch auch geschrieben
Naja, so eine Programmiersprache ist da vielleicht etwas weniger tolerant als du. So ganz dasselbe ist "Portd.6" und "Pind.6" ja nicht.
The dark Side
17.03.2005, 06:09
:-b Uuups
Wobei PinD.6 geht ja auch nicht, son Pin hat ja kein Register
Wobei PinD.6 geht ja auch nicht, son Pin hat ja kein Register
Es muss bei Config auf jeden Fall Pin heißen, nachher ist ein Eingang ein PinD.X und ein Ausgang PortD.X außerdem fehlt tasächlich ein else und end if:
$regfile = "m8def.dat"
$crystal = 3686400
Config Pind.6 = Output
Config Pind.7 = Input
Do
If Pind.7 = 1 Then
Portd.6 = 1
Else
Portd.6 = 0
End If
Loop
MFG Moritz
The dark Side
17.03.2005, 15:33
Oh danke, RCO.
Es klappt!!!!!!!
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.