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
mexle2020:mmc_1x1_328pb [2019/11/22 10:38]
cdamfeda
mexle2020:mmc_1x1_328pb [2022/10/23 23:02] (aktuell)
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) am Microcontroller sind alle Pins über K1 und K2 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]]
 +