Atmega328P-Platine

Einführung

Die von uns gebaute Leiterplatte basiert auf einem Atmega 328P. Sie ist mit verschiedenen Komponenten verbunden, um die I2C-, SPI- und programmierbaren Pins des Mikrocontrollers zu nutzen. Die Leiterplatte ist zweilagig aufgebaut. Ziel ist es, einen marktüblichen Mikrocontroller auszuwählen und ihn je nach Projekt an unsere Bedürfnisse anzupassen.

Hier ist die Liste der an den Atmega328P-Mikrocontroller angeschlossenen Komponenten:

Taster

LED

Fotowiderstand (Analogeingang)
Potentiometer (Analogeingang)
Beschleunigungssensor (I2C)
7-Segment-Anzeige

Uhrmodul (RTC) (I2C)
Ethernet-Anschluss (SPI)
Bipolartransistor und MOSFET

Die für das Design verwendete Software ist Altium Designer. Wir haben die Leiterplatte bei PCB Way als unbestückte Leiterplatte entworfen und produzieren lassen und die Komponenten anschließend selbst verlötet.

Unser Projekt finden Sie auf GitHub.

Elektronisches Diagramm

Hier ist das elektronische Diagramm der Arduino-Platine und der daran angeschlossenen Komponenten:

Das Arduino-Board

Die Hauptkomponente der Platine ist der Atmega 328P. Er wird von Atmel hergestellt, gehört zur AVR-Familie und bietet eine leistungsstarke Kombination aus Leistung und Energieeffizienz. Mit einer 8-Bit-RISC-Architektur, einer Taktfrequenz von bis zu 20 MHz und 32 KB Flash-Speicher eignet er sich ideal für eine Vielzahl von Anwendungen.

Dank seiner Funktionen wie Timern, UARTs und Kommunikationsschnittstellen ist der ATmega328P eine gute Wahl für einen Mikrocontroller.

Zur Programmierung des Atmega328P haben wir ein Micro-USB-Kabel und einen Atmega 16U2 Mikrocontroller angeschlossen. So können wir unser Board direkt über USB von der Arduino IDE aus programmieren.

Wir haben eine Power-LED für den Atmega328P hinzugefügt, um anzuzeigen, wann der Mikrocontroller eingeschaltet ist:

Es gibt einen Stromanschluss mit +5 V und +3,3 V, um externe Komponenten mit Strom zu versorgen:

Wir haben einen Druckknopf am Reset hinzugefügt, damit wir das Programm auf dem Atmega328P im Falle eines Problems manuell neu starten können:

Die Komponenten

Wir haben einen Drucktaster an unsere Platine angeschlossen. Dieser ist mit einem GPIO verbunden, sodass wir seinen Wert abrufen können. Wir haben einen Pulldown-Widerstand hinzugefügt, damit er niedrig bleibt, wenn der Taster nicht gedrückt ist:

Wir haben eine von der Platine aus steuerbare LED hinzugefügt:

An den Analogteil des Atmega328P Mikrocontrollers ist ein Fotowiderstand angeschlossen. Damit lässt sich die externe Helligkeit messen und als Spannung an die Karte übertragen:

Mit dem Potentiometer können Sie die Spannung am analogen Eingang variieren:

Das RTC-Modul (Reverse Clock) sorgt dafür, dass die Uhrzeit in Ihrem Projekt auch im ausgeschalteten Zustand korrekt bleibt. Das in unserem DS1388-Projekt verwendete Modul:

Die 7-Segment-Anzeige ist mit einem Decoder verbunden, der den Atmega 328P mit der Anzeige verbindet. Diese Anzeige kann Zahlen von 0 bis 9 anzeigen. Es handelt sich um eine Anzeige mit gemeinsamer Kathode, daher ist die Kathode mit Masse verbunden:

Wir haben unserer Platine einen Beschleunigungssensor hinzugefügt, der über I2C funktioniert. Dadurch können wir erkennen, wann sich Ihr Teil bewegt und wie die Bewegung aussieht. Der Beschleunigungssensor arbeitet auf drei Achsen: X, Y und Z:

Wir haben einen i2C-Anschluss hinzugefügt, um externe Komponenten mit der Platine zu verbinden und sie skalierbarer zu machen:

Ein Mosfet-Transistor ermöglicht es unserer Karte, eine Komponente mit sehr hoher Spannung (z. B. 220 V) anzusteuern. Er wird mit einem externen Netzteil verwendet, das die Hochspannungskomponente mit Strom versorgen kann. Das gewählte Netzteil kann bis zu zwei Komponenten gleichzeitig ansteuern:

Der Bipolartransistor ermöglicht die Steuerung eines externen Bauteils mit Strom. Er wird mit einer externen Stromquelle verwendet. Es handelt sich um einen NPN-Transistor, der nur ein Bauteil steuern kann:

Damit unser Board über Modbus TCP/IP kommunizieren kann, haben wir einen Ethernet-Port hinzugefügt. Dazu wird der Ethernet-Port über SPI angebunden:

Leiterplatte

Hier ist die oberste Schicht der Leiterplatte:

Hier ist die zweite Schicht und die der Unterseite der Leiterplatte:

Hier ist das Ergebnis der 3D-Leiterplatte: