Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte Überarbeitung Beide Seiten der Revision
mexle2020:mmc_1x1_328pb [2019/11/22 10:38]
cdamfeda
mexle2020:mmc_1x1_328pb [2022/10/21 23:52]
tfischer
Zeile 5: Zeile 5:
 ^Modultyp|MMC - MEXLE Microcontroller CPU)| ^Modultyp|MMC - MEXLE Microcontroller CPU)|
 ^Versionierung|1.0| ^Versionierung|1.0|
-^Ersteller|Gerhard Gruhler|+^Ersteller|Gerhard Gruhler / Tim Fischer|
 ^letzte Änderung|2018-01-03| ^letzte Änderung|2018-01-03|
 ^Kurzbeschreibung|Microcontroller Platine mit ATmega328PB Chip, Quarz, LED und 2 Taster| ^Kurzbeschreibung|Microcontroller Platine mit ATmega328PB Chip, Quarz, LED und 2 Taster|
Zeile 11: Zeile 11:
 ====== Hardwareübersicht ====== ====== Hardwareübersicht ======
  
-Die Microcontrollerplatine nutzt den Chip [[http://ww1.microchip.com/downloads/en/DeviceDoc/40001906A.pdf|ATmega328PB]]. Damit ist es u.a. möglich 2 I2C-, 2 SPI und 8 Analog-Digital-Converter genutzt werden. Details zur Pin-Konfiguration sind dem verlinkten Datenblatt zu entnehmen. Die 1×1 Platine kann als Grundlage für weitere Projekte dienen. Über die Platine+<WRAP right> 
 +<imgcaption pic01|fertige MMC 1x1 328PB Platine> 
 +{{mexle2020:uc_platine_mmc_1x1_328pb.png?200}} 
 +</imgcaption> 
 +</WRAP>
  
 +Die Microcontrollerplatine (<imgref pic01>) nutzt den Chip [[http://ww1.microchip.com/downloads/en/DeviceDoc/40001906A.pdf|ATmega328PB]]. Damit ist es u.a. möglich 2 I2C-, 2 SPI und 8 Analog-Digital-Converter genutzt werden. Details zur Pin-Konfiguration des Chips sind dem verlinkten Datenblatt zu entnehmen, die Pinbelegung des Boards ist unten beschrieben. 
 +
 +Die 1×1 Platine kann als Grundlage für weitere Projekte dienen. Dazu ist sie mit verschiedenen Schnittstellen ausgestattet, die im Folgenden beschrieben werden.
 +
 +
 +~~PAGEBREAK~~ ~~CLEARFIX~~ 
 ===== Human-Machine-Interface ===== ===== Human-Machine-Interface =====
  
-Zur Eingabe sind 2 Taster verbaut. Diese ermöglichen das Auslösen eines Reset und das Schalten zu Masse. Letzteres bietet bei aktivierten, internen Pull-up Widerstand eine digitale Eingabe.+<WRAP right> 
 +<imgcaption pic02|Human-Machine-Interface der MMC 1x1 328PB Platine> 
 +{{mexle2020:mexle_328pb_hmi_01.jpg?800|mexle_328pb_hmi_01.jpg}} 
 +</imgcaption> 
 +</WRAP>
  
-Weiterhin ist eine LED auf der Platine vorhanden. Diese lässt sich über den Pin 24 aktivieren.+Zur Eingabe sind 2 Taster verbaut (vgl. <imgref pic02>). Diese ermöglichen das Auslösen eines Reset und das Schalten zu Masse. Letzteres bietet bei aktivierten, internen Pull-up Widerstand eine digitale Eingabe.
  
-{{:mexle:mexle_328pb_hmi_01.jpg?800|mexle_328pb_hmi_01.jpg}}+Weiterhin ist eine LED auf der Platine vorhandenDiese lässt sich über den Pin 24 aktivieren.
  
 +~~PAGEBREAK~~ ~~CLEARFIX~~ 
 ===== Inter-Platinen Interfaces ===== ===== Inter-Platinen Interfaces =====
  
-Für die Verknüpfung zwischen mehreren Platinen gibt es verschiedene Schnittstellen. 
  
-Mit der **Micromatch-Schnittstelle (X1, oben)** lässt sich das Progi verknüpfen. Dieses kann über [[https://de.wikipedia.org/wiki/In-System-Programmierung|ISP]] per SPI den Chip programmieren.+Für die Verknüpfung zwischen mehreren Platinen gibt es verschiedene Schnittstellen (siehe <imgref pic03>).\\
  
-Die **Pinheader an den Ecken** sind bei diesem Board aktuell nicht elektrisch genutztBei anderen Boards sind diese mit PGND (Power Ground, Masse für Leistungskomponenten) und PVCC (Power Voltage, Spannung für Leistungskomponenten) belegt.+<WRAP group> 
 +<WRAP column right 50%> 
 +Mit der **Micromatch-Schnittstelle (X1, oben)** lässt sich das Progi verknüpfen.\\ Dieses kann über [[https://de.wikipedia.org/wiki/In-System-Programmierung|ISP]] per SPI den Chip programmieren. 
 +</WRAP> 
 +</WRAP>
  
-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.+<WRAP right> 
 +<imgcaption pic03|Board-Board-Interface der MMC 1x1 328PB Platine></imgcaption> 
 +{{drawio>mexle_328pb_interfaces_03.svg}} 
 +</WRAP>
  
-Die **Stecker unten (JP1)** verknüpfen die Platine mit der BasisplatineDamit ist die Spannungsversorgung über die Basisplatine möglich. Die Pins V+ und GND dieses Steckers wird für die Versorgung des Controllers genuntztDie Spannung Vwird auf dem Board nicht direkt genutzt, aber an Hook-ups (über Buchse K2) weitergeleitetÜber diesen Stecker ist auch eine I2C-Verbindung zwischen verschiedene Platinen über die Basisplatine möglichWeiterhin gibt es einen Reset-Pin, welcher einen zentralen Reset aller Platinen auf der Basisplatine erlaubt.+Die **Pinheader an den Ecken** sind bei diesem Board aktuell nicht elektrisch genutzt. Bei anderen Boards sind diese mit PGND (Power Ground, Masse für Leistungskomponentenund PVCC (Power Voltage, Spannung für Leistungskomponenten) belegt. 
 + 
 +Die **Buchsen links (K1) und rechts (K2)** ermöglichen einen Zugriff auf (fast) alle Pins des ControllersBis auf die Pins 7 (XTAL1) und 8 (XTAL2) sind alle Pins verfügbar. Die im Bild dargestellten Pin-Nummern entsprechen denen des Microcontrollers [[http://ww1.microchip.com/downloads/en/DeviceDoc/40001906A.pdf|Atmega328PB]]. 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 notwendigLetzteres bietet die Möglichkeit die letzten beiden Pins und damit die I2C-Schnittstelle - anzusprechenIm Bild ist die Anordnung der Pins auf die Buchsen zu sehen; diese sind für alle Controllerplatinen gleichDie beiden Buchsen ermöglichen Hook-up-Platinen, welche auf den Controllerplatinen aufbauen. Eine Spannungsversorgung der Controllerplatine ist auch über die Hook-ups möglich.
  
-{{:mexle:mexle_328pb_interfaces_03.jpg?800|mexle_328pb_interfaces_03.jpg}}+<WRAP group> 
 +<WRAP column right 50%> 
 +Die **Stecker unten (JP1)** verknüpfen die Platine mit dem ModulträgerDamit ist die Spannungsversorgung über den Modulträger möglichDie Pins V+ und GND dieses Steckers wird für die Versorgung des Controllers genuntzt. Die Spannung V- wird auf dem Board nicht direkt genutzt, aber an Hook-ups (über Buchse K2) weitergeleitet. Über diesen Stecker ist auch eine I2C-Verbindung zwischen verschiedene Platinen über den Modulträger möglich. Weiterhin gibt es einen Reset-Pin, welcher einen zentralen Reset aller Platinen auf dem Modulträger erlaubt. 
 +</WRAP> 
 +</WRAP>
  
 <WRAP group> <WRAP half column> <WRAP group> <WRAP half column>
Zeile 69: Zeile 96:
 ===== Eagle-Dateien ===== ===== Eagle-Dateien =====
  
-Die Eagledateien sind in [[https://redmine.hs-heilbronn.de/projects/microcontroller-grundplatinen/repository/show/030.%20MEXLE%20microController%20PCBs/MmC1x1%20328PB_1.x%20ATmega328PB|Redmine]] zu finden.+Die aktuellen Eagledateien und Vorversionen sind [[https://redmine.hs-heilbronn.de/projects/microcontroller-grundplatinen/repository/2145/show/030.%20MEXLE%20microController%20PCBs/MmC1x1%20328PB_1.x%20ATmega328PB|hier in Redmine]] zu finden. 
 + 
 +Als Ausgangspunkt können folgende Dateien genutzt werden: 
 +  * {{mexle2020:mexle328pb_1.2.brd}} 
 +  * {{mexle2020:mexle328pb_1.2.sch}}
  
 ====== Softwareübersicht ====== ====== Softwareübersicht ======
Zeile 83: Zeile 114:
 ===== Lösungsansatz ===== ===== Lösungsansatz =====
  
-  - Wie wurde das Problem angegangen? 
-  - Auswahl der Bauteile 
  
 ===== Erstellung der Hardware ===== ===== Erstellung der Hardware =====
Zeile 97: Zeile 126:
   - [[:mexle:inbetriebnahme-dokumentation|Inbetriebnahme-Dokumentation]]   - [[:mexle:inbetriebnahme-dokumentation|Inbetriebnahme-Dokumentation]]
   - [[:mexle:inbetriebnahme-dokumentation|Aufbau vom Board]]   - [[:mexle:inbetriebnahme-dokumentation|Aufbau vom Board]]
 +