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/05/27 00:21]
tfischer
mexle2020:mmc_1x1_328pb [2022/10/21 23:52]
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) 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 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)
  
 \\ \\