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/05/27 00:21]
tfischer
mexle2020:mmc_1x1_328pb [2022/10/23 23:02] (aktuell)
tfischer
Zeile 1: Zeile 1:
-====== MEXLE2020 Modul : DummyName ======+====== MEXLE2020 Modul : MMC_1x1_328PB ======
  
-<WRAP right> {{:study_aigledore_cc-by-2.0jpg.jpg?200|study_aigledore_cc-by-2.0jpg.jpg}}\\ +<WRAP right> </WRAP>
-<fs 70%>Dummy-Bild\\ +
-Source: [[https://commons.wikimedia.org/wiki/File:Study_(16840395246).jpg|Moyan Brenn @ Wikimedia.org]]\\ +
-([[https://creativecommons.org/licenses/by/2.0/deed.en|CC BY 2.0 Lizenz]])</fs> </WRAP>+
  
-^Modultyp|analog / digital+^Modultyp|MMC - MEXLE Microcontroller CPU)
-^Versionierung|R10.20.1+^Versionierung|1.0
-^Ersteller|anonym+^Ersteller|Gerhard Gruhler / Tim Fischer
-^letzte Änderung|32.13.2111+^letzte Änderung|2018-01-03
-^Kurzbeschreibung|In der Kurzbeschreibung soll \\ die wesentliches Funktion in \\ einem Satz zusammengefasst werden|+^Kurzbeschreibung|Microcontroller Platine mit ATmega328PB Chip, Quarz, LED und 2 Taster|
  
 ====== Hardwareübersicht ====== ====== Hardwareübersicht ======
  
-{{:mexle:mexle_328pb_hmi_01.jpg?800|mexle_328pb_hmi_01.jpg}}+<WRAP right> 
 +<imgcaption pic01|fertige MMC 1x1 328PB Platine> 
 +{{mexle2020:uc_platine_mmc_1x1_328pb.png?200}} 
 +</imgcaption> 
 +</WRAP>
  
-{{:mexle:mexle_328pb_interfaces_03.jpg?800|mexle_328pb_interfaces_03.jpg}}+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 ===== 
 + 
 +<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> 
 + 
 +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. 
 + 
 +Weiterhin ist eine LED auf der Platine vorhanden. Diese lässt sich über den Pin 24 aktivieren. 
 + 
 +~~PAGEBREAK~~ ~~CLEARFIX~~  
 +===== Inter-Platinen Interfaces ===== 
 + 
 + 
 +Für die Verknüpfung zwischen mehreren Platinen gibt es verschiedene Schnittstellen (siehe <imgref pic03>).\\ 
 + 
 +<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> 
 + 
 +<WRAP right> 
 +<imgcaption pic03|Board-Board-Interface der MMC 1x1 328PB Platine></imgcaption> 
 +{{drawio>mexle_328pb_interfaces_03.svg}} 
 +</WRAP> 
 + 
 +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 Leistungskomponenten) und PVCC (Power Voltage, Spannung für Leistungskomponenten) belegt. 
 + 
 +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) 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 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 group> 
 +<WRAP column right 50%> 
 +Die **Stecker unten (JP1)** verknüpfen die Platine mit dem Modulträger. Damit ist die Spannungsversorgung über den Modulträger möglich. Die 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 25: Zeile 69:
 |PTC X0 Y8, <font inherit/inherit;;#999999;;inherit>OC3A, RXD0</font>|Pin30|31|PTC X1 Y9, OC4A, TXD0| |PTC X0 Y8, <font inherit/inherit;;#999999;;inherit>OC3A, RXD0</font>|Pin30|31|PTC X1 Y9, OC4A, TXD0|
 |PTC X2 Y10, INT0, OC3B / OC4B|Pin32|1|PTC X2 Y11, INT1, OC2B| |PTC X2 Y10, INT0, OC3B / OC4B|Pin32|1|PTC X2 Y11, INT1, OC2B|
-|PTC X4 Y12, T0, XCK0|Pin2|6|PTC X9 Y17TC4SCL1|+|PTC X4 Y12, T0, XCK0|Pin2|9|PTC X5 Y13OC0B,T1|
 |PTC X6 Y14, <font inherit/inherit;;#2980b9;;inherit>AIN0</font>, OC0A|Pin10|11|PTC X7 Y15, <font inherit/inherit;;#2980b9;;inherit>AIN1</font>| |PTC X6 Y14, <font inherit/inherit;;#2980b9;;inherit>AIN0</font>, OC0A|Pin10|11|PTC X7 Y15, <font inherit/inherit;;#2980b9;;inherit>AIN1</font>|
 |PTC X10 Y18, CLKO, ICP1|Pin12|13|PTC X11 Y19, OC1A| |PTC X10 Y18, CLKO, ICP1|Pin12|13|PTC X11 Y19, OC1A|
 |PTC X12 Y20, OC1B, <font inherit/inherit;;#27ae60;;inherit>SS0</font>|Pin14|15|PTC X13 Y21, OC2A, TXD1, <font inherit/inherit;;#27ae60;;inherit>MOSI0</font>| |PTC X12 Y20, OC1B, <font inherit/inherit;;#27ae60;;inherit>SS0</font>|Pin14|15|PTC X13 Y21, OC2A, TXD1, <font inherit/inherit;;#27ae60;;inherit>MOSI0</font>|
 |PTC X14 Y22, RXD1, <font inherit/inherit;;#27ae60;;inherit>MISO0</font>|Pin16|17|PTC X15 Y23, XCK1, <font inherit/inherit;;#27ae60;;inherit>SCK0</font>| |PTC X14 Y22, RXD1, <font inherit/inherit;;#27ae60;;inherit>MISO0</font>|Pin16|17|PTC X15 Y23, XCK1, <font inherit/inherit;;#27ae60;;inherit>SCK0</font>|
-|PTC X8 Y16, ACO, ICP4, <font inherit/inherit;;#c0392b;;inherit>SDA1</font>|optional \\ Pin3|optional \\ Pin6|PTC X9 Y17, TC4, <font inherit/inherit;;#c0392b;;inherit>SCL1</font>|+|PTC X8 Y16, ACO, ICP4, <font inherit/inherit;;#c0392b;;inherit>SDA1</font>|optional \\ 
 +   Pin3|optional \\ 
 +   Pin6|PTC X9 Y17, TC4, <font inherit/inherit;;#c0392b;;inherit>SCL1</font>|
  
 </WRAP> <WRAP half column> </WRAP> <WRAP half column>
Zeile 45: Zeile 91:
 |PTC Y1, <font inherit/inherit;;#2980b9;;inherit>ADC1</font>, <font inherit/inherit;;#27ae60;;inherit>SCK1</font>|Pin24|23|PTC Y0, <font inherit/inherit;;#2980b9;;inherit>ADC0</font>, <font inherit/inherit;;#27ae60;;inherit>MISO1</font>| |PTC Y1, <font inherit/inherit;;#2980b9;;inherit>ADC1</font>, <font inherit/inherit;;#27ae60;;inherit>SCK1</font>|Pin24|23|PTC Y0, <font inherit/inherit;;#2980b9;;inherit>ADC0</font>, <font inherit/inherit;;#27ae60;;inherit>MISO1</font>|
 |PTC Y7, T3, <font inherit/inherit;;#27ae60;;inherit>MOSI1</font>|Pin22|19|PTC Y6, <font inherit/inherit;;#2980b9;;inherit>ADC6</font>, ICP3, <font inherit/inherit;;#27ae60;;inherit>SS1</font>| |PTC Y7, T3, <font inherit/inherit;;#27ae60;;inherit>MOSI1</font>|Pin22|19|PTC Y6, <font inherit/inherit;;#2980b9;;inherit>ADC6</font>, ICP3, <font inherit/inherit;;#27ae60;;inherit>SS1</font>|
 +
 </WRAP> </WRAP> </WRAP> </WRAP>
  
 ===== Eagle-Dateien ===== ===== Eagle-Dateien =====
  
-===== Softwareübersicht =====+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 ====== 
 + 
 +Die Software ist abhängig von dem gewünschten Projekt zu verwenden. 
 + 
 +====== Projektübersicht ====== 
 + 
 +===== Aufgabenstellung/Problemstellung ===== 
 + 
 +Die Aufgabenstellung war eine kompakte Controllerplatine zu erstellen, welche als Basis für unterschiedlichste Projekte genutzt werden kann. Dabei sollte Wert auf Kompatibilität und größtmögliche Ausnutzung des verwendeten Microcontrollers werden. 
 + 
 +===== Lösungsansatz ===== 
 + 
 + 
 +===== Erstellung der Hardware ===== 
 + 
 +  - Schaltplan 
 +  - Board 
 +  - auf was wurde Wert gelegt? \\ 
 +    Welche Hürden wurden genommen? 
 + 
 +===== Überprüfung/Test ===== 
 + 
 +  - [[:mexle:inbetriebnahme-dokumentation|Inbetriebnahme-Dokumentation]] 
 +  - [[:mexle:inbetriebnahme-dokumentation|Aufbau vom Board]] 
 +    
 +  
 + 
 +===== Resumee =====
  
-=====   =====+  - Fazit 
 +  - Verbesserungsvorschläge (Ausblick)
  
 \\ \\