Re: Beispiel für os_template Kategorie: Progr. Assembler, TaskingTools, OS (von AndrĂ© H. - 26.07.2004 18:54) | ||
Als Antwort auf Beispiel für os_template von Sven - 24.07.2004 22:07 | ||
| ||
Hallo Sven, > Oder hab ich einfach einen Fehler im Code? Fehler nicht, aber etwas vergessen. Wenn Du einen Port als Ausgang benuzten willst, solltest Du diesen auch als solchen definieren. Nur in C2 wird vom Betriebssystem der Port als Ausgang gesetzt, wenn dieser noch keiner ist. Hierfür mu� Du die entsprechenden Bits in den Registern DP1L und DP1H setzen. Auch Deine Schleife läuft etwas zu schnell. Schätzungweise sollte die LED bei Dir dann mit ca. 5 bis 6kHz blinken. :-) Als kleines Beispiel: Bei der HostLED-Erweiterung von OSOPT V3.0 werden 786.420 bzw. 983037 Schleifendurchläufe durchgeführt, bevor der Pegel der LED wechselt. Hier sind zwei verschachtelte Schleifen am Werk. Einmal eine mit festen 65535 Durchläufen und einmal eine mit der übergebenen Anzahl an der Hauptschleife. Die LED müsste hier mit ca. 2,5Hz blinken. So sieht die Warteroutine von OSOPT V3.0 für die Host-LED in Assembler aus: waitcy proc near PUSH R8 _1: MOV R8,#0FFFFh _2: CMPD1 R8,#1 JMPR cc_UGT,_2 JB DP3.4,_3 JB T3EUD,_3 BSET PSW.6 _3: CMPD1 R4,#1 JMPR cc_UGT,_1 POP R8 RETN waitcy endp MfG André H. Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | ||
Antwort schreiben Antworten: Re: Beispiel für os_template (von Sven - 26.07.2004 20:01) Re: Beispiel für os_template (von André H. - 28.07.2004 12:59) Re: Beispiel für os_template (von Sven - 28.07.2004 19:57) Re: Beispiel für os_template (von André H. - 29.07.2004 7:12) Re: Beispiel für os_template (von Thomas - 27.07.2004 22:20) |