Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Thomas, > > > > Übrigens, bei Dir müsste eigentlich der Assembler meckern, da Du bei den Speicherzugriffen > > > kein Segment mittels <asm>EXTS</asm> angibst !? > > > > Der Assembler meckert nicht, aber die Variable 'zahl' wird auch nicht verändert. > > "zahl" ist bei Dir keine Variable, sondern eine Konstante ! > > > Es sind immer alle > > 8 Portsausgänge auf 'ON' geschaltet. Dies kann auch nicht an der schnellen Abfolge liegen, da ich > > auch schon probiert habe einfach gleich am Anfang statt <asm>shr R1,#1</asm> mit <asm>mov R1,#8</asm> > > eine andere Belegung zu erreichen. Es funktioniert jedoch nicht und es werden immer noch alle Ausgänge > > gesetzt. > > Das könnte daran liegen:<asm> > ;Ausgabe > mov P1L,#zahl</asm> > Du schreibst schließlich bei jedem Durchlauf 0b11111111 zu P1L. ;-) > > > > Warum sollte ich <asm>EXTS</asm> benutzen? Meiner Meinung nach werden die mit EQU definierten > > Konstanten doch direkt im Code in Segment 3 abgelegt, oder? Somit brauche ich doch aucb nicht > > das Segment zu wechseln, wenn ich auf den Speicher zu greife, oder irre ich mich da? > > Das hat nichts mit equ definierten Konstanten zu tun, sondern mit indirekten und direkten Speicherzugriffen. > Wenn Du in diesem Schema > <asm> mov R1, 1234 ; Integer von Speicheradresse 1234 lesen > mov R1, [R2] ; Integer von Speicheradresse, welche in R2 steht, lesen</asm> > auf den Speicher, egal ob Flash oder RAM, zugreifen willst, muß der Assembler immer > wissen, auf welches Segment Du zugreifen willst > Ein Speicherzugriff sollte z.B. immer so ablaufen: > <asm> > EXTS #8, #1 ;Segment 8 > MOV R1, [R12] ;Integer von Adresse R12 in R1 speichern</asm> > > Ich vermute fast, daß Du evtl. etwas in Tasking Tools falsch konfiguriert hast. > Folgende Einstellungen sollten gemacht werden: (zumindest arbeite ich so) > <img src="/forum/pics/tasking_config_asm1.gif"> > <img src="/forum/pics/tasking_config_asm2.gif"> > <img src="/forum/pics/tasking_config_asm3.gif"> > <img src="/forum/pics/tasking_config_asm4.gif"> > <img src="/forum/pics/tasking_config_asm5.gif"> > <img src="/forum/pics/tasking_config_asm6.gif"> > <img src="/forum/pics/tasking_config_asm7.gif"> > > > MfG André H.