Hallo, da ich zurzeit beruflich als auch privat, des öfteren mit Mikrocontrollern zu tun habe, möchte ich mir eine kleine "Lernumgebung" schaffen. Diese soll in einem 19" Standardprüfungsrahmen mit Stromversorgung und Backplane verbaut werden. Das Ganze sollte leicht erweiterbar sein. Ich möchte jedes Zusatzmodul auf einer eigenen Europakarte aufbauen. Zunächst soll ein Mikrocontrollereinschub und eine I/O Karte angefertigt werden. Im weiteren Verlauf soll noch ein Display Einschub und eine Adapterkarte angefertigt werden. Hier mal die Anforderungen der entsprechenden Zusatzmodule: Anforderungen Mikrocontrollereinschub: • Europaplatine • So wenig SMD wie möglich • Programmierbar in C, mit MPLAB • LAN, USB Anschluss • SD Karten Slot, zur Speichererweiterung • Extra Taster für Reset auf Frontplatte • Microchip PIC I/O Karte: • Euopaplatine • So wenig SMD wie möglich • Schalter • Taster • Poti (für Analog Eingang) • Anzeige LEDs • Lautsprecher Display Karte: • Euopaplatine • So wenig SMD wie möglich • LCD • Grafik LCD • Zwei 7-Segment-Anzeigen Adapterkarte: Es sollen alle Ports des Mikrocontrollers z.B. über ein Flachbandkabel abgegriffen werden können, um spezielle Sensoren, oder Aktoren extern, ohne größeren Aufwand anschließen zu können. Des Weiteren soll es möglich sein, einen weiteren Mikrocontroller mit dem bereits verbauten Mikrocontroller zu verbinden. Sei es über ein Flachbandkabel oder über Funk. Das Ganze sollte natürlich voll ausgereizt werden können, also dass ich alle Baugruppen gleichzeitig in Betrieb haben kann. Meint Ihr, dass meine Anforderungen realisierbar sind? Gruß Basti2s
Bastian Schmidt schrieb: > Meint Ihr, dass meine Anforderungen realisierbar sind? Locker ist eher overkill. Fang mit der ersten Eurokarte an. Platz hast du da genug um alles bedrahtet zu bauen. Busbelegungen gibt es wie Sand am mehr (es muss ja nicht gleich comapct PCI sein).
Ich habe mir mal ein Board für einen dsPIC33EP512MU810PF designt. Die Ports habe ich alle auf Pfostenstecker mit STK500-Belegung geführt. Dazu USB, ein serieller Port (per Jumperkabel verdrahtbar), LCD, LEDs, Stromversorgung, SPI-Flash oder EEPROM, Anschluss für PicKIT3 oder ICD3, was man halt so braucht. Wenn Du magst, kann ich Dir die Eagle-Dateien geben. fchk
Die Frage ist, welchen Mikrocontroller ich verwenden soll, um meine doch recht heftigen Anforderungen zu erfüllen. Ich kenne mich Hardware mäßig noch nicht so wirklich aus, wenn ihr mir aber grob sagen würdet, welche bauteile ich brauche für meine Anforderungen, könnte ich mich mal nach ein paar Schaltplänen umschauen, und die euch dann mal zeigen. Wenn ich halt mit dem Mikrocontrollereinschub anfange, möchte ich eben auch, dass ich später mal die im ersten post erwähnten Zusatzmodule ohne weiteres einbinden kann.
Bisher brauchte ich für jedes Projekt einen anderen PIC. Der eine hat kein USB, der andere kein I2C, der dritte kein EEPROM, der vierte kann bei 3,3Volt nur 1MHz.... Früher hatten die PICs einheitliche PIN-Belegung. Man brauchte nur eine Platine mit 3 Fassungen. Geht heute auch nicht mehr. Ist dir http://www.sprut.de/electronic/pic/test/index.htm schon aufgefallen? Mehrere Basisplatinen und Erweiterungsplatinen mit einheitlichem 10-Poligen Stecker.
Ich rate Dir von Deiner Idee mit den 19" Einschüben und einer Busplatine ab. Dieses Konzept ist dann sinnvoll, wenn Du einen gemeinsamen Bus hast, an dem alle Module hängen. Das ist hier nicht der Fall, weil es sich immer im Punkt-zu-Punkt-Verbindungen zum Mikrocontroller handelt. Damit die einwandfrei funktionieren, ist es wichtig, die Länge dieser Verbindungen zu minimieren und unbenutzte Stichleitungen zu vermeiden. Mein Konzept mit den 10-poligen Pfostensteckern folgt diesem Designkriterium. fchk
Kein Name schrieb: > Bisher brauchte ich für jedes Projekt einen anderen PIC. > > Der eine hat kein USB, der andere kein I2C, der dritte kein EEPROM, der > vierte kann bei 3,3Volt nur 1MHz.... Ich möchte Vorerst, wie beschrieben ledeglich den Mikrocontrollereinschub und die I/O Karte Bauen, sodass ich halt wenn ich einen bestimmten Schalter drücke eine bestimmte LED leuchtet. Das ganze soll sich mit der Zeit dann Steigern, bis ich dann halt bei z.B.: Webinterface über LAN, Grafik LCD, Funkübertragung zwischen mehreren Mikrocontrollern angekommen bin. Deshalb würde ich gleich, insofern dies möglich ist einen PIC verbauen, den ich voererst nicht so schnell ausreizen werde. Und selbst wenn ich mal je einen anderen PIC brauche, kann ich mir ja schnell einen neuen Mikrocontrollereinschub bauen, die Zusatzkarten funktionieren ja trotzdem. > Ist dir http://www.sprut.de/electronic/pic/test/index.htm schon Schaut schon mal garnicht so schlecht aus. Aber ich denke, ich sollte zuerst klären, welchen PIC ich verwenden soll. edit: >Ich rate Dir von Deiner Idee mit den 19" Einschüben und einer Busplatine >ab. Dieses Konzept ist dann sinnvoll, wenn Du einen gemeinsamen Bus >hast, an dem alle Module hängen. Das ist hier nicht der Fall, weil es >sich immer im Punkt-zu-Punkt-Verbindungen zum Mikrocontroller handelt. >Damit die einwandfrei funktionieren, ist es wichtig, die Länge dieser >Verbindungen zu minimieren und unbenutzte Stichleitungen zu vermeiden. >Mein Konzept mit den 10-poligen Pfostensteckern folgt diesem >Designkriterium. Mach ich mir im Moment keine große sorgen, so lange ist die Backplane ja auch nicht. Außerdem haben wir das bei unserer AP1 so ähnlich gemacht, hat ohne Probleme funktioniert.
Passenden PIC auswählen. Da gibt es bei Microchip Übersichtsseiten wie http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=1004&mid=10&lang=en&pageId=74 Nach USB und Package=PDIP gefiltert bleibt eine recht überschaubare Anzahl übrig.
Bastian Schmidt schrieb: > Aber ich denke, ich sollte zuerst klären, welchen PIC ich verwenden > soll. Ich kann deinen Ansatz schon verstehen. Jedoch übersiehst du hier was. Der Grundgedanke bei den µC lautet: billig. So ein µC (egal ob PIC oder AVR) kostet ein paar Euro. Du hast mit einem bestimmten Modell angefangen und in 1 Jahr kommst du drauf, dass du eine USART zu wenig hast - ist alles kein Thema. Dann nimmst du eben ein Modell, welches 2 USARTS drinnen hast und machst dir schnell eine Platine dazu. Dein Ansatz mit Einschüben und Backplane in allen Ehren. Aber: * erstens bist du nie so flexibel damit, als wie wenn du einfach eine µC-Platine mit (für dich) genormten Anschlüssen hast und dazu einen Haufen Zusatzplatinen, die du einfach nach Bedarf ansteckst * zweitens kostet dich dann das Drumherum ein Vermögen. Eine einfache µC-Platine kannst du selbst dir um sagen wir mal 10€ bauen. Die Flexibilität kommt durch die ansteckbaren Zusatzplatinen. Und wenn du mal was bauen willst, wozu du noch keine hast, dann machst du sie dir einfach. Und zwar wenn der Bedarf da ist. Ich halte viel von Planung. Aber an dieser Stelle ist die Sache die, dass du heute noch nicht berücksichtigen kannst und auch nicht musst, was du ni 2 Jahren mal vielleicht brauchen könntest. Wenn es soweit ist, dann baust du dir das was du brauchst und steckst es einfach an. Und ab und an, kommst du auch in die Situation, dass du dir eine andere µC-Platine baust, weil du einen anderen PIC einsetzen willst.
Bastian Schmidt schrieb: > Mach ich mir im Moment keine große sorgen, so lange ist die Backplane ja > auch nicht. Außerdem haben wir das bei unserer AP1 so ähnlich gemacht, > hat ohne Probleme funktioniert. Wenn ein mit der Backplane verbundener Pin für USB, CAN oder ein anderes schnelles serielles Interface verwendet wird, wars das mit der Funktion. fchk
Ich denke so viel wird mich das drum herum nicht kosten, da ich sowieso schon seit ner ewigkeit einen 19" Rahmen mit Standardstromversorgung und Backplane rumstehen habe. Des weiteren bin ich mir sicher, dass ich mit der 19" Lösung immernoch flexibel bleibe, da ich ja nicht benötigte Karten Ausstecken kann, und durch eine Adapterkarte, die einfach alle Pins auf ein Flachbandkabel ausgibt ersetzen kann.
Frank K. schrieb: > Ich habe mir mal ein Board für einen dsPIC33EP512MU810PF designt. Die > Ports habe ich alle auf Pfostenstecker mit STK500-Belegung geführt. Dazu > USB, ein serieller Port (per Jumperkabel verdrahtbar), LCD, LEDs, > Stromversorgung, SPI-Flash oder EEPROM, Anschluss für PicKIT3 oder ICD3, > was man halt so braucht. > > Wenn Du magst, kann ich Dir die Eagle-Dateien geben. Ich hab da mal eine Frage zu der Versorgungsspannung. Wenn diese vom USB kommt, also 5V, wird's doch ziemlich knapp mit dem Spannungsabfall, oder? Mal angenommen es wird 200mA benötigt, fällt an der Diode ca. 0,85V ab. Typischer Spannungsabfall von dem LM1117 bei 200mA ca. 1,12V. Ergibt: 5V-0,85V-1,12V=3,03V Oder sehe ich das falsch? Hast du schon ein Board aufgebaut?
Nichts für ungut aber 19" Standardprüfungsrahmen halte ich für anachronistisch. Ich habe selber noch auf so einem gelernt -MFA System(8086)- Das hat wegen Adress- und Datenbus wenigstens bedingt Sinn gemacht, zumal 19“ damals noch Stand der Technik war. Heute geht man gleich auf Hutschiene. Dank schneller uns sicheren serieller Bussysteme einfach die bessere Lösung. Für ein modernes Lernsystem heute würde ich einem freies Modularsystem vorziehen. Pfostensteckverbinder male – male, female – male, female – female gibt es bei ebay für je 2,50 bis 3.- Euro die 40 Stück aus China. Da löst sich dann ganz schnell auch male in SMD-Adapter, ein völlig anderes EVAL–Board, die Lochrasterlötung oder ein Steckboard einbinden und überall kann man wunderbar dran Messen. Mein erstes bessere „PIC Evaluation Board“ habe ich mir vor Jahren auf einer Lochraster Europaplatine mit einem 16F877 zusammen gelötet. Alle Ports auf 10 Pin Pfostenstecker (also mit 5V und GND). Hab das Teil dann bald in die Ecke gepfeffert da ich hier die AVR kennengelernt habe (billige Flash µC mit kostenlosem C-Compiler – das war neu). Das AVR STK500 hat die gleich Pinbelegung die ich damals gewählt hatte, die bietet sich einfach an. War trotzdem Zeitverschwendung ! Die kleinen Lochrasterplatinen (RTC – Inkrementalgeber..) zum Anschluss an das Board verwende ich heute noch gelegentlich – allerdings mit einzelnen Kabeln. Jatzt sogar wieder gelegentlich mit PIC's. Lange Rede kurzer Sinn: Die µC Wechseln schnell, Module kann man immer wieder verwenden.
Zum Aufbauen bin ich noch nicht gekommen. Ich habe aber gerade noch mal nachgeschaut und gesehen, dass Du mit der Diode recht hast. Da müsste ich dann nochmal nach einem anderen Typ suchen, der eine geringere Vf hat. Danke für den Hinweis. fchk
Bastian Schmidt schrieb: > Meint Ihr, dass meine Anforderungen realisierbar sind? Ja, realisierbar aber weltfremd. Deine eingangs genannte Liste ist eher wie eine Zutatenliste, aber sie enthält genau DAS nicht, was ganz am Anfang das Wichtigste ist: ein Ziel. Du planst die Zutaten ohne eine Vorstellung, was für ein Kuchen draus werden soll. Plane lieber nicht so einen Haufen Blech, Bus, Steckverbinder und vergeudeten Leiterplattenplatz. Obendrein sieh zu, daß du dich mit SMD anfreundest. Auch deine stetige Betonung "So wenig SMD wie möglich" ist ebenfalls nicht gut. Deine obigen Vorstellungen laufen auf viel Blech mit wenig Elektronik hinaus - nicht gut. Mein Rat: Denke dir eine wirklich nützliche Anwendung aus, suche dir dann die Bauteile dafür zunächst auf dem Papier zusammen, prüfe die Beschaffbarkeit (korrigiere ggf. dein Vorhaben) und fange dann an, genau DAS zu basteln. Ich geb dir mal ein Beispiel (falls dir nix einfällt): eine Kombination aus Thermometer und Kurzzeitwecker für die Küche, die sich so gut und einfach benutzen läßt, daß deine Frau sie täglich benutzt. Zutaten: - PT1000 als Fühler - monochromes Grafikdisplay um schön große Ziffern anzeigen zu können - Bedienung mit Tasten und Drehgeber zum Einstellen der Weckzeit, der Minimal- und Maximaltemperatur (um das Ding zum Kochtopf-Überwachen nehmen zu können) - Piezo-Pieper - nen fetten Li-Akku, der auch mal 2..3 Tage lang hält, falls man das Ausschalten mal vergessen hat. Sowas ist ein Ausgangspunkt für ein Bastelvorhaben, vergleich das mal mit deinem Ansatz. W.S.
Frank K. schrieb: > Zum Aufbauen bin ich noch nicht gekommen. Ich habe aber gerade noch mal > nachgeschaut und gesehen, dass Du mit der Diode recht hast. Da müsste > ich dann nochmal nach einem anderen Typ suchen, der eine geringere Vf > hat. Ja, oder einen Spannungsregler mit wirklich geringen Spannungsabfall wie z.B. MCP1826S nehmen, wobei der natürlich nicht pin-kompatibel ist... Ich hätte Interesse an dem Entwicklungsboard! Ich hab dir auch schon ne Nachricht geschrieben. Hast du schon welche von den Platinen bestellt?
Martin S. schrieb: > Frank K. schrieb: >> Zum Aufbauen bin ich noch nicht gekommen. Ich habe aber gerade noch mal >> nachgeschaut und gesehen, dass Du mit der Diode recht hast. Da müsste >> ich dann nochmal nach einem anderen Typ suchen, der eine geringere Vf >> hat. > > Ja, oder einen Spannungsregler mit wirklich geringen Spannungsabfall wie > z.B. MCP1826S nehmen, wobei der natürlich nicht pin-kompatibel ist... > > Ich hätte Interesse an dem Entwicklungsboard! Ich hab dir auch schon ne > Nachricht geschrieben. Du solltest die Eagle 6.3 SCH und BRD in Deinem Postfach haben. > Hast du schon welche von den Platinen bestellt? Nein, bislang ist alles noch rein virtuell. Ich hatte noch keine Zeit dafür gehabt. fchk
Frank K. schrieb: > Du solltest die Eagle 6.3 SCH und BRD in Deinem Postfach haben. Ah, danke! Lag im Spam... Noch ein paar Anregungen: -Befestigungslöcher, damit man die Platine auf Füße stellen kann -CAN-Transiever? -bei ner Platinengröße von 100mm x 100mm könnte man 10 Stück günstig aus China bestellen. Ich würde da die Hälfte von nehmen...
W.S. schrieb: > Bastian Schmidt schrieb: >> Meint Ihr, dass meine Anforderungen realisierbar sind? > > Ja, realisierbar aber weltfremd. > Deine eingangs genannte Liste ist eher wie eine Zutatenliste, aber sie > enthält genau DAS nicht, was ganz am Anfang das Wichtigste ist: ein > Ziel. Du planst die Zutaten ohne eine Vorstellung, was für ein Kuchen > draus werden soll. > > Plane lieber nicht so einen Haufen Blech, Bus, Steckverbinder und > vergeudeten Leiterplattenplatz. Obendrein sieh zu, daß du dich mit SMD > anfreundest. Auch deine stetige Betonung "So wenig SMD wie möglich" ist > ebenfalls nicht gut. Deine obigen Vorstellungen laufen auf viel Blech > mit wenig Elektronik hinaus - nicht gut. > > Mein Rat: Denke dir eine wirklich nützliche Anwendung aus, suche dir > dann die Bauteile dafür zunächst auf dem Papier zusammen, prüfe die > Beschaffbarkeit (korrigiere ggf. dein Vorhaben) und fange dann an, genau > DAS zu basteln. > > Ich geb dir mal ein Beispiel (falls dir nix einfällt): > eine Kombination aus Thermometer und Kurzzeitwecker für die Küche, die > sich so gut und einfach benutzen läßt, daß deine Frau sie täglich > benutzt. > Zutaten: > - PT1000 als Fühler > - monochromes Grafikdisplay um schön große Ziffern anzeigen zu können > - Bedienung mit Tasten und Drehgeber zum Einstellen der Weckzeit, der > Minimal- und Maximaltemperatur (um das Ding zum Kochtopf-Überwachen > nehmen zu können) > - Piezo-Pieper > - nen fetten Li-Akku, der auch mal 2..3 Tage lang hält, falls man das > Ausschalten mal vergessen hat. > > Sowas ist ein Ausgangspunkt für ein Bastelvorhaben, vergleich das mal > mit deinem Ansatz. > > W.S. Im Prinzip arbeite ich ja auf ein großes Projekt hin. Ich möchte irgendwann einmal eine art Brandmeldeanlage bauen. Die Rauchmelder sollen via Funk mit einer Zentrale verbunden werden, von der man eben sehen kann welcher Rauchmelder ausgelöst hat... usw. Aber nun brauche ich halt erst mal für meine Ausbildung wie bereits gesagt eine Lernumgebung, wenn das ganze im 19" Rahmen nicht funktioniert, kann ich es immernoch als so ein Bastler Aufbau umbauen. Kann ich denn an jedem Mikrocontroller ein LCD/Grafik LCD/Touchscreen anschließen? Wie schauts mit dem programmieren aus? Kann ich das ganz normal mit MPLAB über USB oder LAN erledigen? Wo finde ich Schaltpläne, wie ich einen Mikrocontroller mit den LAN bzw. USB Ports beschalten muss? Welchen Mikrocontroller würdet ihr mir empfehlen (mit vielen I/O)? Wie muss ich die SD Karte mit dem Mikrocontroller verbinden?
Bastian Schmidt schrieb: > Kann ich denn an jedem Mikrocontroller ein LCD/Grafik LCD/Touchscreen > anschließen? Kommt auf das Display an. > Wie schauts mit dem programmieren aus? Kann ich das ganz > normal mit MPLAB über USB oder LAN erledigen? Du brauchst ein PicKit 3 oder ICD3 und auf Deinem Board den passenden 5/6-Poligen Anschluss dafür. > Wo finde ich Schaltpläne, wie ich einen Mikrocontroller mit den LAN bzw. > USB Ports beschalten muss? Schau Dir die Demoboards von Microchip an. > Welchen Mikrocontroller würdet ihr mir empfehlen (mit vielen I/O)? Die größeren dsPICs der 33E-Serie sind sehr interessant (sieh Dir mein Design an). Davon gibts noch eine 144-pin Variante, falls Dir die Pins auszugehen drohen. Oder den PIC32MX795F512L (100 pins), wenn Du schnelles Ethernet willst. Einen 8-bit PIC empfehle ich Dir nicht mehr. > Wie muss ich die SD Karte mit dem Mikrocontroller verbinden? Über SPI. Schau Dir das entsprechende PicTail+ Board von Microchip an. fchk
Am einfachsten, du lädst dir kostenlose die Microchip Solutions Library runter. Da findest du Libraries und Demos für USB, LAN, SD-Card und vieles andere. Sieht recht unübersichtlich aus. Aber alle Demos sind gleich aufgebaut. Haben eine C-Datei mit dem main() und mehrere HardwareProfile.h für die Microchip Demoboards. Am besten im HardwareProfile.h nachsehen, welche PICs benutzt werden. Nachschauen, welche Features dieser PICs wirklich benötigt werden und einen raussuchen, der alle Features gleichzeitig unterstützt. Oder besser erst mal mit irgendeinem PIC anfangen, der den Pickit3 In-Circut-Debugger unterstützt. Danach mit irgendeinem USB-PIC in die Microchip Solutions Library einarbeiten. Danach erst nach einem PIC suchen, der alle Anforderungen erfüllt.
Bastian Schmidt schrieb: > Im Prinzip arbeite ich ja auf ein großes Projekt hin. Ich möchte > irgendwann einmal eine art Brandmeldeanlage bauen. Ja, aber das muss nicht jetzt sein. Jetzt lernst du erst mal. So ein PIC kostet einen Pappenstiel. Bis du deine Brandmeldeanlage tatsächlich baust, hast du vorher noch viele andere PIC auf Platinen gesetzt. > funktioniert, kann ich es immernoch als so ein Bastler Aufbau umbauen. :-) Das Bastler hab ich jetzt überhört. Im Ernst: So dumm ist der Aufbau nicht. Er ist stabil und man kommt überall mit Messequipment gut ran. Ist ja auch nicht viel. Deine Europakartenplatinen werden hauptsächlich so aussehen: Die sind leer bis auf den Stecker für den Bus, ein einsames IC (mit ein bischen Hühnerfutter) und sonst ist da nichts ehr drauf. Dafür fehlt dir jede Leitung, die du am Bus vergessen hast, irgendwann schmerzlich.
Kein Name schrieb: > Am einfachsten, du lädst dir kostenlose die Microchip Solutions Library > runter. > du meinst doch sicherlich die hier oder? http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en547784 (Microchip Libraries for Applications)
>Diese soll in einem 19" Standardprüfungsrahmen mit >Stromversorgung und Backplane verbaut werden. 1. hättest du wahrscheinlich nicht den passenden Bus, 2. ist ein uC mit dem Treiben von direkten Busleitungen völlig überfordert
Bastian Schmidt schrieb: > Kann ich denn an jedem Mikrocontroller ein LCD/Grafik LCD/Touchscreen > anschließen? Wie schauts mit dem programmieren aus? Kann ich das ganz > normal mit MPLAB über USB oder LAN erledigen? Das sind nach meinem Geschmack ein paar Fragen zuviel auf einmal. Wie stellst du dir das "LCD/Grafik LCD/Touchscreen-Anschließen" eigentlich vor? Denkst du bloß an ein paar Leiterzüge und meinst, das Benutzen kriegen wir später schon hin? Bitte präge es dir doch mal gründlich ein: AM ANFANG IST DIE ZIELSTELLUNG UND DANN DAS KONZEPT ZUM ERREICHEN DES ZIELES UND DANN erst alles andere. Touchscreens hat man üblicherweise erst an etwas größeren Displays, also von QVGA an aufwärts. Ausnahmen sind chinesische MP3-Player. Mit dem Begriff LCD kann man einiges verbinden: passive Gläser (custom oder n mal 7 Segment) oder alphanumerische Displays in 1x16, 1x20, 2x16, 2x20, 4x16, 4x20 (Zeilen/Spalten) oder monochrome Grafikdisplays oder eben bunte Displays, zumeist TFT's. Die Regel ist, daß man für passive Gläser nen entsprechenden uC braucht, alphanumerische fast überall dranbekommt, monochrome grafische eigentlich auch (wenn man im uC genug RAM zum Bildaufbau hat) und bunte TFT's nur mittels Displaycontroller wirklich sinnvoll betreiben kann, wozu dann auch ein 32 Bitter als uC gehört, weil alles Kleinere schon mit QVGA herzlich überfordert ist. Wie programmiert man dies nun? Nun, schau was du überhaupt programmieren willst und was du an Toolchain für den ausersehenen uC dazu kriegst. Danach richtet sich das zumeist. Für das Thema "Software-Problemlösungen" schau dich hier im Forum um. Viele Aufgaben (Tasten entprellen, Konvertierungen, Text und Grafik auf's Display usw.) sind in allen Systemen ziemlich gleich und deshalb wiederverwendbar. Wie man dann den Code in den uC hineinbekommt, hängt wiederum vom uC und den eigenen Umständen ab. Bei dir wahrscheinlich MPLAB und PICKIT-xyz. Muß aber nicht sein, ich z.B. benutze nur die kleineren PIC's, die ich in Assembler und mit eigenem Brenner programmiere. Hab auch ein PicKit-2 herumliegen, aber dafür eigentlich keinen Bedarf, da ich zunehmend auch für kleinere Sachen auf Arm bzw. Cortex umgestiegen bin. So vrschieden kann das sein. W.S.
Eine kleine Zwischenfrage: Was hast du bis jetzt für Erfahrungen mit Mikrocontrollern gemacht? Schon eigene Programme geschrieben? Eigene Hardware gebaut? Elektronik- und Elektrotechnikkenntnisse? Was du als Endprojekt in ein grosses 19"-Rack einbauen möchtest kann man grob geschätzt ohne weiteres auf einer Europakarte unterbringen (die erste Auflistung), also wozu dann gleich ein ganzes Rack? Auserdem haben dir hier schon zig Leute erklährt, dass du klein Anfangen sollst (mit EINEM Ziel). Was bringt es dir, wenn du dir jetzt so ein Kasten zusammenbaust und nach ein paar Erfahrungen und Lehrstunden merkst du, dass der Prozessor vieleicht ein 32bit sei sollte (falsche/fehlende Peripherie, remapping-Funktionen, DMA, priorisierbare ISR...), oder dass du noch ein USB-Stick als Backup brauchst, oder dass du noch eine SMS Funktion einbauen willst, wobei das alles natürlich nicht so ohne weiteres mit deinem Ursprungsprojekt realisierbar ist. Wenn du noch keine Programmiererfahrung hast, kannst du dir für wenige Euro ein fertiges Developement-Board kaufen. Dann musst du dich nähmlich nicht mit Hardware UND Software-Problemen gleichzeitig beschäftigen sondern hast eine HW die funktioniert. Dann kannst du an die HW gehen und schlussendlich alles kombinieren. (Mache ich mit den STM32 momentan genau gleich ->STM32F4 Discovery und so kenne ich schon die Eigenheiten und weiss, worauf ich beim HW-Design achten muss) Das was du momentan möchtest klingt in meinen Ohren ganz nach einer Eierlegenden-Wohlmilchsau.
@Bastian, was an deinem Ansatz "19-Zoll-Einschubsystem mit Backplane" nicht stimmt, ist daß es weit eher zu den Mikroprozessorsystemem der 80er und 90er paßt als zu heutigen Mikrocontrollern (beachte: Prozessor vs. Controller) Letztere haben i.d.R. keinen herausgeführten Bus, an den man seine Erweiterungen anschließt; sondern man sucht sich passend zur Anwendung den Typ, der die gewünschte Peripherie integriert hat. Und wenn doch mal was extern anzuschließen ist, dann ist das vielleicht ein Ethernet PHY oder ein CAN Transceiver und das kommt dann an dezidierte Pins. Einem traditionellen Bus am vergleichbarsten ist vielleicht noch SPI. Aber auch da ist es sehr unüblich, das auf eine Backplane zu führen. Das passende Konzept für heutige µC ist die Arduino-Bauweise, wo man eine vergleichsweise kleine Basisplatine (selten größer als 1/2 Europlatine) hat und darauf "Shields" mit I/O-Erweiterungen aufsteckt. Gerne auch als Stapel: ein Shield leitet dann unbenutzte Ports einfach durch. XL
>Letztere haben i.d.R. keinen herausgeführten Bus.. Stimmt nicht. Alle nennenswerte uC-Familien haben auch Typen mit herausgeführtem Bus (bei dem man ggfs die Adress- Daten-breite usw wählen kann, zum Anschluss universeller Periferie oder RAM, aber nicht für direkt Anschluss auf Backplane. (Ob man das für die konkr Anwendung braucht ist was anderes. Jedenfalls geht es damit zigmal schneller als kleinen ser. Interfac. wie SPI.) >was an deinem Ansatz "19-Zoll-Einschubsystem mit Backplane" nicht >stimmt... Diese gibt es auch heute noch, für grössere Anwendungen, Industrie usw. (Es muss nicht alles immer total klein sein) Und VG-Leisten werden Mrd-fach! verkauft.
Das 19" Format ist nicht abwegig. Such mal bei google Bildersuche nach PXI. So ein ähnliches Konzept schebt mir auch vor. Nur noch universeller. Ein Rapid Prototyping Rack. Basierend auf 19" Technik. Größe sollte 1/2 19" Breite sein. Die Tiefe soll 1/2 Europakarte sein. Also für 100x80mm Platinen. Passende Führungsschienen sind auch zu bekommen. Das Rack soll Hochkant stehen, um bei Leuten mit wenig Arbeitsfläche noch platz auf dem Tisch zu lassen. Weiterer Vorteil: Z.B. Ein LCD Modul könnte platzsparender gebaut werden. Rückseitig gibt es eine DC-Buchse für ein Steckernetzteil und eine USB Buchse, welche direkt zu einem FT232 führt. Hierrüber könnte man eine generelle PC kommunikation ermöglichen und einen Bootloader für die Programmierung bespaßen. Es gibt einen Controllersteckplatz für jeden beliebigen Mikrocontroller mit maximal 8 8-Bit Ports. Spezialschnittstellen sind auf die Frontplatte des Moduls rausgeführt Auf dem "BUS" Connector liegen die Versorgungsspannungen und 4 8-Bit Ports. Die Erweiterungskarten haben eine Stiftleiste, um den Anschluss zum Port flexibel zu halten. "Manuelles Signalmultiplexing" Aufgrund der 1/2 Europakarte sind die Karten recht günstig auch extern zu fertigen. Sinn und zweck: - Rapid Prototyping: Eben schnell die benötigten Karten einstecken und loslegen - Alles zusammen bildet eine Einheit: Das ganze ist schnell mal weggestellt. Für Leute ohne Hobbyraum/Keller (wie mich :-) - Unabhängig vom Controller. PIC, AVR, ST, ... arbeiten alle mit den gleichen I/O Karten - Kosten halten sich in Grenzen durch 1/2 EuroKarte - Power-Module mit größeren Steckern in der Frontplatte sind machanisch stabil. Hier stellen sich natürlich auch die Fragen zur Signalintegrität, Gesamtkosten, Materialbeschaffung, ... Andererseits: Gibts Alternativen? (Arduino klammere ich mal aus, da ein LCD wieder "rumbaumeln" würde oder nur auf dem obersten Level Platz findet) VG! - SE
Warum sollte man nicht ein Mikrocontrollersystem auf Europakarten in einem 19''-Einschubrahmen bauen, wenn der sowieso schon inklusive Netzteil rumsteht? Gehäusekosten gleich Null, Versorgungsspannungen vorhanden, Erweiterung mittels Lochraster mit Anschluss für VG-Leisten möglich, ... Nur weil es alt ist, ist es ja nicht schlecht. Man muss nur aufpassen, dass man für spezielle Signale auch besondere Pins verwendet. Mit Glück ist das ein System mit vollständiger 96-poliger VG-Leiste, dann gibt es mehr als ausreichend Pins. Aber auch bei 64-poligem Anschluss sollte das möglich sein...
Gregor B. schrieb: > Nur weil es alt ist, ist es ja nicht schlecht. Davon redet ja auch keiner. Es ist nur unpraktisch und man zwirbelt sich mehr Arbeit auf als notwendig. Wo andere ganz einfach ein LCD-Modul mit dem Port-Anschluss per gestecktem Flachbandkabel verbinden, den sie für ihr gegenwärtiges Programm gerade brauchen (und der beim nächsten Projekt schon wieder ein ganz anderer Port sein kann), fitzelt man im Rack damit herum irgendwie die Signale auf dem immer gleichen 'Bus' rüberzukriegen und zb mittels Mäuseklavier und Kreuzverteiler die Komponenten auf die gerade benötigte Konfiguration umzukonfigurieren. Das was vor 20 Jahren das komplette Rack (exklusive Stromversorgung) war, das ist heutzutage EIN EINZIGER IC! Den muss man nicht in ein Rack einbauen, nur damit er wo eingebaut ist. Was hilft dir das Rack, wenn du dann jeden 3ten Tag sowieso 60% aller Platinen ausbauen musst, weil du sie umkonfigurieren musst. µC leben davon, dass man die Pins (in Grenzen) universell verwenden kann. Dazu muss man an die Pins rankommen. Dazu muss es eine einfache Möglichkeit geben, wie ich 5 Taster und 12 LEDs EINFACH über die Pins von 4 Ports verteilen kann, sodass mir die UART Ausgänge noch frei bleiben und ich den OCR1A Pin noch zur Motorsteuerung benutzen kann. Der Clou eines guten Entwicklungssystems besteht in der Flexibilität, mit der ich die einzelnen externen Komponenten an beliebige Portpins aufschalten kann. Also das genaue Gegenteil von einem Bus, bei dem eine Leitung genau immer dasselbe Signal führt und sich eine Zusatzkarte genau immer an die gleiche Leitung hängt. Oder willst du auf eine LED Platine einen Kreuzverteiler setzen, damit du für jede der 8 LED per Dip-Schalter bestimmen kannst auf welche der 32 möglichen Portleitungen sie geht? Da sind deine Europakarten hauptsächlich mit der Auswahllogik angefüllt! Für ein konkretes Projekt - zum Beispiel die bewusste Brandmeldeanlage ist das doch alles ok. Da gibt es dann die bewussten Module, weil sich die komplette Belegung nicht mehr ändern wird. Aber doch nicht für ein Entwicklungssystem. Das steht und fällt damit, wie einfach, schnell und nciht zuletzt kostengünstig ich die Hardware auf die Zielstellung hin umkonfigurieren kann. Und - nicht zu vergessen - wie einfach ich mit Messequipment da drann komme! Wie oft taucht hier im Forum die Aufforderung auf, doch mal direkt am µC-Pin irgendwas zu messen? Oft! Wie machst du denn das mit Karten, die in ein Rack eingebaut sind? Ein µC-Entwicklungssystem ist wie ein Steckbrett! Nur auf etwas höherem Niveau. Kein Mensch würde ein Steckbrett in ein Rack-Gehäuse einbauen, nur weil er dann die Stromversorgung schön mit ins Gehäuse integrieren kann.
Gregor B. schrieb: > Warum sollte man nicht ein Mikrocontrollersystem auf Europakarten in > einem 19''-Einschubrahmen bauen, wenn der sowieso schon inklusive > Netzteil rumsteht? Kann man machen, ist aber als Entwicklungsboard sehr unhandlich. 19" ist was für "entwickelte" Eurocards mit denen dann andere Sachen gemacht werden. Auch die Stromversorgung übernimmt das Pickit oder n andres USB Teil und Anwendungen die viele Ports brauchen sind in 19" vom Prinzip her noch unhandlicher da die dann nach hinten verschwinden.
Bernhard T. schrieb: > Ich habe selber noch auf so einem gelernt -MFA System(8086)- Der MFA war Anfang der 90er auch mein Einstieg in die Welt der Daten- und Adreßbusse. :) Allerdings ist der MFA kein 8086 (16 Bit), sondern ein 8085 (8 Bit, Nachfolger des 8080). http://de.wikipedia.org/wiki/Mikrocomputer_f%C3%BCr_Ausbildung
Ich habe mal eine Steuerungsleiterkarte entwickelt, die über LAN ein Testsystem zu steuern vermochte. War ein 19" Rack mit Backplane und verschiedenen Leiterkarten für die unterschiedlichsten Prüfungen. Hatte damals ein fix-fertiges Developmentboard von Olimex verwendet, Adapterplatine dazu designed, wo das Olimex Board aufgesteckt war damits schön brav ins Rack passt. Fertig. Funktionierte prima. Als Denkanstoss kann dir folgendens PIC-Board dienen. Wird deine Anforderungen abdecken können. Wenn du es selber designen willst, steht dir ja der Schaltplan zur Verfügung... https://www.olimex.com/Products/PIC/Development/PIC32-MAXI-WEB/
Patrick B. schrieb: > Wenn du noch keine Programmiererfahrung hast, kannst du dir für wenige > Euro ein fertiges Developement-Board kaufen. Und selbst wenn man (generell) Programmiererfahrug hat, halte ich ein Developer-Board für die passende Lösung, um einen neuen Mikrocontroller bzw. eine neue µC-Familie kennenzulernen. Der Ansatz wie im OP beschrieben ist zwar möglich, verbraucht aber sinnlos Ressourcen. Da ist man zeitlich sowie finanziell besser dran, wenn man das Rad nicht neu erfindet, sondern existierende Lösungen verwendet.
Das schöne an einem MC ist doch gerade, daß man direkt in der Zielschaltung entwickeln kann. Moderne MCs haben dazu ja eine serielle Programmierschnittstelle. Es wäre doch schade, wenn man ein Programm fertig hat und man die Schaltung wieder auseinander reißen muß, weil der MC in einem riesengroßen Rack steckt und nicht auf der Zielschaltung. Peter
>Das was vor 20 Jahren das komplette Rack (exklusive Stromversorgung) >war, das ist heutzutage EIN EINZIGER IC! Ne, nur manchmal. Es gibt immer noch etliche Beispiele, wo ein Racksystem sinnvoll ist (wenn es denn funktioniert, und nicht mal eben so zusammengeschustert wird) zB kann man im Racksystem 20 Einschübe platzieren, mit allem Möglichen drauf (bsp mit je Einschub 64 IOs, oder nur Outs mit Relais oder sonstwas anderes, alles so speziell und individuell, dass es das prinzip. nicht innem uC geben kann, und hat dann die Platinen der 20/21 Karten platzsparend nebeneinander angeordnet. Gut, für CAN, Ethernet, usw braucht man nat keine eigene Karten (mehr). Aber ein Racksystem hat nach wie vor den Vorteil der indiv platzsper. Erweiterbarkeit. Zugegeben, man kann Zusatzkarten auch an andere Busse hängen, die nicht im Rack sind, hat alles Vor-u Nachteile, zum reinen Probieren und Testen wirds wohl eher wenig sinnvoll sein.
Also, erstmal vielen Dank für euere Antworten. Im Endefekt, ist es schließlich meine Entscheidung wie ich vorgehen werde. Und nach langem überlegen bin ich zur Entscheidung gekommen, dass ich das ganze im 19" rack verbaue. Da das ganze dann einfach robuster als so ein fliegender aufbau ist, und mal schnell zur seite geräumt ist. Und wenn ich mal was am Einschub messen möchte, gibt es dafür adapterkarten, die quasi die Euro Karte verlängern. Ihr dürft des weiteren nicht vergessen, dass es mir umso lieber ist, wenn die Europaplatinen nicht total überfüllt sind. Ist für einen Azubi für das erste einfach übersichtlicher. Zunächst werde ich einen 40 Pin Mikrocontroller verbauen und eine I/O Platine. Wenn ich dann noch mehr brauche, werde ich mir einen größeren PIC gönnen und Displays. Wie würdet ihr den PIC programmieren, über USB oder mit dem PIC Kit. Ich dachte da an den PIC 18F4550
Auf jeden Fall PicKit3 - Wer einmal mit dem In-Circut-Debugger entwickelt hat, kann sich nicht mehr vorstellen, wie es mal ohne ging. Nachvolger des 18F4550 gebt es ja nur in SMD. Für 40 Pin DIP und USB bleibt ja nichts anderes übrig.
Wenn der Speicher mit Filesystem für SD-Card + USB + LAN zu knapp wird.... Ein PIC18F47J53 und eine Adapterplatine von Ebay, Benutzer "dipmicro". Die PIC18 sind alle recht ähnlich. Programm später anpassen dürfte schneller gehen, als gleich den optimalen PIC raussuchen.
Kein Name schrieb: > Auf jeden Fall PicKit3 - Wer einmal mit dem In-Circut-Debugger > entwickelt hat, kann sich nicht mehr vorstellen, wie es mal ohne ging. Auf jeden Fall... Bastian Schmidt schrieb: > Im Endefekt, ist es schließlich meine Entscheidung wie ich vorgehen > werde. Und nach langem überlegen bin ich zur Entscheidung gekommen, dass > ich das ganze im 19" rack verbaue. Ja, es ist deine Entscheidung. Der Thenor des algemeinen Rates hier würde dir zwar etwas anderes empfehlen, aber es ist deine Zeit, sind deine Nerven, dein Platz und dein Geld. Ich habe vor 5 Jahren mit Mikrocontrollern angefangen. Damals mit einem Board von umserem Berufsschullehrer HC12 (hatte die Grösse der Euro-Karte). Dann bei Überbetrieblichen Kursen wurde ich mit einem Board von einer andern Firma vertraut (PicBoard), und am Schluss der Berufslehre war noch ein neues Board mit einem ATMega32. Alle waren spartanisch ausgerüstet gewesen (Power über USB, z.T. ein I2C Sensor, ev. ein LCD) aber bei allen waren die Pins nach aussen geführt worden, damit man sie auch als Testumgebung nutzen konnte. Jetzt stehen diese boards bei mir in einer Ecke, weil ich immer den Prozessor in einem Gehäuse nehme, der für ein Projekt gerade passt.
Ich staune ja immer wieder über Leute, die auf einer exotischen oder obsoleten Lösung bestehen, obwohl es bessere Alternativen gibt... ...sind einfach nicht totzukriegen ;-)
Ich finde es prinzipiell gut, wenn Leute ihre Ziele verfolgen, sich eigene und neue Wege suchen. Recht befremdlich erscheint es mir jedoch, wenn scheinbar um Rat gefragt wird, aber die fundierten und begründeten Hinweise und Empfehlungen ignoriert werden. Und nein, es sollte niemand davon abgehalten werden, was neues zu versuchen. Kein Fan von exotischen Sonderlösungen schrieb: > Ich staune ja immer wieder über Leute, die auf einer exotischen oder > obsoleten Lösung bestehen, obwohl es bessere Alternativen gibt... > > ...sind einfach nicht totzukriegen ;-) Genau so wenig totzukriegen wie Leute die versuchen, sich hinter Gast-Accounts verstecken. ;-)
Michael L. schrieb: > Recht befremdlich erscheint es mir jedoch, wenn scheinbar um Rat gefragt > wird, aber die fundierten und begründeten Hinweise und Empfehlungen > ignoriert werden. Mein Reden! Denn dann braucht man in letzter Konsequenz auch nicht um Rat zu fragen, wenn man ihn sowieso nicht annehmen will.
Kein Fan von exotischen Sonderlösungen schrieb: > Ich staune ja immer wieder über Leute, die auf einer exotischen oder > obsoleten Lösung bestehen, obwohl es bessere Alternativen gibt... Immer noch kein Fan von exotischen Sonderlösungen schrieb im Beitrag #2989970: > Denn dann braucht man in letzter Konsequenz auch nicht um Rat zu fragen, > wenn man ihn sowieso nicht annehmen will. und weiter? Ist doch seine Sache und wenn er Spaß daran hat da ganze in 19" reinzupfriemeln und die Teile rumstehen hat was ist daran falsch. Warum nicht ein paar Fotos und Schaltpläne vom fertigen Gerät reinstellen? Diese beleidigte Arie ist sinnlos und das ein fertiges EV-Board käuflich zu erwerben ist wird auch jedem bekannt sein. Die Dinger hab ich übrigens auch schon in 1HE 19" eingebaut und das ganze als Bodenplatte für die Entwicklung benutzt. War ganz nützlich. Den Bus würde ich mit der Intronix Belegung machen, dann kann ich meinen Logic Analyzer gleich draufstecken. Mach ich bei Musterplatinen auch so, geht super. Es gibt sogar n eagle device mit der Intronix Belegung.
> und weiter? Ist doch seine Sache und wenn er Spaß daran hat da ganze in > 19" reinzupfriemeln und die Teile rumstehen hat was ist daran falsch. > > Warum nicht ein paar Fotos und Schaltpläne vom fertigen Gerät > reinstellen? > danke... d.h. du würdest mir empfehlen, einen Bus aufzubauen? Ich hätte jetzt halt einfach die I/O auf die Backplane gelegt. PS: ich habe hier ledeglich gefragt, wie ich das ganze unter den genannten bedingungen realisieren soll.
Bastian Schmidt schrieb: >> und weiter? Ist doch seine Sache und wenn er Spaß daran hat da ganze in >> 19" reinzupfriemeln und die Teile rumstehen hat was ist daran falsch. > > danke... > d.h. du würdest mir empfehlen, einen Bus aufzubauen? Was für einen Bus? > Ich hätte jetzt halt einfach die I/O auf die Backplane gelegt. Ja. Eben. Willst du jetzt ernsthaft einen 40-poligen Käfer ganz allein auf eine Europlatine setzen und lediglich dessen Beine zu einer Steckerleiste verlängern? Und dann daneben eine zweite Platine stecken, um an die verlängerten Beinchen ein paar Taster und LED anzuschließen? Was soll das? Und vor allem: wo soll der Vorteil sein? Jeder normal denkende Mensch hätte den Käfer auf ein Breadboard gesteckt, die LEDs daneben und einfach losgelegt. In der Zeit, die hier (weitgehend sinnlos weil von dir ignoriert) diskutiert wurde, hätte man schon das halbe AVR-Tutorial durcharbeiten können. XL
Bastian Schmidt schrieb: > ich habe hier ledeglich gefragt, wie ich das ganze unter den genannten > bedingungen realisieren soll. Die Bedingungen sind hier aber nicht durch externe Faktoren vorgegeben, die man nicht beeinflussen kann. Manchmal gibt es Vorgaben und Einschränkungen, die man nicht ändern kann. Dann muss man sehen wie man damit zurechtkommt. Ansonsten macht man sich die Dinge natürlich so sinnvoll wie möglich.
>In der Zeit, die hier > (weitgehend sinnlos weil von dir ignoriert) diskutiert wurde, hätte man > schon das halbe AVR-Tutorial durcharbeiten können. Stimmt garnicht, ich habe natrlich die Beiträge verfolgt, jedoch muss ich nicht nach jeder Antwort das gleiche wie zuvor schreiben. Ich weis garnicht was ihr für ein Problem habt? Nur weil ich halt mal ein vernünftiges, robustes System aufbauen möchte. Und worin liegt das Problem, wenn mal eine Platine nicht zu 100% gefüllt ist?!
Bastian Schmidt schrieb: >>In der Zeit, die hier >> (weitgehend sinnlos weil von dir ignoriert) diskutiert wurde, hätte man >> schon das halbe AVR-Tutorial durcharbeiten können. > > Stimmt garnicht, ich habe natrlich die Beiträge verfolgt, jedoch muss > ich nicht nach jeder Antwort das gleiche wie zuvor schreiben. Also irgendwie hast du auch diesen Hinweis gar nicht verstanden. > Ich weis garnicht was ihr für ein Problem habt? Nur weil ich halt mal > ein vernünftiges, robustes System aufbauen möchte. Du weißt gar nicht so viel, wie zu wissen glaubst. > Und worin liegt das Problem, wenn mal eine Platine nicht zu 100% gefüllt > ist?! Es geht überhaupt nicht darum, irgend eine Platine zu 100% zu füllen. Aber du kommst hier her, bindest bereitwillig gewährte Hilfe, um dann her zu treten und zu erklären, dass dir alle Ratschläge sowas von Wuscht sind. Dabei scheinst du aber nicht mal ansatzweise zu begreifen, dass dein "Lernen mit Mikrocontrollern" zum absoluten Nebenziel verkommt! (Wenn du denn schlussendlich überhaupt mal was mit deinem Super-Duper-Ding machen wirst.) Ob's hilft?
Ach Leute... lasst mal gut sein. Bisher ist noch jedes Einsteigerprojekt in der Recycelkiste gelandet. Unsere, weil wir es uns einfacher vorstellen als es ist und Bastians, weil er es sich verwickelter vorstellt. Da kann man nichts gegen machen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.