Anzeige:

HILFE bei Programmierung!!! atmel

Hier finden sie die archivierten Beiträge des alten PHPBB Forums von www.loetstelle.net

HILFE bei Programmierung!!! atmel

Von situation 27 am 19.06.2011 18:44

Hallo,
meine aufgabe ist es ein lauflicht zu programmieren, das hin und zurück läuft mit 8 LEDs. dieses habe ich gemacht.

Programm:
$include(AT89S53.INC)


start:
mov p2,# 11111110b ;1 LED leuchtet
call wait ;Warteschleife wird aufgerufen
mov p2,# 11111101b ;2 LED leuchtet
call wait
mov p2,# 11111011b ;3 LED leuchtet
call wait
mov p2,# 11110111b ;4 LED leuchtet
call wait
mov p2,# 11101111b ;5 LED leuchtet
call wait
mov p2,# 11011111b ;6 LED leuchtet
call wait
mov p2,# 10111111b ;7 LED leuchtet
call wait
mov p2,# 01111111b ;8 LED leuchtet
call wait
mov p2,# 10111111b ;7 LED leuchtet
call wait
mov p2,# 11011111b ;6 LED leuchtet
call wait
mov p2,# 11101111b ;5 LED leuchtet
call wait
mov p2,# 11110111b ;4 LED leuchtet
call wait
mov p2,# 11111011b ;3 LED leuchtet
call wait
mov p2,# 11111101b ;2 LED leuchtet
call wait
jmp start ;Sprung wieder zum Anfang

wait: mov r7,#0ffh ;Schleifenzähler
mov r6,#0ffh ;Schleifenzähler
loop: djnz r6,loop ;Verzögerung 255 durchläufe
djnz r7,loop ;nochmal verzögerung 255*255 Durchläufe
ret
end

Nun muss dieser funktionsablauf mit zwei verscheiden geschwindigkeiten erfolgen, die durch einen Taster ausgesucht werden können. Kann mir jemand helfen bin noch leider am anfang mit meinen kenntnissen. DANKE

Re: HILFE bei Programmierung!!! atmel

Von Alv am 19.06.2011 20:10

So als Vorschlag zu deinem "Hard-Assembler-"Programm:

Einen Taster fragst du mit einem Portbit ab,
je nach Zustand lädst du einen kleineren oder größeren Wert in ein Register,
Dieses Register lädst du dann anstatt des konstanten Wertes in deinen Verzögerungsschleifenzähler.

Von Hotzenplotz am 20.06.2011 00:04

Ich wuerde Dir raten Dich an ein spezielleres Forum zu wenden. http://mikrocontroller.net oder http://avrfreaks.net (Seit ein paar Stunden Serverprobleme)
Die drei Leutchen die hier Assembler koennen werden Dir nicht so sehr viel bringen, ist halt ein Elektronikforum.

Von BellaD am 20.06.2011 21:29

moin

Da 8051/8052 Derivat würde ich mal bei www.8052.com vorbeischauen.

ansonsten als Anregung ( da mit du mit suchen nicht überfordert wirst)
http://www.8052.com/codelib/files/buttons.asm

mfg

Anzeige: