- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 7 von 7

Thema: Welche PIN's können als I/O verwendet werden beim Atmega32U4?

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    27.11.2016
    Beiträge
    15

    Welche PIN's können als I/O verwendet werden beim Atmega32U4?

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo Leute,

    ich bin neu hier im Forum und habe da eine für mich Wichtige frage an euch.
    Es geht um den Atmega32U4 µC.

    Soweit ich das aus dem Datenblatt heraus lesen konnte, hat dieser 12ADC channels und 26 I/O Lines.
    "26 I/O Lines" -> bedeutet für mich, das er 26 I/O PIN's hat mit denen ich etwas einlesen oder schalten kann.
    Habe ich das so richtig verstanden?


    MfG

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.686
    Hallo und willkommen im Forum.
    .. Atmega32U4 .. Soweit ich das aus dem Datenblatt heraus lesen konnte, hat dieser 12ADC channels und 26 I/O Liness ..
    Nein, NICHT "und". Er hat 26 I/Os, DAVON sind 12 (unter anderem) nutzbar als ADCs, nach Vollbelegung mit 12 ADCs bleiben noch vierzehn Pinne übrig für anderweitige Nutzung. Zu den 26 I/Os mit teils alternativen Anschluss-/Konfigurationsmöglicheiten kommen noch 18 "weitere" Anschlüsse dazu. Damit sind die 44 Gesamtpinne des ICs vollständig. Die "weiteren" 18 festen Anschlussmöglichkeiten sind:
    Code:
    2 x Vcc
    4 x GND
    1 x /RESET
    1 x UVcc
    1 x UGnd
    2 x AVCC
    1 x AREF
    1 x XTAL1
    1 x XTAL2
    1 x D-
    1 x D+
    1 x UCap
    1 X VBus
    .. Atmega32U4 .. "26 I/O Lines" -> .. 26 I/O PIN's hat mit denen ich etwas einlesen oder schalten kann ..
    Aber genauso hast Du es ja hier auch aufgeschrieben. Wenn ich alle im Datenblatt unter Features gelisteten Anschlüsse zusammenzähle, komme ich locker auf über dreißig, vielleicht gar vierzig Anschluss>>möglichkeiten<<. Davon sind aber etliche entweder-oder, es gibt eben unterschiedliche aber alternative Möglichkeiten die Anschlüsse zu konfigurieren bzw. zu nutzen.

    Bei mir steht gaaanz oben im Mainmodul meiner Programme immer die Konfiguration der Pinne z.B. in dieser Form (hier NICHT Atmega32U4)
    Code:
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    // ===  Grundlegende Initialisierungen der Hardware, Portdefinition    -
    //  PCINT8,  XCK0,   T0, PB0   1        40  PA0, ADC0,  PCINT0         
    //  PCINT9,  CLKO,   T1, PB1   2        39  PA1, ADC1,  PCINT1         
    //  PCINT10, INT2, AIN0, PB2   3        38  PA2, ADC2,  PCINT2         
    //  PCINT11, OC0A, AIN1, PB3   4        37  PA3, ADC3,  PCINT3         
    //  PCINT12, OC0B,  /SS, PB4   5        36  PA4, ADC4,  PCINT4         
    //  PCINT13, ICP3, MOSI, PB5   6        35  PA5, ADC5,  PCINT5         
    //  PCINT14, OC3A, MISO, PB6   7        34  PA6, ADC6,  PCINT6         
    //  PCINT15, OC3B,  SCK, PB7   8        33  PA7, ADC7,  PCINT7         
    //                    /RESET   9        32  AREF                       
    //                       Vcc  10        31  GND                        
    //                       GND  11        30  AVcc                       
    //                     XTAL2  12        29  PC7, TOSC2, PCINT23        
    //                     XTAL1  13        28  PC6, TOSC1, PCINT22        
    //  PCINT24, RXD0,   T3, PD0  14        27  PC5, TDI,   PCINT21        
    //  PCINT25, TXD0,       PD1  15        26  PC4, TDO,   PCINT20        
    //  PCINT26, RXD1, INT0, PD2  16        25  PC3, TMS,   PCINT19        
    //  PCINT27, TXD1, INT1, PD3  17        24  PC2, TCK,   PCINT18        
    //  PCINT28, XCK1, OC1B, PD4  18        23  PC1, SDA,   PCINT17        
    //  PCINT29,       OC1A, PD5  19        22  PC0, SCL,   PCINT16        
    //  PCINT30,   OC2B, ICP PD6  20        21  PD7, OC2A,  PCINT31        
    //              ===================================================
    // ####>>>>     Initialisierung der Anschlüsse für R5M auf mega1284: <<<<####
    //           (           PB0   1 A   A  40  PA0         (CN 11-1 -Audi-Busy)
    // CN_12     (           PB1   2 A   A  39  PA1         (CN 11-3 -Audi-Clock)
    // PORTB     (           PB2   3 A   A  38  PA2         (CN 11-5 -Audi-Data)
    // (CIR od.  /           PB3   4 A?  E  37  PA3         (CN 11-4 -Audi)
    //  LCD ...  \           PB4   5 A   A  36  PA4, Servo10
    //  siehe    (     MOSI, PB5   6 A   A  35  PA5, Servo9
    //  unten    (     MISO, PB6   7 A   A  34  PA6, Servo8
    //  TasteC=3 (      SCK, PB7   8 EU  A  33  PA7, Servo7
    //  Taste /RES,       /RESET   9        32  AREF ref Vcc, aktuell
    //                       Vcc  10        31  GND                        
    //                       GND  11        30  AVcc                       
    //                     XTAL2  12     A  29  PC7, Servo6
    //                     XTAL1  13     A  28  PC6, Servo5
    //           RXD0,       PD0  14 EU  A  27  PC5, Servo4
    //           TXD0,       PD1  15 EU  A  26  PC4, Servo3
    //           RXD1,       PD2  16 EU  A  25  PC3, Servo2
    //           TXD1,       PD3  17 A   A  24  PC2, Servo1
    //           L1g         PD4  18 A   E  23  PC1, SDA   
    //           L1r         PD5  19 A   E  22  PC0, SCL   
    //             TasteA=1, PD6  20 EU  EU 21  PD7, TasteB=2, PCINT31, (Sound)
    // - - - - - - - - - - - - - - -
    // ####>>>>     PB3 ist evtl. Source für IR-DME-LED !! = CIR-LED
    // - - - - - - - - - - - - - - -
    // ####>>>>     Initialisierung/Anschlüsse von PORT B für LCD DEM 16x2
    //     data bit 4        PB0  0 A  WS Pin1 | 
    //     data bit 5        PB1  1 A     Pin2 | -- Der 10-polige Wannenstecker
    //     data bit 6        PB2  2 A     Pin3 |    ist an die Belegung wie beim
    //     data bit 7   SCK, PB3  3 A     Pin4 |    Transistortester angepasst
    //     RS line           PB4  RS      Pin5 |    es kommen noch
    //     ENABLE line MOSI, PB5  EN1     Pin6 |    Pin  9  GND und
    //     R/W (offen) MISO, PB6  R/W     Pin7 |    Pin 10  Vcc dazu
    //     NC (TasteC) SCK,  PB7  NC      Pin8 |___________________________
    //     GND                            Pin9   
    //     Vcc                            Pn10      | Anmerkg: ENABLE line !
    // - - - - - - - - - - - - - - -
    // Ports+Pins als Ein- (0) od Ausgänge (1) konfigurieren, Pull Ups (1) aktivieren
    //      A = Ausgang, E = Eingang ohne , EU = Eingang MIT PullUp
      DDRA  = 0b11110110;   // PA0..2 WTV Bsy/Clk/Dto, PA3=Eingang f Sharp
      PORTA = 0b00000001;   //    und Port/Pull Ups (1)  aktivieren
                            //
      DDRB  = 0b01111111;   // siehe aktuell oben, PB0..6: LCD (oder sonstiges)
      PORTB = 0b10000000;   //    und Port/Pull Ups (1)  aktivieren
                            //
      DDRC  = 0b11110111;   // PC0..7 (mega1284), PC0 + PC1 = I2C
      PORTC = 0b00000000;   // bis auf I2C : Servoausgänge, OHNE Pullup !!
                            // 
      DDRD  = 0b00111100;   // -> siehe Schaltplan m1284_DIL-II_x19_as-build
      PORTD = 0b11000011;   //    Pull Ups aktivieren, NICHT bei extINT0/~1
    
    // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    später kommen evtl. noch Nutzungen/Initialisierungen von Timern, PWMs oä dazu.

    Anmerkung: ich finde es bestens, dass Du VOR Benutzung des Controllers das Datenblatt aufmerksam studierst und begreifen willst.
    Geändert von oberallgeier (27.11.2016 um 10:43 Uhr) Grund: ADC ist EINE Möglichkeit; 2 Nachtrag: 26 + 18 = 44
    Ciao sagt der JoeamBerg

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    27.11.2016
    Beiträge
    15
    Ich hab mich da etwas verschrieben.
    Natürlich meinte ich 26 I/O-Pins ohne die 12 ADC's, außer man nutzt Sie nicht als ADC's.

    Eine frage hätte ich da noch.
    Ich möchte den Atmega32U4 mit dem AVR Dragon Board programmieren.
    Nun finde ich aber keinen IC-Sockel für diesen µC.
    Ich möchte ihn nicht direkt auf die Platine auflöten, falls er beim Proggen oder was auch immer kaputt geht.
    Ich möchte ihn gerne in einen IC-Sockel stecken und gleich auswechseln können.

    Gibt es da einen passenden Sockel?

    MfG & Danke!

    - - - Aktualisiert - - -

    Ich hab mich da etwas verschrieben.
    Natürlich meinte ich 26 I/O-Pins ohne die 12 ADC's, außer man nutzt Sie nicht als ADC's.

    Eine frage hätte ich da noch.
    Ich möchte den Atmega32U4 mit dem AVR Dragon Board programmieren.
    Nun finde ich aber keinen IC-Sockel für diesen µC.
    Ich möchte ihn nicht direkt auf die Platine auflöten, falls er beim Proggen oder was auch immer kaputt geht.
    Ich möchte ihn gerne in einen IC-Sockel stecken und gleich auswechseln können.

    Gibt es da einen passenden Sockel?

    MfG & Danke!

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.686
    Ich hab mich da etwas verschrieben .. Natürlich meinte ich 26 I/O-Pins ohne die 12 ADC's, außer man nutzt Sie nicht als ADC's ..
    Schon ok.

    .. möchte den Atmega32U4 mit dem AVR Dragon Board programmieren .. finde .. keinen IC-Sockel .. Gibt es da einen passenden Sockel?
    Sockel für die Bauformen VQFN und TQFP hatte ich noch nie benutzt. Die AVRs sind auch deutlich resistenter gegen Elektro(statik)schäden als ich bisher fürchtete. Ich habe meine TQFPs direkt gelötet mit ner kleinen Lötspitze - 0,8 mm - das geht prächtig, siehe hier (unten rechts). Die VQFN (mega328.) hatte ich mit Heißluft gelötet. Ausserdem - mal ehrlich: irgendwann müssen die doch in ne Platine eingelötet werden *ggg*. Natürlich gibts da eine etwas rauhbeinige Methode - siehe hier - aber das ist eben auch kein Sockel.

    Jedenfalls viel Erfolg.
    Ciao sagt der JoeamBerg

  5. #5
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.686
    .. Gibt es da einen passenden Sockel? ..
    Tut mir leid, dass ich keine klare Antwort geschrieben hatte. Es gibt natürlich Adapter - wie für fast alles!

    Zum Löten eines TQFP44, Kontakte werden auf ein Quadrat von Stiftleisten geleitet.
    Noch einer zum Löten, ähnlich wie oben.
    Klemmbar - aber mechanisch natürlich ein Klotz.
    Speziell für den 32U4 nach DIP"Konsole"
    und so weiter und so fort.
    Ciao sagt der JoeamBerg

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    27.11.2016
    Beiträge
    15
    Danke für die Hilfe!

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Zitat Zitat von AVRprogger91 Beitrag anzeigen
    Eine frage hätte ich da noch.
    Ich möchte den Atmega32U4 mit dem AVR Dragon Board programmieren.
    Nun finde ich aber keinen IC-Sockel für diesen µC.
    Ich möchte ihn nicht direkt auf die Platine auflöten, falls er beim Proggen oder was auch immer kaputt geht.
    Ich möchte ihn gerne in einen IC-Sockel stecken und gleich auswechseln können.

    Gibt es da einen passenden Sockel?
    Eigentlich nicht wirklich!

    Man muss unterscheiden zwischen Programmier- und Produktions-Sockeln.

    Die Programmier-Sockel sind für Programmier-Geräte gedacht, das sind die Klötze. Sie sind für tausende Steckzyklen ausgelegt und sollen ohne Werkzeug einfach zu bedienen sein. Entsprechend ist auch der Preis.

    Produktions-Sockel sollten günstig sein, wenig Platz beanspruchen und müssen nur 10-100 Wechsel garantiert überstehen. Zudem darf die Montage auch Werkzeug benötigen. Solche IC-Sockel gibt es nur vereinzelt, da heute dafür kein Markt mehr besteht. Moderne ICs lassen sich direkt in der Schaltung programmieren. Ein weiteres Problem der Sockel ist die zusätzliche Kapazität zwischen den Pins. Durch die kleinen Abstände, 0.5mm Raster zu 2.54mm Raster frühe, werden die Kapazitäten grösser.

    Bleiben also noch die Adapter, ein kleiner Print mit Steckern im 2.54mm Raster auf welcher der Chip aufgelötet wird.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

Ähnliche Themen

  1. Wie können PWM Kanäle parallel geschaltet werden?
    Von lobogo im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 13
    Letzter Beitrag: 13.01.2015, 16:03
  2. LCD's die mittels Bascom angesprochen werden können
    Von TBA789 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 34
    Letzter Beitrag: 05.05.2009, 10:32
  3. welche Sensoren werden hier verwendet?
    Von pmaler im Forum Sensoren / Sensorik
    Antworten: 6
    Letzter Beitrag: 28.03.2008, 08:44
  4. Welche Mikrokontroller werden in Industrie verwendet?
    Von Sheridan im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 11
    Letzter Beitrag: 04.10.2006, 13:24
  5. Wie kan externes RAM bei PIC verwendet werden?
    Von JayCool im Forum PIC Controller
    Antworten: 11
    Letzter Beitrag: 24.01.2006, 12:16

Berechtigungen

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

LiFePO4 Speicher Test