Pinkompatible-AVRs

dino03

Aktives Mitglied
27. Okt. 2008
6.760
20
38
Sprachen
  1. BascomAVR
  2. Assembler
Hallo Dirk,

besteht die Möglichkeit, in der Datenbank farblich nicht nur ähnliche AVRs anzuzeigen
sondern auch Pinkompatible ? Manchmal will man ja wegen geänderter Anforderungen
einen ATmega gegen einen anderen austauschen aber die Platine und die Schaltung
drum rum ist alles schon fertig.

z.B. ...
ATmega8 , ATmega48 , ATmega88 , ATmega168 , ATmega328 , ...
ATmega16 , ATmega32 , ATmega644 , ATmega8535 , ...
... usw.

Also Prozessoren bei denen die grundsätzlichen Funktionen (Quarz, Spannung, Ports)
auf den gleichen Pins liegen.

Gruß
Dino
 
Hallo Dino,

ja, technisch wäre es möglich, dies in die Datenbank zu integrieren. Ich bräuchte hierfür eine Liste der Pin-kompatiblen Mikrocontroller.

Man müßte auch genauer die Kompatibilität definieren. Zum Beispiel ...
  • gleiche VCC Pins
  • gleiche GND Pins
  • gleicher AGND Pin
  • gleicher AVCC Pin
  • gleicher AREF Pin
  • gleicher RESET\ Pin
unterschiede kann es aber geben bei den alternativen Portfunktionen (Zuordnung der Pins von Hardwaremodulen wie Timer, Interrupts, USARTs usw.).

Grüße,
Dirk
 
Hi Dirk,

Man müßte auch genauer die Kompatibilität definieren. Zum Beispiel ...
  • gleiche VCC Pins
  • gleiche GND Pins
  • gleicher AGND Pin
  • gleicher AVCC Pin
  • gleicher AREF Pin
  • gleicher RESET\ Pin
unterschiede kann es aber geben bei den alternativen Portfunktionen (Zuordnung der Pins von Hardwaremodulen wie Timer, Interrupts, USARTs usw.).
Die Versorgungspins (Vcc,GND,AGND,AVcc,ARef,Reset) sollten an der selben
Stelle sein und die primären Portfunktionen (PORTx) auch.
Auf die erweiterten Funktionen würde ich dabei erst einnmal nicht achten
(Timer,ADC,PWM,...). Aber die sind dann meißtens sowieso an der selben
Stelle. Das einzige was bei manchen fehlt sind dann die PinChangeInterrupts.
Das würde ich aber komplett außen vor lassen.
Dann kann man relativ schnell mal nen Ersatztyp raussuchen, wenn man auf
einmal zB PCINT oder mehr Taktfrequenz benötigt. Das stellt sich ja meißtens
erst in der Programmentwicklung raus das es an irgendeiner Stelle kneift. :D
Oder man merkt auf einmal, das der Speicher nicht reicht :rolleyes:

Gruß
Dino
 
Ich denke dass Dirk auch andere Sachen vor hat als die Datenbank mit allerlei Schnickschnack auszustatten.
Selbst als Arbeitsloser kann ich für manche Sachen nie genug Zeit haben, weshalb ich mir schwer vorstellen kann wie Dirk soviel Zeit für das Forum opfern kann.
Ich weiß es nicht, kann aber meine Thesen dazu aufstellen. Villeicht entspricht Dirk ja der definition des idealen Programmierers, also einem "Etwas" das Koffein in beliebigen Code konvertieren kann. Oder aber er hat einen Keller mit unendlos vielen Affen die er entsprechend dem "infinite monkey theorem" auf diverse Probleme ansetzen kann.
Ich weiß es einfach nicht, bin aber der Meinung dass wir Dirk nicht mit zuvielen unnötigen Spielereien beauftragen sollen.
 
Hi Nomis,

Ich denke dass Dirk auch andere Sachen vor hat als die Datenbank mit allerlei Schnickschnack auszustatten.
Selbst als Arbeitsloser kann ich für manche Sachen nie genug Zeit haben, weshalb ich mir schwer vorstellen kann wie Dirk soviel Zeit für das Forum opfern kann.
war ja nur mal ne Idee, so ein Wunsch (kein Befehl :D )
Also so etwas, was man "Nice-To-Have" nennt ...
Wenn es da ist, wär es schön, wenn es aber nicht da ist, dann geht die
Welt auch nicht unter ;)

Also Dirk, mach dir keinen Kopf wenn es nicht in die Datenbank eingearbeitet
wird.

Gruß
Dino
 
Nomis,

ich bin ein Perpetuum Mobile (aus wikipedia: eine Konstruktion, die – einmal in Gang gesetzt – ewig in Bewegung bleibt und dabei Arbeit verrichtet, ohne dass ihr von außen Energie zugeführt wird.) Ok, ganz stimmts nicht, mir wird ab und zu mal Kaffee zugeführt ... ist auch eine Form von Energie :D

Es stimmt, ich bin im Moment sehr ausgelastet. Sinnvolle Sachen für das Forum versuche ich zu realisieren.

Die AVR-PRAXiS-Database baut tatsächlich auf einer Datenbank auf, die Software und die Datenbank habe ich vorsichtshalber schon mal so aufgebaut, daß man sie relativ leicht erweitern kann. Was mir hier fehlt, ist eine Liste der vergleichbaren Mikrocontroller, diese zusammenzustellen, da fehlt mir im Moment wirklich die Zeit :rolleyes:

Mal sehen ... das ist vielleicht etwas für das Wochenende :)

Grüße,
Dirk
 
Hi Dirk,

Was mir hier fehlt, ist eine Liste der vergleichbaren Mikrocontroller, diese zusammenzustellen, da fehlt mir im Moment wirklich die Zeit :rolleyes:

Mal sehen ... das ist vielleicht etwas für das Wochenende :)
Laß man, kannn ich ja machen. Ich habs angeschoben und jetzt kleb ich
mir das mal an den Hacken :D Sag mir nur wie das aussehen soll.
Wieder ne Komma-separierte Liste, in der die kompatiblen drin stehen ?
So wie bei ner MySQL-Abfrage, bei der man testet ob der Wert eines
Feldes in einer Liste vorhanden ist ?

Gruß
Dino
 
Hallo Dino,

es reicht, wenn die pinkompatiblen Mikrocontroller einfach gruppiert untereinender stehen und die Gruppen ersichtlich sind, zum Beispiel so...

Mikrocontroller A
Mikrocontroller B
---
Mikrocontroller C
Mikrocontroller D
Mikrocontroller E
---
...


Ich werde aber frühestens erst am Wochenende dazu kommen, musst dich also nicht so beeilen.

Grüße,
Dirk
 
Pinkompatible AVRs (ATtiny + ATmega)

Hallo zusammen,

ich hab mal ein wenig verglichen (gut das wir verglichen haben :D :rolleyes: ) ...

1. @Dirk : bei den Megas mit 64pin-Gehäuse ist dir in der Datenbank ein Fehler
unterlaufen. Nur die m1281+m2561 haben 54 I/O-Pins. Die anderen nur 53.

2. Hier eine Kompatibilitätärätätä-Liste :D :D

==========================
======== Pin-kompatibel ========
==========================

Versorgungs-Pins und primäre Ports sind bei
identischen Gehäusen an der selben Stelle

===== TINY =====

=== PDIP8 , SOIC8 === (6 I/O)
t12 , t13 , t25 , t45 , t85

=== PDIP14 , SOIC14 , MLF20 === (12 I/O)
t24 , t44 , t84

=== PDIP20 , SOIC20 , MLF32 === (16 I/O)
t26 , t261 , t461 , t861

=== PDIP20 , SOIC20 , MLF20 === (18 I/O)
t2313


===== MEGA =====

=== PDIP28 , TQFP/MLF32=== (23 I/O)
m8 , m48 , m88 , m168 , m328

=== PDIP40 , TQFP/MLF44 === (32 I/O)
m16 , m32 , m644 , m8535

=== PDIP40 === (35 I/O)
m162 , m8515
(TQFP/MLF44 nicht kompatibel)
(m8515 hat NCs wo m162 Versorgung hat)

=== TQFP64/MLF64 === (53/54 I/O)
m165 , m325 , m645 <= m64 , m128 <= m1281 , m2561
(m165,325,645 DNC <= m64,m128 PEN <= m1281,m2561 PG5)
(die weiter links stehenden können durch die rechteren ersetzt werden)
(Wenn Pin1 unbeschaltet bleibt sind alle pinkompatibel)

=== TQFP100 === (69 I/O)
m3250 , m6450

=== TQFP100 === (86 I/O)
m640 , m1280 , m2560

Das war es dann soweit ;) Jetzt könnt ihr fröhlich die Prozzis gegen andere
mit gleicheer Pinbelegung tauschen :D

nochmal @Dirk : ich weiß nicht, ob du das in die Datenbank einarbeiten willst.
Vor allem wegen der Abhängigkeiten bei den 64pinnern.

Gruß
Dino
 
Hallo Dino,
1. @Dirk : bei den Megas mit 64pin-Gehäuse ist dir in der Datenbank ein Fehler
unterlaufen. Nur die m1281+m2561 haben 54 I/O-Pins. Die anderen nur 53.

danke für die Info, ich werde Daten korrigieren.

nochmal @Dirk : ich weiß nicht, ob du das in die Datenbank einarbeiten willst.
Vor allem wegen der Abhängigkeiten bei den 64pinnern.

Da mache ich mir mal Gedanken, wie man das am besten in die Datenbank aufnehmen und darstellen kann.

Grüße,
Dirk
 
Hi Dirk,

Da mache ich mir mal Gedanken, wie man das am besten in die Datenbank aufnehmen und darstellen kann.
das Problem ist ja, daß manche Typen zB mit PDIP kompatibel sind, mit
TQFP/MLF aber nicht. Man muß es also auch noch von den Gehäuseformen
abhängig machen.

Evtl könnte man bei der Auswahl eines Prozzis unten in der Datentabelle
kleine Icons für die Gehäuseformen reinsetzen und dann hinter jeder
Gehäuseform die Pinkompatiblen Typen aufführen (auch gleich als Link zum
entsprechenden Eintrag in der Datenbank). Dann umgeht man oben in der
Tabelle das Gewusel mit den Typen und Gehäuseformen.

Gruß
Dino
 
Wenn es ans erstellen eines Datensatzes oder so geht möchte ich meine Hilfe anbieten :)
 
Hallo BlackDevil,
Wenn es ans erstellen eines Datensatzes oder so geht möchte ich meine Hilfe anbieten :)

die Erstellung des Datensatzes ist nicht das Problem, dies ist relativ schnell passiert, da ich die Datenbank so gestaltet habe, dass man schnell zusätzliche Datenbankspalten einfügen kann, aber danke für dein Angebot :)

Das Problem oder die Arbeit liegt eher in der Darstellung (Stickwort usability) der Daten, da werde ich mir noch Gedanken machen müssen, Dino hat hier ja schon eine gute Idee gehabt, mal sehen, wie ich das realisiere.

Gruß,
Dirk
 
Tag

Das habe ich mit Inkludiert :)

Code:
| 40 Pin
 + Gruppe 1
   + Mega 32
   + Mega 16
   + Mega8515
   + MegaFatasy BGA
 + Gruppe 2
   + ...
| ...

Würde doch nicht weh tun das so zu Gruppieren und die Gruppen eben Gruppen zu nennen? Oder man sortiert es nach Typen. Mega32 ist zum Beispiel Typ A (Primärpins gegenüber) wohingegen der Mega162 Typ B wäre (Primärpins an den gegenüberliegenen Ecken). Oder gibts noch mehr unterschiede? Alternativ könnte man es auch noch weiter sortieren, nach SMD und DIP
 
Hallo zusammen,

Mega32 ist zum Beispiel Typ A (Primärpins gegenüber) wohingegen der Mega162 Typ B wäre (Primärpins an den gegenüberliegenen Ecken). Oder gibts noch mehr unterschiede? Alternativ könnte man es auch noch weiter sortieren, nach SMD und DIP
Primärpins, Typ A, Typ B ??
Also es gibt ... PDIP, SOIC, TQFP, MLF
manche können durch andere ersetzt werden aber die können im Gegenzug
die anderen nicht ersetzten (also Aufwärts-/Abwärts-Kompatibilität)
Und manche sind im PDIP/SOIC-Gehäuse kompatibel aber im TQFP/MLF nicht.

PDIP und SOIC sind sowieso bei den ICs gleich beschaltet und TQFP und MLF
auch. Zwischen den Typen muß man nicht unbedingt unterscheiden.

also ich hab mir das folgendermaßen vorgestellt ...

pdip.giftqfp.gifm8, m48, m88, m168, m328

pdip.gifm162, m8515

tqfp.gifm640, m1280, m2560

... oder so ... ;)

@Dirk : jetzt hast Du sogar schon Icons für die Gehäuse :D ;)

Gruß
Dino
 
Die Icon/Namensversion is auch dufte. Muss man nur noch ne Legende basteln.

Ich meinte das so: Es gibt AVRs die haben an Pin 20 und an Pin 40 die Versorgungen (Mega162 in der senkrechten Verpackung) und es gibt welche die haben sie gegeüber, ich glaube auf 10-12 (VCC GND) und 20 bis 22 (ADC) (oder so) wie Mega16/32/8515 in der senkrechten Verpackung (senkrechte Verpackung meint zB die ganz normal bedrahtete Version).
Hab dabei aber nich dran gedacht das es die teilweise auch als Quadratisch-SMD gibt (arg wenn ich nur die Gehäuseformen auswendig wüsste -.-) und da ist es wiederrum ganz anders...
 
Gehäuseformen ...

Hi Black,

Ich meinte das so: Es gibt AVRs die haben an Pin 20 und an Pin 40 die Versorgungen (Mega162 in der senkrechten Verpackung) und es gibt welche die haben sie gegeüber, ich glaube auf 10-12 (VCC GND) und 20 bis 22 (ADC) (oder so) wie Mega16/32/8515 in der senkrechten Verpackung (senkrechte Verpackung meint zB die ganz normal bedrahtete Version).
Manche haben dann evtl aber die Ports trotzdem noch an anderen Stellen ...
wär schön wenn es so einfach wäre ...

Hab dabei aber nich dran gedacht das es die teilweise auch als Quadratisch-SMD gibt (arg wenn ich nur die Gehäuseformen auswendig wüsste -.-) und da ist es wiederrum ganz anders...
Die Gehäusenamen sind eigentlich nur Abkürzungen ...

TQFP - Thin Quad Flat Pack (dünner quadratischer flacher Pack)
BGA - Ball Grid Array (Kugel Gitter Raster ... oder so, die haben Zinnkugeln unten drunter)
PDIP - Plastic Dual Inline Package (Plastik 2 in Reihe Packung)
SOIC - Small Outline Integrated Circuit (Die PDIP-Version mit 1,27mm Raster)
MLF - Multi Layer Ceramic (das sind die mit den Lötflächen unten drunter)

Hab beim raussuchen der Abkürzungen eben was gefunden ...
Packages (E-Book)
Da steht alles drin :D
(Der Link ist mittlerweile leider tot :( Die Dynamik des Internets. Ich hab mir die PDF glücklicherweise gesichert.)

Gruß
Dino
 
Das es nur Abkürzungen sind ist klar, ich hab sie trotzdem nich im Kopf :) Danke fürs EbooK!
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)