- Labornetzteil AliExpress         
Seite 2 von 6 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 51

Thema: Pins, Ports und Fragen beim Lernen...

  1. #11
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.07.2006
    Alter
    43
    Beiträge
    2.474
    Anzeige

    Praxistest und DIY Projekte
    Neue Frage:

    Das hab ich aus einem Programmbeispiel:

    DDRA=0x13; //Pin 0, 1 und 4 als Output
    DDRB=0x04; //Pin 2 als Output

    Wie setz sich das zusammen oder wo kann man das nachlesen, wie z.B. "0x13" zusammengesetzt ist?
    Dahinter steht zwar als Kommentar: "//Pin 0, 1 und 4 als Output" , aber woher weiss ich, was z.B. "0x12" aussagt?

  2. #12
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    28.10.2004
    Ort
    Baoding
    Alter
    44
    Beiträge
    689
    Da werdem den Port Hex-Zahlen zugewiesen.
    http://de.wikipedia.org/wiki/Hexadezimalsystem
    Die Umrechnung kannst Du im Calc von Windows machen aber wenn Du das mehr als 3 mal gemacht hast bekommst Du das auch im Kopf hin.

    0x12 = 00010010

  3. #13
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    25.03.2006
    Ort
    Darmstadt
    Alter
    33
    Beiträge
    522
    Hallo copious,

    hier ist eine kleine Tabelle hex->bin
    0=0000
    1=0001
    2=0010
    3=0011
    4=0100
    5=0101
    6=0110
    7=0111
    8=1000
    9=1001
    A=1010
    B=1011
    C=1100
    D=1101
    E=1110
    F=1111

    demnach ist 0x13 = 0b00010011

    MfG Mark

    EDIT:--------------------
    irgendwie bin ich immer zu spät^^

  4. #14
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.07.2006
    Alter
    43
    Beiträge
    2.474
    Klasse danke euch, hab vorhin sogar was darüber gefunden, hatte ich eigentlich schon in der Schule, aber bin schon viiiiiiiiiieeeel zu lange raus

    Andreas

  5. #15
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.07.2006
    Alter
    43
    Beiträge
    2.474
    Jippi, ich denke ich habs raus, ist überhaupt nicht schwer \/

    Für den Einstieg werde ich erstmal binäre Werte angeben, anstelle Hex-Werten, ist für mich einfacher nachzuvollziehen, um einzelene Pins an den Ports zu beeinflussen

  6. #16
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.191
    Für den Einstieg werde ich erstmal binäre Werte angeben, anstelle Hex-Werten, ist für mich einfacher nachzuvollziehen, um einzelene Pins an den Ports zu beeinflussen
    Bei den Ports mach ich das auch immer so, gerade wenn ich mehrere gleichzeitig verändern will - ich finde das ist einfacher.

  7. #17
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.07.2006
    Alter
    43
    Beiträge
    2.474
    Zitat Zitat von wkrug
    Für den Einstieg werde ich erstmal binäre Werte angeben, anstelle Hex-Werten, ist für mich einfacher nachzuvollziehen, um einzelene Pins an den Ports zu beeinflussen
    Bei den Ports mach ich das auch immer so, gerade wenn ich mehrere gleichzeitig verändern will - ich finde das ist einfacher.
    Da braucht man nicht ständig in die Liste gucken und man sieht quasi 1 zu 1, welcher Pin am Port geschaltet wird \/

  8. #18
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.07.2006
    Alter
    43
    Beiträge
    2.474
    Welche Möglichkeiten gibt es, einen Schaltzustand zu definieren?

    Momentan leuchtet die LED nur, wenn ich den Taster gedrückt halte.

    Wie bekomme ich das hin z.B. 1x drücken = LED bleibt an und wieder 1x drücken = LED geht wieder aus?

    MFG

  9. #19
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.191
    Wie bekomme ich das hin z.B. 1x drücken = LED bleibt an und wieder 1x drücken = LED geht wieder aus?
    Zuerst brauchst du mal eine Entprell Routine.
    ein Taster schließt und öffnet während einer Betätigung mehrmals und somit wäre dein Zustand der LED hinterher nicht eindeutig.
    Als nächstes musst Du den Zustand der Taste abspeichern und erst wieder reagieren wenn die Taste von 0 nach 1 wechselt, wenn der Taster gegen GND schaltet natürlich von 1->0.

    Beispiel:
    In deinem Programm wird zyklisch die Taste über die Entprell Routine abgefragt. Ändert sich der Zustand von vorher 0 -> 1 (1 -> 0 bei GND)wird deine LED ein bzw. aus geschaltet.

    Das ist ein Weg der Realisierung.
    Man kann das auch über Interrupts, Timerabfragen oder sonstwas hinkriegen.
    Es kommt halt darauf an, was der Controller sonst noch zu tun hat und ob da noch Timer frei sind, oder ohnehin Zyklisch Interrupts produzieren.

  10. #20
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.07.2006
    Alter
    43
    Beiträge
    2.474
    Was hälst du davon? (Hat mir einer unserer Programmierer vorgeschlagen)

    Code:
    if (readInput && taste && led){  
      led = false;
      readInput = false;
    } 
    
    if (readInput && taste && !led){
      led = true;
      readInput = false;
    } 
    
    if (!taste) {
      readInput = true;
    }

Seite 2 von 6 ErsteErste 1234 ... LetzteLetzte

Berechtigungen

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

12V Akku bauen