Forum: Mikrocontroller und Digitale Elektronik MSP430 Taster benutzen mit ASM


von Marcel B. (eeule)


Lesenswert?

Hi,

ich bin noch rellativ neu in diesen gebiet,

ich habe als aufgabe von meinen lehrer bekommen bei einen MSP430F2012
einen taster in mein assembler programm einzubinden,
das programm soll nur laufen solange der taster gedrückt ist.

Der taster liegt am P2SEL/P2.7 pin, und ich habe keine ahnung mit 
welchen befehl ich diesen eingang auslese, das enzige was unser lehrer 
uns mit gegeben hat ist das wir über das P2SEL register gehen müssen.

ich bedanke mich schonmal für die hilfe:)

grüße,

Marcel

von Peter D. (pdiener) Benutzerseite


Lesenswert?

P2IN ist das Register, in den alle Pinzustände vom ganzen Port 2 
auslesbar sind. Zusätzlich muss der benutzte Pin auch als Eingang 
definiert sein, das ist aber die default-Einstellung und muss nicht 
geändert werden.

Grüße,

Peter

von Peter D. (pdiener) Benutzerseite


Lesenswert?

Stimmt, in P2SEL muss das bit7 auch noch auf Null gesetzt werden, P2.7 
ist bei diesem Controller defaultmäßig kein General Purpose Pin.

Grüße,

Peter

von Marcel B. (eeule)


Lesenswert?

Hi Peter=)

ja ok das hab ich jetzt hin bekommen das sich das BIT7 in P2IN register 
verändert beim betätigen des tasters.

Nun hänge ich am nächsten problem wie ich das in ASM mache das, dass 
programm nur läuft solang der taster gedrückt ist.

Gruß,

Marcel

von Peter D. (pdiener) Benutzerseite


Lesenswert?

Das sollte (habs nicht getestet) etwa so gehen:

Mainloop
            bit    #BIT7,&P2IN  ;Ist bit 7 in P2IN gesetzt?
            jz     Mainloop     ;Wenn nicht, dann Sprung
            ;
            ; Hauptprogramm hier ausführen
            ;
            jmp Mainloop


Grüße,

Peter

Edt: Reihenfolge der Operanden bei bit war falsch.

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
Noch kein Account? Hier anmelden.