- 3D-Druck Einstieg und Tipps         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Anfänger startbits z.b 0b00001 usw...

  1. #1

    Anfänger startbits z.b 0b00001 usw...

    Anzeige

    LiFePo4 Akku selber bauen - Video
    bin noch recht neu im gebiet

    und hab deswegen ne kurze frage: was bedeutet das rot makierte? was hat das damit auf sich war ne programm vorlage, bzw wie schaltet man die zweite led an port B 1 ?

    ;Start, Power ON, Reset
    main: ldi r16,lo8(RAMEND)
    out SPL,r16
    ldi r16,hi8(RAMEND)
    out SPH,r16 ;init Stack
    sbi DDRB,0
    ;------------------------------------------------------------------------
    mainloop: wdr
    ldi r16,0b00000001 ;LED ON
    out PORTB,r16
    rjmp mainloop

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.02.2005
    Ort
    Freiburg
    Alter
    36
    Beiträge
    602
    Hallo,

    mit dem Befehl ladest du zuerst ein Bitschema in ein Register und gibst es mit dem nächsten Befehl (Out) an den Ausgangsport aus.
    Ein bit representiert dabei einen Port Pin.

    Um die andere LED anzuschalten ladest du also einfach den Wert ob00000011 in das Register und gibst es dann an den Port aus.
    Allerdings must du den Portpin dann auch als Ausgang definieren. das machst du bei dir mit dem befehl sbi DDRB, 1

    Am besten du schaust dir mal das Tutorial auf http://www.mikrocotroller.net an.

    Gruß,
    Mehto
    -

  3. #3
    Erfahrener Benutzer Roboter Genie Avatar von robocat
    Registriert seit
    18.07.2006
    Beiträge
    935
    nur als ergänzung zum besseren verständnis,
    ich wollte gestern, dass PB0 und PD5 geschalten sind:
    Code:
    LDI R24, 1 ; PB0 schalten (1stes bit von portb)
    OUT PORTB, R24
    LDI R24, 32 ; (PB5 schalten, 6tes bit, 32dezimal ist binär 100000)
    OUT PORTD, R24
    nun anschliessend sollen PD6 und PD7 geschalten sein:
    Code:
    LDI R24, 0 ; alle bits an portb wieder auf 0
    OUT PORTB, R24
    LDI R24, 192 ; 7tes und 8tes bit (192dez=128+64=binär 11000000)
    OUT PORTD, R24
    die ports müssen natürlich als ausgänge konfiguriert sein:
    Code:
    LDI R24, 255     
    OUT DDRB, R24      
    OUT DDRD, R24
    gruesse, die katz

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    Code:
    ldi r16,0b00000001 ;LED ON
    out PORTB,r16
    Wenn Du nur ein Bit setzen willst, kannste das auch direkt machen
    Code:
    sbi PortB,0
    Signatur??? kann ich mir nicht leisten!!!

  5. #5
    Gast
    und alle 3 LED anzusteuern muss der code

    mainloop: wdr
    ldi r16,0b00000111 ;LED ON
    out PORTB,r16
    rjmp mainloop

    lauten wenn ich das richtig verstanden habe?

    danke im vorraus

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    Ja hast Du aber die anderen 2 Leds müssen auch noch als Ausgang definiert werden.
    Code:
    sbi DDRB,0 ;ersetzen duch
    
    ldi r16,0b00000111 
    out DdrB,r16
    MfG

  7. #7
    Gast
    ahaaa

    wenn z.B

    0b11111111 werden alle pins auf "an " gestellt oder?

    0b0000001 pist aub port B pin 1
    0b0000010 ist auf port B pin 2 usw...?

    stimmt das ?

    danke im vorraus

  8. #8
    Erfahrener Benutzer Roboter Genie Avatar von robocat
    Registriert seit
    18.07.2006
    Beiträge
    935
    ja, genau so ist das.
    dezimal wäre 0b11111111 = 255, dann sind alle pins an dem port gesetzt.

  9. #9
    Gast
    und port C oder D dann waäre das:

    0C oder 0D 0000001 usw...?

    Danke im vorraus

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    nein das 0b steht für Binäre Eingabe

    Code:
    ldi r16,0b11111111 
    out DdrC,r16 ;alle Pins an Port C als Ausgang
    ldi r16,0b11111111
    out PortC,r16 , alle Pins an PortC auf High
    Analog gilt das für PortD


    (ja das 2te ldi kannst weglassen da die Daten ja schon im Register stehen)
    Signatur??? kann ich mir nicht leisten!!!

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test