Forum: Mikrocontroller und Digitale Elektronik AVR! Brauch mal kurz hilfe


von Klaus (Gast)


Lesenswert?

Hi!


Kann mir einer mal sagen wie man  einen Ausgangspin einer kontanten zu 
weist.

Würde gerne sowas machen:

.equ    ENABLE  =  Porb.0

aber so geht es ja nicht aber wie würde den sowas aussehen.
Hab dafür noch kein beispiel gefunden.

von Hc Z. (mizch)


Lesenswert?

AVR steht in der Überschrift.  Offensichtlich AVR-Assembler.  Dort geht 
es nicht, ein Portbit so zuzuweisen.  Es wäre auch nicht sinnvoll, denn 
jede Instruktion, die mit Ports umgehen kann, braucht zwei Angaben:  die 
Adresse und das Bit (oder eine Bitmaske).

von Klaus (Gast)


Lesenswert?

Hc Zimmerer schrieb:
> AVR steht in der Überschrift

Sorry! Wollte es Ausdrücklich unter der Rubrik AVR.

Hab jetzt herausgefunden wie es gehen könnte.
Bsp.

.equ  LCD_Port       =  PORTB
.equ  LCD_DDR        =  DDRB
.equ  LCD_RS         =  0

sbi  LCD_Port, LCD_RS      ; RS auf HIGH zum Daten schreiben

Für gewöhnlich Programmiere ich 8051'er und hab da noch Umstellungs 
probleme.

Wie wird den sowas gemacht?
buffer    DATA     30h

Also gezielt in einer Speicheradresse  verwenden um Daten abzulegen.

von Klaus 2. (klaus2m5)


Lesenswert?

; SRAM - nur Platzhalter
.DSEG
buffer: .BYTE 1
; flash - nur feste Daten
.CSEG
buffer: .DB 0x30
; beim EEPROM geht beides, nur vorher
.ESEG

von Klaus (Gast)


Lesenswert?

@Klaus 2m5
Danke!

von Klaus 2. (klaus2m5)


Lesenswert?

; für enable geht auch folgendes
.MACRO enable
       sbi portb,0
       cbi portb,0
.ENDMACRO
; später im code brauchts nur
       enable

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.