das "ABS" ist ein programmbefehl ("Den Absolutbetrag eines Integerwertes liefert die Funktion ABS(x).").
für x wird dann der wert 1234 eingesetzt ("x=1234").
Druckbare Version
das "ABS" ist ein programmbefehl ("Den Absolutbetrag eines Integerwertes liefert die Funktion ABS(x).").
für x wird dann der wert 1234 eingesetzt ("x=1234").
Hallo,
ersteinmal danke für die Antwort.
Nach langer Suche habe ich es endlich noch einmal komplett im Handbuch gefunden.
Was ich aber nicht gefunden habe ist folgendes:
y = -k3 ' y = 247, nicht -9 (Bytes sind immer positiv)
k3 ist 9.
Das Byes immer nur postivi sein können war mir schon klar.
Aber weshalb ist y 247?
Woraus geht das hervor?
Danke
mfg Zacard
Ein Byte hat eine Rechweite von 0 - 255 (insgesamt 256 verschiedene Zahlen, ein Byte sind 8 Bit, 2^8 = 256).
Über und unter der Grenzen wiederholen sich die Zahlen von 0 - 255 einfach, da Bits nach dem 8. Bit nicht abgespeichert werden.
Also kommt unter der 0 für -1 die 255, für -2 die 254 usw.
Wenn man dann bis -9 weiterrechnet (Oder einfach 256 - 9) dann kommt 247 dabei raus.
Danke für die Hilfe!
Ich wollte mal frage weshalb gerade das unten angezeigte Fehler sind, denn ich hätte Fehler an anderer Stelle erwartet:
Und jetzt zeigt er mir an:Code:REV L=on:REV_R=on:SYS PLM_SLOW
define leds byteport[2]
define k byte
leds = &B11111111
pause 50
leds = &B00000000
pause 50
deact leds
end
Fehler 1 Zeilende erwartet
Fehler 2 undefiniertes Label REV
Jwtzt weiß ich nicht so richtig was man mir damit sagen will?
Könnt ihr mir das sagen?
thx mfg Zacard
wahrscheinlich hast du REV vorher nicht definiert, sonst würde er das nicht als label ansehen.
Hallo,
erstmal danke für dei Antwort. Ich habe jetzt definiert:
define REV byte
UNd jetzt habe ich wieder vergessen wie ich was definieren darf (also als was)
also bit, byte oder word.
Ist Byte richtig?
:-s
und jetzt sagt er mir Fehler
für die Zeile in der REV L=on:REV_R=on:SYS PLM_SLOW
erwartet
Und was soll erwartet heißen?
Habe ich nirgendwo gefunden.
Hallo Zacard,
Der Fehler liegt im fehlenden Unterstrich ("_") bei "REV_L".Zitat:
und jetzt sagt er mir Fehler
für die Zeile in der REV L=on:REV_R=on:SYS PLM_SLOW
Ein Bezeichner (=Name) für eine Variable darf kein Leerzeichen enthalten, dafür nehmen viele Programmierer den Unterstrich.
Du brauchst also NICHT "REV" neu zu definieren, sondern must nur den Unterstrich ergänzen.
Zu den Definitionen:
BIT -> 1 Bit ist ein 1/0 Zustand (d.h. An oder Aus)
BYTE -> Ein Byte besteht aus 8 Bits, dezimal 0..255 (256 = 2 ^ 8 )
WORD -> Ein Word sind 2 Byte oder 16 Bit, dezimal 0..65535 (= 256*256)
Da die CC1 nur 24 Byte Variablenplatz hat (= 12 Words) muss man mit Variablen sparsam umgehen.
Gruß Dirk
P.S.: Ich finde es übrigens klasse, wie Du Dich in CCBASIC reinfuchst! Weiter so!
Hallo,
ich habe jetzt die definition weggenommen, so wie du meintest.
und habe jetzt dort stehen: REV_L=on:REV_R=on:SYS PLM_SLOW
,trotzdem zeigt er mir an
REV_L ist nicht als Variable definiert
wenn ich dass dann definiere [define REV_L byte], sagt er mir REV_R ist nicht definiert, und wenn ich, dass dann definiere [define REV_R byte], sagt er mir:
bei REV_L=on:REV_R=on:SYS PLM_SLOW erwartet er eine Konstante.
Irgendwie weiß ich jetzt gar nicht was ich machen soll.
mfg Zacard
edit// wenn ich REV_L=on:REV_R=on:SYS PLM_SLOW weglasse überträgt er zwar alles, aber ich darf dann doch nicht starten, weil es laut Handbuch de, Roboter schadet.
Hallo zacard,
Die Zeile ist jetzt o.k.Zitat:
REV_L=on:REV_R=on:SYS PLM_SLOW
Im Kopf Deines Programms must Du deklariert haben:
define REV_L port[6]
define REV_R port[5]
define PLM_SLOW &H01C4
Gruß Dirk
Übrigens: Diese Deklarationen brauchst Du IMMER für alle Programme des Robby. Du must also nicht damit kämpfen!!!
Lad Dir mein Programm LEERPROGRAMM_RP5.bas herunter und verändere KEINE der Definitionen und Unterprogramme, sondern versuch NUR, beim Punkt ...
' PROGRAMM:
' Hier mit dem Programm beginnen!!!
... eigene Programmteile einzufügen.
Z.B.:
gosub LED1FLASH
gosub LED2FLASH
end
Damit blinkt LED1, danach LED2, dann ist Ende.
Hallo,
ersteinmal danke! Dein Leerprogramm habe ich schon geladen. Dieses "Programm" habe ich als Probe gemacht auf "Basis" von 006.bas
mfg Zacard