Forum: Mikrocontroller und Digitale Elektronik Xdata 8051 wie bitmuster laden


von Acid (Gast)


Lesenswert?

hi leute ich kapier das net.

XDATA AT 0F000h
  ADDR_LED : DB 1


DATA
  VAR : DB 1


  MOV  DPTR, #ADDR_LED
  MOV   A, #0F7h
  MOVX   @DPTR, A
  MOV  VAR, A
  RET

  MOV  A, VAR
  RR    A
  MOV  VAR, A
  MOV  DPTR, #ADDR_LED
  MOVX  @DPTR, A
  INC  P1
  RET

kann man nicht einfacher die 8 bits für die led setzten das ist sage z.b 
er soll das bitmuster schreiben 01010101?

das programm ist nur jetzt so was ich machen will indirekt adressieren?? 
kA chack das ihrgendwie nicht ganz. jemand nen tipp wie ich bitmuster 
ausgeben kann?

von Jobst M. (jobstens-de)


Lesenswert?

Ääähm ... Deine LED liegt im RAM?

Wo ist Deine LED angeschlossen? Schaltplan?

Wie sieht der Rest Deines Codes aus?


Gruß

Jobst

von THaala (Gast)


Lesenswert?

Muttu Hexadezimal in Binär wandeln:

Gucke hier:
Der Startwert 0F7h ist Hex -> Binär = 11110111

willst Du eine anders Bitmuster rotieren lassen nimmst Du z. B.:

0F3h ist Hex -> Binär = 11110011


ich schätze, das die LED(s) dann leuchten wenn eine "0" auftaucht.

alles klar ?

von THaala (Gast)


Lesenswert?

P.S: noch einfacher ist es das Bitmuster direkt Binär zu laden:

  MOV   A, #b01010101

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.