Hallo Zusammen, Ich mache gerade meine ersten Gehversuche mit dem Pollinboard mit dem ATMega32 und den ENC28J60... Ich programmiere in reinem Assembler. Frage: Im Handbuch gibt es den BFC Befehl... Ich dachte Anfangs da könnte ich wie beim UND Befehl entsprechend die Bits maskieren die ich löschen will. So wie es aussieht wird bei diesem Befehl nicht UND verknüpft sondern laut Datenblatt NOTAND... Angeblich soll wenn in einem Register 0xF1 steht und wir 0x17 mit dem BFC Befehl anwenden im Rgeister 0xE0 verbleiben... Hää?? Kann ich nicht nachvollziehen... Wahrheitstabelle NichtUnd 0 0 = 1 0 1 = 1 1 0 = 1 1 1 = 0 11110001 0xf1 00010111 0x17 ------------- 11101110 0xEE Ergebniss mit NichtUnd nach meiner Logik.... 11100000 0xE0 soll laut Datenblatt rumkommen ? Naja, ich will eigentlich die Bänke im ECON1 Register mit dem BFC und BFS Befehl umschalten..... Ich dachte mit dem BFC und der Maske 0x11111100 könnte ich die Bits 0 und 1 löschen. Geht es dann mit der Maske 0x00000011 ? Wer kennt sich da aus ? Zur Zeit habe ich es mit RCR und WCR gelöst.... Dennoch intressiert es wie es mit dem BFC Befehl gehen sollte
Hallo, das ist eigentlich ganz einfach BFC alle Bits die im Datenbyte des Befehls gestetzt sind werden im Register gelöscht 00010111 0x17 (ASM-Befehl COM) ------------- \/ 11101000 0xe8 11110001 0xf1 11101000 0xe8 (ASM-Befehl AND) ------------- \/ 11100000 0xE0 soll laut Datenblatt rumkommen ? genau BFS alle Bits die im Datenbyte des Befehls gestetzt sind werden auch im Register setzt ist ein einfachs ODER Sascha
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.