MEXLE2020 Modul : MCB_1x1_Basis_Hookup

ModultypMCB - MEXLE Basis Circuits)
Versionierung1.0
ErstellerTim Fischer
letzte Änderung2020-08-28
KurzbeschreibungBasis Element für ein Hookup

Hardwareübersicht

Abb. 1: fertige MMC 1x1 328PB Platine

Das Basis-Hookup dient als Grundlage, um Platinen zu entwickeln, welche auf die beiden 2×8 Buchsen der Microcontrollerplatine (links und rechts in Abbildung 1) aufgesteckt werden können. Damit ist es u.a. möglich 2 I2C-, 2 SPI und 8 Analog-Digital-Converter genutzt werden. Details zur Pin-Konfiguration ist unter der Platine MMC 1x1 328PB beschrieben.

Die 1×1 Platine kann als Grundlage für weitere Projekte dienen. Dazu ist sie mit verschiedenen Schnittstellen ausgestattet, die im Folgenden nur kurz beschrieben werden.

Auf der Basisplatine ist im Ausgangszustand kein Human-Machine-Interface (LED, Taster, etc.) vorgesehen. Für neuentwickelte Platinen basierend auf dem Basis-Hookup können diese bei Bedarf hinzugefügt werden.

Abb. 1: Interfacebeschreibung MCB 1x1 Basis Hookup
mexle2020:if_mxx_1x1_basisplatine.png

Für die Verknüpfung zwischen mehreren Platinen gibt es verschiedene Schnittstellen (siehe Abbildung 1). Die Schnittstellen des Hookups ähneln der der MMC1x1 328PB Platine.

Die Buchsen links (K1) und rechts (K2) ermöglichen einen Zugriff auf (fast) alle Pins des Controllers. Bis auf die Pins 7 (XTAL1) und 8 (XTAL2) sind alle Pins verfügbar. Die untersten Pins der Buchse K1 können optional über die Jumper SJ2 und SJ3 auf der Rückseite der Platine entweder auf V+ und GND oder auf Pin 3 und 6 gelegt werden. Ersteres ist für die Kompatibilität der verschiedenen Controllerplatinen notwendig. Letzteres bietet die Möglichkeit die letzten beiden Pins - und damit die I2C-Schnittstelle - anzusprechen. Im Bild ist die Anordnung der Pins auf die Buchsen zu sehen; diese sind für alle Controllerplatinen gleich. Die beiden Buchsen ermöglichen Hook-up-Platinen, welche auf den Controllerplatinen aufbauen. Eine Spannungsversorgung der Controllerplatine ist auch über die Hook-ups möglich.

Soll auf Basis dieses Boards ein weiteres Hookup erstellt werden, so sollen die vorhandenen Anschlüsse genutzt werden. Die Anschlüsse einiger Anwendungen sind hier beispielhaft aufgelistet (Details zu den Anschlüssen im Datenblatt des Atmega328PB):

  • Hookup mit Eingangsfilter:
    • Ausgabe des gefilteren Signals an einen der ADC Eingänge (ADC0…ADC7). Diese sind bei MMC1x1 328PB alle als 10-Bit Wandler ausgeführt.
    • AGND sollte auf die Bezugsspannung des eingehenden Signals gelegt werden
    • AVCC Ist ein Eingangs-Pin, d.h. dieser ist nicht belastbar, sondern dient als Eingang für die ADC-Stufe im Microcontroller
  • Hookup mit Ausgangsfilter, Motoransteuerungen, Soundausgabe: Vorteilhaft ist hierbei die Verwendung eines der OCxX Ausgänge zum Erstellen des PWM Signals. Wird die Ausgabe per Software umgesetzt, so sind auch die anderen digitalen Pins möglich (d.h. alle außer Pin 4, 5, 18, 20, 21, 29). Dabei ist zu beachten, dass die Auflösung der genutzten Timer unterschiedlich ist:
    • Timer1 ermöglicht mit einem 16-Bit breiten Timer-Input ein besser aufgelöstes Signal (OC1A, OC1B).
    • Timer0, Timer2 haben ein 16-Bit breiten Timer-Input und damit eine schlechtere Auflösung (OC0A, OC0B, OC2A, OC2B).
FunctionsPinPinFunctions
PTC X0 Y8, OC3A, RXD0Pin3031PTC X1 Y9, OC4A, TXD0
PTC X2 Y10, INT0, OC3B / OC4BPin321PTC X2 Y11, INT1, OC2B
PTC X4 Y12, T0, XCK0Pin29PTC X5 Y13, OC0B,T1
PTC X6 Y14, AIN0, OC0APin1011PTC X7 Y15, AIN1
PTC X10 Y18, CLKO, ICP1Pin1213PTC X11 Y19, OC1A
PTC X12 Y20, OC1B, SS0Pin1415PTC X13 Y21, OC2A, TXD1, MOSI0
PTC X14 Y22, RXD1, MISO0Pin1617PTC X15 Y23, XCK1, SCK0
PTC X8 Y16, ACO, ICP4, SDA1
FunctionsPinPinFunctions
VCCPin421AGND
GNDPin520AREF
-NC18AVCC
-NC29RESET
PTC Y5, ADC5, SCL0Pin2827PTC Y4, ADC4, SCL1
PTC Y3, ADC3Pin2625PTC Y2, ADC2
PTC Y1, ADC1, SCK1Pin2423PTC Y0, ADC0, MISO1
PTC Y7, T3, MOSI1Pin2219PTC Y6, ADC6, ICP3, SS1

Die aktuellen Eagledateien und Vorversionen sind hier in Redmine zu finden.

Als Ausgangspunkt können folgende Dateien genutzt werden: