Hallo, also ich plane ein großes Projekt, um vorerst "spot" und "blöden sprüchen" auf dem Weg zu gehen ersuche ich erstmal nur Infos für die vielen kleinen Projekte die dann zu einem "großen" zusammengeführt werden soll. Vorerst behandel ich eine vernünftige Versorgung und zwei kleine Module. Zur versorgung: Wie bekomme ich 2 vernünftige stabile Versorgungsspannungen? Ich benötige 3,3V und 5V. Ich habe derzeit noch nicht mit 3,3V gearbeitet, da diese aber für eine/mehrere SD Karten seien sollen und ich schon viel bzgl. einer "ordentlichen" Versorgung laß sollte ein Spannungsteiler da wohl nicht die beste möglichkeit sein. Was habt ihr da so für Vorschläge. Zu den 5V, also da könnte ich ja einfach einen 7805 nehmen, klar nur leider benötige ich so 4 - 5A bei 5V. Da gehen die 7805 oder 78S05 in die knie. Wie bekomme ich eine so hohe Spannung auf 5V. Die Eingangsspannung liegt bei 15V DC. SD/USB-Modul: SD ist ja nicht "so" das Problem. Also das Modul sollte Dateien von SD, microSD und USB lesen. Nur wie lese ich "mehrere" SD Karten aus? Also das Modul soll per I2C steuerbar sein. Also man sollte dem z.b. sagen nehme mp3 von SD1 oder SD2 oder USB und "sende" es an den vs1053b. Der ID3 Tag soll dann wiederrum per i2c an das "steuermodul" gegeben werden. Welchen Chip nutze ich da am besten? Möglichst mit USB Host (Mass Storage Class) und einfach zu programmieren oder fertige lib!? Dann soll hierrauf noch ein kleiner "verstärker" das Musiksignal soll dann vom vs1053b über den Verstärker an 2 Chinchausgänge gehen R/L. Wie setzt man das um? Habt ihr da Ideen, Links, Tips? Die Lautstärke soll dann wiederrum per i2c vom "steuermodul" einstellbar sein. Danke euch schonmal für Tips und hinweise. @Moderator: Wäre es möglich beiträge die nicht zum Thema gehören zu entfernen?
Hi Tobias, soll der I2C-bus alle Module verbinden? Wenn ja, verstecke den Bus gut hinter einer API - das macht die Integration der Module einfacher. Viel Spaß!
Bestell doch bei Ebay nen Schaltregler aus Hongkong, gibt keinen Versand und kosten so ungefähr 5 Euros. Eh du dich mit einem Schaltregler-Layout rumquälst ist das eine recht einfache und günstige Alternative. MfG Dennis
Integrator Brunt, FCA schrieb: > Hi Tobias, > > soll der I2C-bus alle Module verbinden? > Wenn ja, verstecke den Bus gut hinter einer API - das macht die > Integration der Module einfacher. > > Viel Spaß! Hi, ja also alle Module sollen hinterher mit einem Mega128 komunizieren. Rein sowie raus. Da muss ich mich nur noch durch die Interruptfunktion vom i2c durchlesen. Weil wenn man dann wieder für jedes Modul eine "CS" Leitung braucht dann muss ich mir was anderes überlegen. Naja, so ein China Schaltregler wäre natürlich was nur muss ich die Versorgungsplatine eh erstellen wegen den Anschlüßen, verpolschutz usw usw. Demnach wollte ich das dann direkt mit einplanen.
Tobias N. schrieb: > Weil wenn man dann wieder für jedes Modul eine "CS" > Leitung braucht dann muss ich mir was anderes überlegen. Brauchst du bei I2C nicht.
Tobias N. schrieb: > Wie bekomme ich 2 vernünftige stabile Versorgungsspannungen? Ich > benötige 3,3V und 5V. Vorschlag: http://www.ti.com/product/lm2678 kann bis zu 5A, Ausgangsspannung je nach Typ einstellbar (-ADJ) oder fest auf 3.3V (-3.3) oder 5.0V (-5.0) eingestellt > SD/USB-Modul: Vorschlag: irgendein mittelgroßer PIC32. Hat genug Leistung, USB2-OTG, und Microchip hat fertige USB-Libs, FAT Filesystem etc etc. Damit kannst und solltest Du auch Dein Steuermodul realisieren, denn der PIC32 sollte genügend Platz dafür haben. Das spart Dir Programmieraufwand und Kommunikationsoverhead und Kosten. Wenn Du mehrere SD-Karten hast, kannst Du Multiplexer zum Umschalten zwischen den einzelnen Karten einsetzen. Empfehlung: Fairchild FST3257. Der hat deutlichst bessere technische Daten als die üblichen 40xx-Analogmultiplexer. Bedenke: Nach dem Umschalten braucht eine SD-Karte einen Power Cycle, aber das kannst Du mit einenm kleinen PNP oder PMOS machen. > Dann soll hierrauf noch ein kleiner "verstärker" das Musiksignal soll > dann vom vs1053b über den Verstärker an 2 Chinchausgänge gehen R/L. Wie > setzt man das um? Habt ihr da Ideen, Links, Tips? Die Lautstärke soll > dann wiederrum per i2c vom "steuermodul" einstellbar sein. Was soll daran angeschlossen werden? Passive Lautsprecher? Wenn ja, mit welcher Impedanz und welcher Leistung? Wenn Du Aktivboxen oder einen Verstärker anschließen willst, kannst Du das direkt am VS1053B machen, genau wie die Lautstärkeregelung. fchk
na die regler sehen doch mal gut aus. und kann sogar beide spannungen. 2 stück davon. schöne versorgungsplatine und gut :) das gefällt mir ja schonmal. wie ist es da mit der kühlung? also ich dachte, da das ganze später in ein gehäuse kommt an kühlkörper plus aktive kühlung mit 2 - 3 lüftern. also von den chinch ausgängen leitungen geht es dann in verstärker. naja direkt anschliessen ist schlecht. hatte ich oben vergessen, also ich brauche 3 ausgänge. R, L und SUB, also halt noch einen lowpass filter auf einen sub out. kann der vs1053b denn auch lautstärke "0" also nichts? und bis zum max. stufenlos regelbar? danke euch auf jeden fall bis jetzt. da kann ich ja fast schon die nä. Module ansprechen :) Wenn ich bei I2C keine "CS" leitungen brauche, woher weiss der master denn dann das ein "slave" daten zum abholen hat? läuft der i2c interrupt auch auf der bus leitung?
Tobias N. schrieb: > Wenn ich bei I2C keine "CS" leitungen brauche, woher weiss der master > denn dann das ein "slave" daten zum abholen hat? läuft der i2c interrupt > auch auf der bus leitung? Indem er ihn Fragt. Auch bei SPI dient die CS Leitung nicht dazu, dass der Slave dem Master irgendwas mitteilt sondern dazu, dass der Master dem Slave sagt :" Achtung, das was jetzt kommt ist für dich" I2C Arbeit mit Adressen, schau mal hier ins Wiki, da ist das erklärt. http://www.mikrocontroller.net/articles/I2C
ja, das ist mir schon klar. ich habe auch schon des öfteren mit i2c gearbeitet. nur laß ich auch das es i2c auch auf "interruptbasis" aufgebaut werden kann, also der slave dem master sagt : hallo, master, ich habe da was für dich zum abholen. bei meinem display ist das z.b. so (EDIPTFT70-A). Wenn man da das Touch bedient dann gibt das die Koordinaten per i2c raus. Vorher aber sagt es dem Master über eine "interrupt leitung" die man natürlich frei am ic wählen kann das das Display (Slave) daten zum abholen bereit hat. Im Code läuft das dann halt eben so, wenn interrupt auf "cs leitung" vom Display dann hat das display daten zum holen und dann werden diese abgefragt. wenn man natürlich dann "selber" eine dritte leitung als interrupt leitung machen muss um das so umzusetzen dann wohl eher die variante in einer schleife immer wieder die slaves abfragen.
Tobias N. schrieb: > ja, das ist mir schon klar. ich habe auch schon des öfteren mit i2c > gearbeitet. nur laß ich auch das es i2c auch auf "interruptbasis" > aufgebaut werden kann, also der slave dem master sagt : hallo, master, > ich habe da was für dich zum abholen. bei meinem display ist das z.b. so > (EDIPTFT70-A). Wenn man da das Touch bedient dann gibt das die > Koordinaten per i2c raus. Vorher aber sagt es dem Master über eine > "interrupt leitung" die man natürlich frei am ic wählen kann das das > Display (Slave) daten zum abholen bereit hat. Im Code läuft das dann > halt eben so, wenn interrupt auf "cs leitung" vom Display dann hat das > display daten zum holen und dann werden diese abgefragt. > > wenn man natürlich dann "selber" eine dritte leitung als interrupt > leitung machen muss um das so umzusetzen dann wohl eher die variante in > einer schleife immer wieder die slaves abfragen. Warum nennst du die dann cs Leitung? Sowas wie Interrupt Request wäre angebracht. Das ist nichts was etwas mit I2C zu tun hat sondern nur eine extra Leitung über die der Slave halt einen Interrupt anfordern kann (ob er ihn dann kriegt ist ja nochmal ne andere Sache). Die Datenübertragung kann doch dann irgendwie erfolgen, ob I2C, SPI, was paralleles oder irgendwas anderes. Mach dir mal ein bisschen mehr gedanken über das Master/Slave Prinzip. Die Slaves halten ihr Maul bis der Master sie fragt. Manche Slaves können den Master auch bitten sie zu fragen, muss der Master dann aber trotzdem nicht :)
ja aber sowas in der art meinte ich halt. ok also die "normale" variante und nur da wo "dringlichkeit" erforderlich ist, also bei änderungen am slave die unverzüglich an den master müssen werde ich dann nur solch eine "abfrageleitung" einplanen um pins zu sparen. naja halt per ISR sobald daten zum abholen da sind sofort abfragen und dann weiter im code.
Tobias N. schrieb: > Diesen Beitrag bewerten: > ▲ lesenswert > > ▼ nicht lesenswert > > > > ja aber sowas in der art meinte ich halt. ok also die "normale" variante > und nur da wo "dringlichkeit" erforderlich ist, also bei änderungen am > slave die unverzüglich an den master müssen werde ich dann nur solch > eine "abfrageleitung" einplanen um pins zu sparen. naja halt per ISR > sobald daten zum abholen da sind sofort abfragen und dann weiter im > code. Hast du dir schon Gedanken über die Datenmenge gemacht die du hin und her schieben möchtest/musst? I2C ist nicht sooo schnell.
Tobias N. schrieb: > na die regler sehen doch mal gut aus. und kann sogar beide spannungen. 2 > stück davon. schöne versorgungsplatine und gut :) das gefällt mir ja > schonmal. > > wie ist es da mit der kühlung? also ich dachte, da das ganze später in > ein gehäuse kommt an kühlkörper plus aktive kühlung mit 2 - 3 lüftern. Aktive Kühlung brauchst/willst Du nicht. Ordentliche Kühlkörper reichen. > also von den chinch ausgängen leitungen geht es dann in verstärker. naja > direkt anschliessen ist schlecht. hatte ich oben vergessen, also ich > brauche 3 ausgänge. R, L und SUB, also halt noch einen lowpass filter > auf einen sub out. ja, gut, dann nimmst Du halt einen 4-fach OpAmp wie z.B. MCP6024, da kannst Du Dir ja Deinen Tiefpass draus basteln. > kann der vs1053b denn auch lautstärke "0" also nichts? und bis zum max. > stufenlos regelbar? Wie wärs, wenn Du mal das Datenblatt liest? Und stufenlos ist ohnehin nicht drin, wenn Du das digital steuerst. Du weißt ja, Digital ist das mit den 0 und 1. fchk
naja, also bei dem "audio modul" z.b. sind es einmal die Daten auf den karten, aber halt nur die dateinamen, also eine liste der dateien die drauf sind. dann halt wenn ein lied läuft den ID3 Tag, also Artist und Titel. und dann halt die steuerung, also spiele dies oder das oder jenes und halt lauter/leiser, start/stop. ich denke das wird nicht "so viel" sein. dann halt ein paar daten vom temperatur modul, 2 - 3 temperaturen. ein paar adc daten, also halt nur "zahlen". den rest übernimmt ja dann der master. beim adc somit also nur die adc werte. den rest macht dann der master. also "hauptsächlich" aufbereitete daten mit denen der master dann direkt arbeiten kann.
Frank K. schrieb: > Tobias N. schrieb: >> na die regler sehen doch mal gut aus. und kann sogar beide spannungen. 2 >> stück davon. schöne versorgungsplatine und gut :) das gefällt mir ja >> schonmal. >> >> wie ist es da mit der kühlung? also ich dachte, da das ganze später in >> ein gehäuse kommt an kühlkörper plus aktive kühlung mit 2 - 3 lüftern. > > Aktive Kühlung brauchst/willst Du nicht. Ordentliche Kühlkörper reichen. ok, also ausreichende Kühlkörper und gut. > >> also von den chinch ausgängen leitungen geht es dann in verstärker. naja >> direkt anschliessen ist schlecht. hatte ich oben vergessen, also ich >> brauche 3 ausgänge. R, L und SUB, also halt noch einen lowpass filter >> auf einen sub out. > > ja, gut, dann nimmst Du halt einen 4-fach OpAmp wie z.B. MCP6024, da > kannst Du Dir ja Deinen Tiefpass draus basteln. > ok, und wieder ein bauteil kennengelernt :) nachher mal ansehen. >> kann der vs1053b denn auch lautstärke "0" also nichts? und bis zum max. >> stufenlos regelbar? > > Wie wärs, wenn Du mal das Datenblatt liest? Und stufenlos ist ohnehin > nicht drin, wenn Du das digital steuerst. Du weißt ja, Digital ist das > mit den 0 und 1. > > fchk hhmm.. ok, wie machen das denn dann die tollen verstärker ala "Harman Kardon" oder "Elac". Die können ja auch eine "kein Ton" ausgabe. Naja wenn es "ganz ganz" leise geht reicht es ja auch schon. Ja das mit den 0 und 1 ist mir schon klar g. Ne das Datenblatt sehe ich mir nachher beim Schaltplan zeichnen genauer an. Zu dem SD / USB. Also eskommen nur 3 Anschlüße dran. 1 USB, 1 SD, 1 microSD. Es wäre toll wenn alle auch "gleichzeitig" einlesbar wären.
Wie gesagt: pass auf, was Du da machst. Du wirst deutlich weniger Arbeit haben, wenn Du die Anzahl Deiner Controller und Module minimierst. Der PIC32 kann problemlos die Arbeit Deines AVR mit erledigen, das macht dem gar nichts aus. Ein Modul weniger, ein Haufen Arbeit weniger. Analoge Eingänge hat der PIC32 auch, wenn Du keine besonderen Ansprüche stellst, sollte das auch reichen. Temperaturen - gut, 1-Wire ist ja nicht das Ding, oder halt MCP9700A (die geben 10mV pro °K aus, das kannst Du nachher schön einfach umrechnen, und die Routinen für den ADC brauchst Du sowieso, da sind die analogen Temperatursensoren kein Extraaufwand mehr) Displayansteuerung? Auch kein Thema, kann der PIC32 auch alles mitmachen. Wie gesagt, je weniger Kommunikation, desto weniger Arbeit und desto weniger Fehlerquellen. Zum PIC32: schau Dir den PIC32MX575F512H(64 pins) bzw L(100 pins) an. 80 MHz, 512k Flash, 64k RAM, 4 SPI (2*SD, 1*VS1053B, 1*?), USB2.0 Full Speed OTG, 16*Analog in 10 Bit. Sollte wohl dicke ausreichen, so dass Du keinen zweiten Controller brauchst. fchk
adc ist halt nur ein wenig volt messen und ein paar fotowiderstände, also nichts gravierendes. temp sensoren sind ds18S20, also onewire, auch nichts wildes. Das Display wird wahlweise über I2C, SPI oder RS232 oder RS485? angesprochen. Also auch wenige Leitungen. Da ich mit AVRs bisher immer ganz gut klar kam und diese auch relativ gut und einfach programmieren kann sollte es "eigentlich" bei denen bleiben. Einzelne Module sollten es aber, egal mit welchem "Master" sein.
Mach was Du willst. Ich habe hier schon viele Anfänger gesehen, die mit 5 und mehr kleinen AVRs rumhantiert haben, wo ein vernünftig dimensionierter, großer Controller sinnvoller gewesen wäre. Das Debugging wird sonst nämlich alles andere an trivial, und zu einem ICSP/JTAG/PDI-Debugger (PicKit 3, JTAG Ice 3 oder sowas) wird dann nämlich ganz schnell auch ein guter Logicanalyzer fällig, weil mitten im Projekt unerwartete Dinge auf dem Kommunikationsbus passieren. Es muss nicht unbedingt PIC32 sein. Da weiß ich nur, dass Du damit auf jeden Fall ohne Klimmzüge zum Ziel kommst, auch wenn Dein Code nicht optimal sein sollte. Wenn Du meinst, mit irgendeinem ARM oder AVR32 besser zurecht zu kommen, dann bitte. Da kann ich Dir dann aber keine Hilfe mehr geben. Bei AVR und USB-Host wäre der AT90USB1287 (im Prinzip ein Mega128 mit USB) Dein Weg. Ob das dann am Schluss auch bei hohen MP3-Bitraten oder gar WAV und selbst bei starker Fragmentierung des FAT-Filesystems auf dem USB-Stick noch schnell genug ist, weiß ich nicht. Dieser Controller hat ja auch kaum RAM zum Zwischenspeichern. Mit 64 oder 128k RAM und einem DMA-Controller kannst Du da ganz anders hantieren als mit 4k. Wie gesagt, das ist nur meine persönliche Meinung. Auf die Nase fallen musst Du selber. fchk
Naja, so war das jetzt auch nicht gemeint. Ich komme halt sehr gut bisher mit AVRs klar und konnte da bisher alles realisieren. Vielleicht wäre hier wirklich ein anderer Chip besser. Allerdings kommt "so etwas" nicht oft vor. Also für weitere/bisherige Projekte war ein AVR immer ausreichend, für mich jedenfalls. Also mich jetzt wegen einer Sache neu einarbeiten? Also würdest du jetzt sagen, ein PIC ist genau so einfach zu programmieren und der nimmt genau so ein schlechtes C wie ich es schreibe, dann würde ich sofort luftspringe machen und sagen, ok, ich nehme einen PIC. :)
Tobias N. schrieb: > Naja, so war das jetzt auch nicht gemeint. Ich komme halt sehr gut > bisher mit AVRs klar und konnte da bisher alles realisieren. Vielleicht > wäre hier wirklich ein anderer Chip besser. Allerdings kommt "so etwas" > nicht oft vor. Also für weitere/bisherige Projekte war ein AVR immer > ausreichend, für mich jedenfalls. Also mich jetzt wegen einer Sache neu > einarbeiten? Warum nicht? Vielleicht gefällt es Dir ja? Und Du hast dann einfach mehr Auswahlmöglichkeiten und kannst beim übernächsten Projekt, wo Du einen CAN-Bus braucht, sagen "Ah, da gibts einen passenen PIC mit eingebautem CAN, da brauche ich keinen extra CAN-Controller wie beim äquivalenten AVR". Ethernet: das gleiche. Oder mal Stereo Out mit einem dsPIC33FJ128MC804 (der hat nämlich analog Stereo Audio out 14 bit). Ich habe auch einfach mal ein Projekt mit MSP430 gemacht, wo ich fand, dass der gepasst hat. Dümmer wird man dadurch nicht. Letztendlich ist der Programmer/Debugger das einzige, was bei einer neuen Plattform Geld kostet, und das hält sich ja meistens in Grenzen. Gut, mein AVR JTAG ICE mkII war schmerzhaft teuer (damals fast 400€), aber das war auch die Ausnahme. Ein PicKIT3 kostet 50€ als Original, 20-30€ als Clone, und die ARM JTAG-Adapter liegen auch bei 20 bis 100€, je nach Hersteller und Software-Support. > Also würdest du jetzt sagen, ein PIC ist genau so einfach zu > programmieren und der nimmt genau so ein schlechtes C wie ich es > schreibe, dann würde ich sofort luftspringe machen und sagen, ok, ich > nehme einen PIC. :) Ja, das ist überall mehr oder weniger das gleiche C. DDRA heißt nun TRISA und hat die umgekehrte Polarität (0=o wie Output; 1=i wie Input), RESET heißt nun MCLR, aber vom Prinzip ist das überall das Gleiche, egal, obs jetzt ARM oder MIPS oder 68000 oder was auch immer ist. Jede Plattform hat ihre netten Seiten und ihre Ärgernisse. Ich habe anno 1983 etwa ein halbes Jahr (vielleicht auch etwas mehr) gebraucht, bis ich Z80 Assembler konnte (und zwar so weit, dass ich im Kopf assembliert habe und nur noch hex codes in die Maschine reingetippt habe - nur bei den Sprüngen hab ich mich öfters verrechnet). Der nächste Prozessor 6502 hat dann nur noch 6 Wochen gebraucht, dann war ich da auf dem gleichen Stand (wobei der zugegeben deutlich einfacher war). Wenn Du schon einen neueren JTAG ICE mkII (der mit PDI Support, ich habe noch die allererste Version, die das noch nicht kann) oder einen JTAG ICE 3 oder Dragon hast, dann wäre AVR32 für Dich kostensparender, aber da soll Dich dann jemand anderes beraten. PS: schau mal hier: http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en551513 Ich habe das nicht ausprobiert, aber es scheint so, als wäre der PIC32 schnell genug für MP3 in Software. Kannst Dir ja mal anschauen. fchk
Tobias N. schrieb: > Wie bekomme ich 2 vernünftige stabile Versorgungsspannungen? Ich > > benötige 3,3V und 5V Ich würde ja einen zweikanaligen Controller wie den Semtech SC2442 benutzen. Man muss dafür zwar ein bisschen mehr rechnen und mehr Bauteile drumherum bauen, dafür hat er nur Vorteile: - Ansteuerung Out-of-Phase, d.h. wenn bei Kanal 1 der High-Side-Transistor an ist, ist er bei Kanal 2 aus. Das stellt sicher, dass die Kondensatorbank nicht die Pulsströme von beiden Kanälen gleichzeitig sieht. Führt zu geringerer Belastung der Kondensatoren. - Strom ist mit Aussuchen, hängt nur von den verwendeten MOSFETs und Drosseln ab, der Treiber kann mit seinem Ausgangsstrom von 1A auch große MOSFETs treiben. - Überstromabschaltung für jeden Kanal getrennt und vor allem einstellbar über Widerstand in der High-Side - Einstellbarer Soft-Start, getrennt für beide Kanäle - Frequenz einstellbar von 100kHz bis 1MHz, kannst also wählen zwischen optimiert für geringe EMV oder kleine Bauteile Dafür muss man die MOSFETs auswählen, den Fehlerverstärker extern beschalten, ... Gibt dafür aber sämtliche Formeln im Datenblatt.
Also ich habe mir jetzt mal die ARM Programmierung angesehen. Also so ein großer Unterschied, laut dem Tutorial hier ist das garnicht. Da ich ja nur Hauptsächtlich I/O, ADC sowie I²C nutze. Ich denke dann wird es doch ein "dicker" ARM. So ein 1 Ghz teil oder sowas. Mal lesen.
Tobias N. schrieb: > Ich denke dann wird es doch ein "dicker" ARM. So ein 1 Ghz teil oder > sowas. Aha. Soso.
Tobias N. schrieb: > Ich denke dann wird es doch ein "dicker" ARM. So ein 1 Ghz teil oder > sowas. Den wirst Du löttechnisch nicht verarbeiten können. Einen PIC32 auf einer selbstgemachten Platine zum Laufen zu bringen ist hingegen kein Problem. fchk
hier im chat wurde mir einer gezeigt auf einer platine mit buchsenleisten rechts und links im rm2,54 maß. also der lässt sich ja dann auf stiftleisten aufstecken.
Tobias N. schrieb: > hier im chat wurde mir einer gezeigt auf einer platine mit > buchsenleisten rechts und links im rm2,54 maß. also der lässt sich ja > dann auf stiftleisten aufstecken. Und welche Vorteile erhoffst du dir davon so ein Teil zu benutzen? Wofür brauchst du die Rechenleistung?
ich muss 3 videosignale gleichzeitig verarbeiten, dazu noch einige adc werte und 4 displays, sd karten, musik, verstärker, 40 - 50 i/o signale, drehzahlmessung, spannungsmessungen, sim karte und gps anbindung und und und. wollte das auf mehrere stückeln aber nunja, die gurus da rieten mir halt zu einem richtigen ich da dann auch noch genug reserven haben werde.
>ich muss 3 videosignale gleichzeitig verarbeiten
Das wird soch sowieso nix;)
Tobias N. schrieb: > Also ich habe mir jetzt mal die ARM Programmierung angesehen. Also so > ein großer Unterschied, laut dem Tutorial hier ist das garnicht. Tobias N. schrieb: > Ich denke dann wird es doch ein "dicker" ARM. So ein 1 Ghz teil oder > sowas. Dann hast Du das bestimmt nicht richtig verstanden. ARM heisst vieles. ARM selbst unterscheidet neuerdings drei Familien: 1. Cortex-M: Das sind die, von denen Du hier am meisten hörst. M steht für Microcontroller, d.h. die haben On-Chip-Flash und -RAM und funktionieren im Prinzip genauso wie der AVR, nur haben sie halt einen 32-Bit-Kern. Beispiele sind der STM32F, die Kinetis-Reihe, die NXP LPC11/13/... usw. 2. Cortex-R: R steht für Real-Time, das sind Contoller für harte Echtzeitanforderungen. Findest Du kaum auf dem Markt, Spezial-ICs wie z.B. Festplatten-Controller haben diesen Kern. 3. Cortex-A: A steht für Application Processor. Das sind die neuen Dickschiffe mit mehreren hundert MHz bis zu mehr als 1GHz Taktfrequenz. Die sitzen dann z.B. in Deinem Smartphone. Die haben keinen Speicher On-Chip, da Flash viel zu langsam wäre und die Anwendungen auch extrem Speicher fressen. Da musst Du also alles draußen anschließen. Damit unterscheiden sie sich grundsätzlich von den Mikrocontrollern. Alle Boards mit einem Chip dieser Größenordnung setzen dabei auf ein Betriebssystem - Beispiel Raspberry Pi (gut, das ist kein Cortex-A sondern der Vorläufer, ein ARM11), das BeagleBoard, das Olimexino A10,... Softwareentwicklung auf diesen Boards entspricht also nicht mehr der Entwicklung mit Mikrocontrollern, sondern der Programmierung von PC-Anwendungen.
Tobias N. schrieb: > ich muss 3 videosignale gleichzeitig verarbeiten, dazu noch einige adc > werte und 4 displays Jaja, bau dir nur deinen GHz ARM A8 oder so auf ein Board, und fuer die eigentliche Steuerung nimmst du dann noch nen Spartan6, weil 3 Videosignale verarbeiten (zumindest vernuenftig) packt auch der ARM nicht.
Die Anzahl der Videosignale ist doch fast egal auf die Pixel/Sekunde kommt's an! QVGA != WHUXGA
Jetzt ist das soweit. Er bastelt sich aus seinem Nissan ein UFO. Mit MP3-Spieler und Rückfahrkamera. Zeig' doch 'mal die Ergebnisse Deiner bisherigen Bemühungen...
Tobias N. schrieb: > ich muss 3 videosignale gleichzeitig verarbeiten, dazu noch einige adc > werte und 4 displays, sd karten, musik, verstärker, 40 - 50 i/o signale, > drehzahlmessung, spannungsmessungen, sim karte und gps anbindung und und > und. wollte das auf mehrere stückeln aber nunja, die gurus da rieten mir > halt zu einem richtigen ich da dann auch noch genug reserven haben > werde. Den Gurus hast Du aber auch nur die halbe Wahrheit gesagt. Du hast Doch sicher ein vollständiges Lastenheft. Das wäre interessant, um Dir effektiv helfen zu können. Wenn Du kein vollständiges Lastenheft hast, wäre genau jetzt der richtige Zeitpunkt, um eines zu schreiben. fchk
Nunja, also : 2 Taster auswerten (externe Pullups) 2 Schalter auswerter (mittels ADC, 5V und 0V wird geschaltet (spannungsteiler)) 8 Temperaturen messen (DS18S20) 3 Kameras auswerten (eingeschaltet oder nicht) 3 Kameras schalten (auf diverse Monis (relais)) GPS Koordinaten einlesen SIM Karte ansteuern (SMS Ein/Ausgang) Touch Display mittels I²C ansteuern SD Karte auslesen microSD auslesen vs1053b ansteuern Vorverstärker steuern 4 PWMs steuern (zeitgleich) 3 Drehzahlmessungen mittels Interrupt Digitale Uhr (per Funk) diverse Spannungmessungen (etwa 28 Stück) diverse I/O Pins (mittels Jumper auf pull- up/dowm setzbar) Alles auf dem Touchpanel ansteuer und per Menü einstellbar.
Tobias N. schrieb: > 2 Taster auswerten (externe Pullups) > 2 Schalter auswerter (mittels ADC, 5V und 0V wird geschaltet > (spannungsteiler)) bitte erläutern, warum ADC und nicht per Komparator oder Schmitt-Trigger (zB 74LVC14) > 8 Temperaturen messen (DS18S20) > 3 Kameras auswerten (eingeschaltet oder nicht) wie auswerten? durch Strommessung an den Stromversorgungen? durch Detektion der Synchronimpulse auf den Signalleitungen? Sonst muss nichts mit dem Bildsignal gemacht werden? > 3 Kameras schalten (auf diverse Monis (relais)) > GPS Koordinaten einlesen NMEA-Format mit 4800bps, nehme ich an oder > SIM Karte ansteuern (SMS Ein/Ausgang) Ich denke, Du meinst ein seriell angeschlossenes GSM-Modem. > Touch Display mittels I²C ansteuern eines? > SD Karte auslesen > microSD auslesen je eine? > vs1053b ansteuern einen? > Vorverstärker steuern wieso? Lautstärke kannst Du über den vs1053b steuern. Auch auf ganz aus und für links und rechts getrennt. Hat mich 30s gekostet, um das im Datenblatt zu finden. > 4 PWMs steuern (zeitgleich) > 3 Drehzahlmessungen mittels Interrupt > Digitale Uhr (per Funk) > diverse Spannungmessungen (etwa 28 Stück) Auflösung? Abtastraten? > diverse I/O Pins (mittels Jumper auf pull- up/dowm setzbar) zeitkritisch? > Alles auf dem Touchpanel ansteuer und per Menü einstellbar. Was war mit USB Host für einen USB-Stick? Ist das nicht mehr drin? Ist das jetzt wirklich alles? Im Wesentlichen sind das jetzt ein Haufen digitaler IO, drei serielle Schnittstellen (GPS, GSM, 1-Wire), drei SPI (SD, µSD, VS1053b) und eine Anzahl externer AD-Wandler über I2C oder einen vierten SPI. Nichts, was furchtbar viel Rechenleistung braucht. Ein PIC32 oder AVR32 oder Cortex M3/M4 sollte das problemlos schaffen. fchk
Oh weia ... http://de.wikipedia.org/wiki/Lastenheft Was Du geschrieben hast, ist von einem Lastenheft weit entfernt. Du musst beschreiben, was passieren soll, nicht was Du Dir vorstellst, was getan werden muß. Wenn ich Dein 'Lastenheft' bekommen würde, würde ich bei Deinem ersten Punkt '2 Taster auswerten (externe Pullups)' die Pullups für die daran angeschlossenen Taster setzen und hin und wieder die Ports abfragen. - Punkt erledigt, eine weitere Funktion wurde nicht spezifiziert. Die folgenden Punkte werden eigentlich nur noch schlimmer ... Du musst beschreiben, was das Ding können muß. Also was passieren soll, wenn Du auf die Taster drückst. Und dabei solltest Du keine unsinnigen Anforderungen stellen wie z.B. Schalter per ADC abfragen zu müssen. Das Lastenheft beschreibt also grob die Anforderung aus Bedienersicht plus Information über die Gegebenheiten. Gruß Jobst
Frank K. schrieb: > Ein PIC32 oder AVR32 oder Cortex > M3/M4 sollte das problemlos schaffen. http://www.ti.com/tool/ek-tm4c123gxl Gefällt mir gut.
ich habe jetzt mal ein rtf file angehangen. ich hoffe sowas ist gemeint. da fehlen noch ein paar punkte aber diese sind auch noch nicht sicher. demnach lasse ich die erstmal weg da ich noch nicht weiss in wie weit die anderen dinge nun sinn machen oder nicht. daher erstmal nur die punkte die auch zu 100% dran kommen.
Zu Deinen Schaltern am ADC: So wirds besser gemacht. Links sind Deine Schalter mit Mittelstellung. In Mittelstellung sorgen die Widerstände R1/R3 und R2/R4 dafür, dass VCC/2 anliegt. Die Spannungteiler können über die Schalter gebrückt werden, um VCC oder GND auszugeben. Rechts siehst Du OpAmps, die hier als Vergleicher benutzt werden. Je nachdem, ob die Spannung zwischen + und - Eingang positiv oder negativ ist, gibt er VCC oder GND aus. Die Vergleichsspannungen werden durch die Widerstände R5-R7 eingestellt und ergeben VCC/3 und 2VCC/3. Damit hast Du folgende Möglichkeiten: Vin < 1/3 VCC: OutA=0 OutB=0 1/3 VCC < Vin < 2/3 VCC: OutA=0 OutB=1 Vin > 2/3 VCC: OutA=1 OutB=1 Das kannst Du problemlos mit digitalen Inputs abfragen. Im Lastenheft (das ich lieber Anforderungsspezifikation nenne, weil ich das klarer finde) nennst Du normalerweise keine Lösungswege, es sei denn der Lösungsweg ist aus irgendeinem Grund Teil der Anforderung. Den Grund siehst Du oben. fchk
Frank K. schrieb: > Zu Deinen Schaltern am ADC: So wirds besser gemacht. Bei den Schaltern stellt sich mir die Frage, ob die schon so mit Vcc und GND verbunden sind bzw. verbunden sein müssen oder ob er das gerne so möchte. Denn die Mittenkontakte an GND zu legen und jeweils die beiden anderen Enden abzufragen wäre für mich die weitaus elegantere Methode. Und: Das ist immernoch kein Lastenheft. Wozu soll z.B. ein Transistor geschaltet werden? Einfach so? Dem Bediener ist völlig wumpe, ob irgendwo ein Transistor eingeschaltet wird oder ob ein ADC-Eingang bei drücken eines Tasters benutzt wird. Du schränkst nur die Möglichkeiten sinnlos ein, ohne jedoch zu sagen, was eigentlich passieren soll. Das ist so wie: "Ich möchte eine Lichtquelle mit einem Kondensator feststellen." Gruß Jobst
Jobst M. schrieb: > ... > Und: Das ist immernoch kein Lastenheft. > ... > Das ist so wie: "Ich möchte eine > Lichtquelle mit einem Kondensator feststellen." > ... Schau' Dir die anderen Beiträge an, Plan- und konzeptloser Megaloismus... Nicht laufen können, aber wie Fred Astair tanzend den Mt. Everest bezwingen wollen.
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.