Forum: Mikrocontroller und Digitale Elektronik ATtiny841 Schnittstellen


von Stefan S. (sschultewolter)


Lesenswert?

Hallo,

da ich hier noch sehr viele nicht verbaute ATtiny841 liegen habe, wollte 
ich mir ein paar Boards für Testzwecke aufbauen. Bislang nutzte ich 
lediglich Breakout Boards, bei denen die wichtigsten Komponenten nur 
angeschlossen sind (100nF Kerko, 10k Widerstand und die herausgeführte 
ISP Schnittstelle als 2x3 Variante).

Nun wollte ich mir gerne ein Board zusammensetzen (Größe 5x5cm), auf dem 
alle Schnittstellen einzeln herausgeführt werden.

Bislang habe ich folgende Schnittstellen bereits herausgeführt. 
Vielleicht kommen von euch noch Anregungen, Kritik oder 
Verbesserungsvorschläge.

Gruß Stefan

UART0 (PINHEAD 2x3)
1 PA0*
2 PA3*/XCK
3 PA2/RXD0
4 PA1/TXD0
5 GND
6 VCC
* PA0 als zusätzlicher Pin für zB RS485
* PA3/XCK externer Takt


UART1 (PINHEAD 2x3)
1 PA7*
2 PA6*/XCK
3 PA4/RXD1
4 TXD1
5 GND
6 VCC
* PA7 als zusätzlicher Pin für zB RS485
* PA6/XCK externer Takt


SPI (PINHEAD 2x5)
1 NC*
2 NC*
3 NC*
4 NC*
5 PA7/SS
6 PA5/MISO
7 PA6/MOSI
8 PA4/SCK
9 GND
10 VCC
* NC frei belegbar für Interrupts, etc..


ISP (PINHEAD 2x3)
1 PA5/MISO
2 VCC
3 PA4/SCK
4 PA6/MOSI
5 PB2/RESET
6 GND


I2C *(Slave)* (PINHEAD 2x3)
1 NC*
2 NC*
3 PA6/SDA
4 PA4/SCL
5 GND
6 VCC
* NC frei belegbar für Interrupts, etc..


PORTA (PINHEAD 2x5)
1 PA0
2 PA1
3 PA2
4 PA3
5 PA4
6 PA5
7 PA6
8 PA7
9 GND
10 VCC


PORTB (PINHEAD 2x3)
1 PB0
2 PB1
3 PB2
4 PB3
5 GND
6 VCC



// Zusatz:

Hier noch einmal das entsprechende Mapping, habe die freien Zuordnung 
rausgelassen, genauso wie die Alternativen Mappings.
1
Pin
2
1  VCC
3
2  PB0   (1)XTAL1                         (PCINT8/ADC11/XTAL1/CLKI) 
4
3  PB1   (1)XTAL2                         (PCINT9/ADC10/XTAL2/INT0)
5
4  PB3   (2)RESET                         (PCINT11/ADC9/RESET/dW) 
6
5  PB2                                    (PCINT10/ADC8/CLKO/TOCC7/ICP2)
7
6  PA7   (3)SS                            (PCINT7/ADC7/TOCC6/ICP1/SS)
8
7  PA6   (3)MOSI    (5)XCK1    (6)SDA     (PCINT6/ADC6/ACO1/TOCC5/XCK1/SDA/MOSI)
9
8  PA5   (3)MISO    (5)TXD1               (PCINT5/ADC5/ACO0/TOCC4/T2/TXD1/MISO)
10
9  PA4   (3)SCK     (5)RXD1    (6)SCL     (PCINT4/ADC4/AIN11/TOCC3/T1/RXD1/SCL/SCK)
11
10 PA3   (4)XCK0                          (PCINT3/ADC3/AIN10/TOCC2/T0/XCK0)
12
11 PA2   (4)RXD0                          (PCINT2/ADC2/AIN01/TOCC1/RXD0)
13
12 PA1   (4)TXD0                          (PCINT1/ADC1/AIN00/TOCC0/TXD0)
14
13 PA0                                    (PCINT0/ADC0/AREF)
15
14 GND

Hauptsächlich wird (3)SPI und (4)RS485/oder UART genutzt. Ob der 
Quarz/Resonator notwendig wird, kommt auf den Fall drauf an. Für viele 
Applikationen wird es ohne Quarz laufen an einer ~3V3 Spannungsquelle 
und da komme sollte der interne Takt mit 8Mhz genau genug sein.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

So eine Belegung verleitet aber dazu, sich gegenseitig ausschließende 
Schnittstellen gleichzeitig nutzen zu wollen. Ist das sinnvoll?

von Cyblord -. (cyblord)


Lesenswert?

Ich frag mich immer: Wozu soll so was gut sein? Ich mach mal ein Board 
und führe alles raus. Yeah. Wie soll man damit was entwickeln? Das gibt 
dann den Arduino-Typischen Drahtverhau. Zig Platinen um ein Steckbrett 
drapiert.

Ich habe den Attiny841 auf einem möglichst Platzsparenden SO->DIP 
Adapter aufgelötet. Für erste Tests kann der aufs Steckbrett wie jeder 
DIP Controller auch. Und alles andere kommt auch aufs Steckbrett.
Keine Boards mit unnützen Anschlüssen und zig Möglichkeiten.

von Stefan S. (sschultewolter)


Angehängte Dateien:

Lesenswert?

Hallo Rufus,

dein Einwand ist durchaus berechtigt, möchte mich aber da gerne drauf 
melden. Mir geht es zum einen, verschiedene Projekte schneller zu 
testen. Ich habe immer wieder die Probleme mit dem zusammenstecken von 
Schaltungen, die zuvor mehrmals bereits aufgebaut wurden.

z.B. habe ich bislang HC595 Module immer als DIP-Variante auf das 
Breadboard gesteckt, bzw. die SO Variante auf Breakouts gelötet und dann 
alles mühsam mit Kabeln bestückt, das ist recht aufwendig, wenn es nicht 
mit einem getan ist.

Nun möchte ich am liebsten mir die wichtigsten Platinen anfertigen und 
diese einfach nur noch über das Flachbandkabel stecken und untereinander 
kombinieren. Diese Breadboardkabel gefielen mir nie sonderlich, da sie 
einfach viel Platz wegnehmen können. Zumal ich selten die passenden 
längen da habe, wenn ich mal nicht mit 10 -20cm hinkomm. Flachbandkabel 
mit neuen Stecker schneiden ist das geringste übel.

Nun, dass ua. der Attiny sehr viele Funktionen, aber wenig Pins hat, ist 
bekannt. Ich brauche in der Regel meist nur die SPI-Schnittstelle zum 
ansteuern weiterer ICs. Somit bleibt fällt bereits eine UART 
Schnittstelle weg. UART0 kann ich jedoch weiterhin nutzen zum debuggen, 
falls LEDs dazu nicht ausreichen. Einen Debugger habe ich noch nicht

Sonderlich viele Möglichkeiten zum doppeltbelegen bleiben da nicht 
wirklich. Dafür auch die Auflistung (PinMaps) mit den Zahlen in der () 
und dem Eingerückten.


@Cyblord
Wie die Arduino Plattfom soll das ganze nicht sein. Eher in Richtung 
http://www.mikroe.com/, nur deutlich kleiner und überschaulicher.

Zur Veranschaulichung das Bild im Anhang.

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.