-
Codeschnipsel
Hallo Community,
ich kann diesen Codeschnipsel leider nicht an einem AVR testen. Könnt ihr mir sagen, ob das so geht? Der Compiler meckert nicht, aber auch nicht, wenn ich was für die Variable Zahl eine Zahl über 7 eingeb. Was nicht gehen dürfte.
Test = &b11111001
Zahl = 5
Portb5. = Test.Zahl
kann ich das so machen? Portb.5 sollte jetzt 1 sein.
Das Problem: Hier meckert der Compiler auch nicht!
Test = &b11111001
Zahl = 10
Portb5. = Test.Zahl
Könnt ihr mich aufklären, ob das geht?
Gruß Hacker
-
Nun, meckern kann er nicht, denn was dann, wenn das Progamm läuft, in "Zahl" drinnen steht, weiß er beim kompilieren noch nicht.
Da der Bascom eine "1"-er shiftet, um das "zahl"-Bit zu kriegen, und er das nicht prüft, wird ihm wohl eine NULL rauskommen. was ja genaugenommen auch stimmt. denn 2^^10 ist bei deiner "TEST" Variablen auch tatsächlich null.
Wenn du aber DIM Test as WORD machst
und &HFFFF reinschreibst, sollte auch "1" rauskommen.
-
oki. Danke für deine Hilfe PicNick!