Hallo Leute, Ich bin eher in der allgemeinen Elektrotechnik angesiedelt und brauche daher für diesen Datenlogger umbedingt eure Tipps ;) Ich möchte 2 analoge Messsignale mit einer Samplerate von je mindestens 100Sps (optimal: 1kSps) und einer Auflösung von 12Bit ADC messen, und auf einer SD Karte speichern. Der Datenlogger selbst sollte mit einer Batterie versorgt werden und die Daten der SD Karte auf einem PC ausgewertet werden. Ich habe mich schon Stundenlang (eigentlich Tagelang) auf der Homepage von Atmel herumgetrieben, aber nichts passendes gefunden. Den ATmega32 gibt es fertig am Board, hat aber nur 10-Bit und ich weis nicht, ob jedes ATmega 2Bit Oversampling schafft. Leider finde ich auch keinen Vertrieb für diese Boards. Der ATxmega hätte 12-Bits, aber leider finde ich dazu kein Board? Ein weiteres Problem ist, dass ich für die Microcontroller-Programmierung und SMD Löten nicht ausgestattet bin und keine Ahnung habe, wie ich einen Microcontroller Programmieren sollte. (Grundlagenkurs für C++ war gratis und um sonst!) Kann mir jemand helfen, mit welchen Bauteilen ich dieses Projekt fertigstellen kann, wo ich diese Bestellen kann und wo ich eventuell Vorlagen zur Programmierung finde. Danke im Vorraus, Christoph
Hallo, 12-Bit ADCs gibts z.B. in aktuellen ARM-Controllern (LPC17xx, STM32). Zudem gibts die auch auf fertigen Platinen mit Programmer/Debugger. Wenns Hardwaremaessig ganz einfach sein soll einfach so ein Starterkit besorgen. Mit ein bisschen suchen findest du da genug dazu. Das Programmieren wird aber wohl keine leichte Aufgabe wenn du davon keine Ahnung hast. Alternativ, wenns unbedingt ein AVR sein soll muesstest du hald auf einen externen ADC setzen. Gruss Christoph
Christoph S. schrieb: > Alternativ, wenns unbedingt ein AVR sein soll muesstest du hald auf > einen externen ADC setzen. Die neuen (USB) Atxmegas haben nun (nicht verbugte) 12bit ADCs.
Ich habe gehört, dass es für AVR Controller Programmvorlagen gibt, deshalb wären mir diese lieber. Wie heißen die Boards eigentlich, wenn die Controller fix drauf sind und man nurmehr ein Programm draufschreiben sollte? Kann man bei jedem uC einen externen ADC mit einer serielle Schnittstelle verbinden?
avr schrieb: > Die neuen (USB) Atxmegas haben nun (nicht verbugte) 12bit ADCs USB Atxmega -> kann man diese NUR mit USB Verbindung zum PC in Betrieb haben? Was heißt verbugt?
Christoph S schrieb: > Kann man bei jedem uC einen externen ADC mit einer serielle > Schnittstelle verbinden? Mehr oder weniger schon. Der Punkt ist die Betriebsspannung. Wenn der ADC und der µC mit der gleichen Spannung arbeiten geht das, sonst ist ein Pegelwandler erforderlich (geht aber auch). Die Frage nach der Hardware ist nicht ganz einfach allgemein zu beantworte. Was hast du damit vor und wofür soll es verwendet werden? Ist es für die einmalige Verwendung im Hobbybereich, oder soll ein Serienprodukt daraus werden? Soll es einfach nur irgendwie funktionieren, oder soll es eine ausbaufähige Lösung mit Potenzial nach oben sein? Gruß Kai
Weder als einmalige Verwendung, noch zur Serienproduktion. Ich möchte damit die Reibungskraft von Skiern messen. Der Kraftaufnehmer, Verstärker und ein elektrischer Filter funktionieren einwandfrei. Jetzt möchte ich die Werte allerdings während der Fahrt messen und speichern, um sie danach auswerten zu können. Die Übertragung von ASCII oder String in ein schönes Programm bekomm ich auch mit Labview hin. Das Problem ist also, wie ich die analogen Werte speichern soll, um sie irgendwie auf den PC zu bekommen. Später möchte ich vielleicht noch einen GPS Sensor an eine serielle Schnittstelle anhängen, um zu wissen, wie schnell ich unterwegs war.
Christoph S schrieb: > Ich habe gehört, dass es für AVR Controller Programmvorlagen gibt, > deshalb wären mir diese lieber. Vorlagen, Bibliotheken und Beispiele gibts für alle Familien. Schau hier: http://www.st.com/internet/com/software/lib_drivers_code_examples.jsp Dazu das Board: https://www.olimex.com/Products/ARM/ST/STM32-P103/ fchk
>Die Übertragung von ASCII oder String in ein schönes Programm bekomm ich >auch mit Labview hin. Das Problem ist also, wie ich die analogen Werte >speichern soll, um sie irgendwie auf den PC zu bekommen. Dann nimm doch einen kleinen Laptop/Tablet plus USB AD Karte im Rucksack mit. >und keine Ahnung habe, wie ich einen Microcontroller Programmieren sollte. >(Grundlagenkurs für C++ war gratis und um sonst!) Also Null Ahnung. Wie viel Zeit hast du für das Projekt? Wie viel Zeit kannst du investieren um das alles zu lernen? Wie viel Geld möchtest du dafür ausgeben?
Über welche Spannungspegel reden wir denn hier? Das Signal muss vorm ADC noch aufbereitet werden. Nen 12bit ADC für I2C/SPI raussuchen, an AVR häkeln und an SPI noch die SD Karte. Alles mit 3,3V Versorgen (max 12,882MHz), nen ATMega 324 zB nehmen (Pinkompatibel zum 32er). GPS Module sehen auch gerne 3,3V Eine SD Lib die auch gleichn FAT32 Dateisystem hat gibs hier auf der Webseite. Die rohen ADC Werte dann einfach als ACSI in eine Datei auf die SD Karte klatschen. Das Einzige was dann hier SMD ist wär der SD Kartenhalter. Lässt sich aber durch den kauf einer MIcro SD umgehen. Die kommen meist mit Adapter auf groß SD, den Adapter dann fest einlöten und nur die Micro SD nutzen. Als Wandler bietet sich nen ADS7822 an.
Frank K. schrieb: > Dazu das Board: > https://www.olimex.com/Products/ARM/ST/STM32-P103/ Danke für die Links! Kann ich diesen ARM direkt mit einem USB Kabel programmieren, oder brauche ich noch zusätzliche Hardware?
Christoph S schrieb: > Frank K. schrieb: >> Dazu das Board: >> https://www.olimex.com/Products/ARM/ST/STM32-P103/ > > > Danke für die Links! Kann ich diesen ARM direkt mit einem USB Kabel > programmieren, oder brauche ich noch zusätzliche Hardware? https://www.olimex.com/Products/ARM/JTAG/ARM-USB-OCD-H/ fchk
>Danke für die Links! Kann ich diesen ARM direkt mit einem USB Kabel >programmieren, oder brauche ich noch zusätzliche Hardware? Du brauchst einen JTAG Programmer. Siehe Link links oben im Menü. Da kannst du dir was aussuchen. Und dann viel Spass beim zusammensuchen von Toolchain usw... Für Anfänger eher nicht geeignet.
Christoph S schrieb: > avr schrieb: >> Die neuen (USB) Atxmegas haben nun (nicht verbugte) 12bit ADCs > > USB Atxmega -> kann man diese NUR mit USB Verbindung zum PC in Betrieb > haben? Quatsch. Die haben nur USB-Peripherie. USB Atxmega weil das die neueren Atxmegas sind, wo Fehler im Analogteil behoben wurden. > Was heißt verbugt? google kaputt?
holger schrieb: > Dann nimm doch einen kleinen Laptop/Tablet plus USB AD Karte > im Rucksack mit. Die Geschwindigkeiten sind leider so hoch, dass der Luftwiderstand Fehler verursachen würde. Es sollte alles unter dem Rennanzug Platz finden ;)
Mein Post wird grade ignoriert? Wenne dir das mitm AVR ned zutraust, könnt ich gegen ne kleine Spende das bauen mit den rausgeführten Pins zum AD Wandler.
Christoph S schrieb: > Die Geschwindigkeiten sind leider so hoch, dass der Luftwiderstand > Fehler verursachen würde. Kommst du denn mit dem Geschwindigkeitslimit der zivilen GPS-Empfänger klar? ;-)
holger schrieb: >>Danke für die Links! Kann ich diesen ARM direkt mit einem USB Kabel >>programmieren, oder brauche ich noch zusätzliche Hardware? > > Du brauchst einen JTAG Programmer. Siehe Link links oben im Menü. > Da kannst du dir was aussuchen. Und dann viel Spass beim zusammensuchen > von Toolchain usw... Für Anfänger eher nicht geeignet. Wenn man es mit Header Board und JTAG Programmer hardwaremäßig auskommt, bin ich zuversichtlich. Ich habe allerdings noch Fragen zur richtigen Vorgehensweise: Also die 2 Teile bestellen und sich ins Programmieren einlesen, bis das ganze zu Hause ist. Danach beides an den PC anschließen und den Cortex M3 am Board programmieren. Wenn alles richtig Programmiert ist, eine externe Spannungsversorgung für das Board besorgen, SD Karte einlegen, analoge Eingänge und GPS Maus anschliesen und man kann ohne PC zu Messen beginnen. Sehe ich das so richtig?
>Wenn man es mit Header Board und JTAG Programmer hardwaremäßig auskommt, >bin ich zuversichtlich. Hmm. >Ich habe allerdings noch Fragen zur richtigen Vorgehensweise: >Also die 2 Teile bestellen und sich ins Programmieren einlesen, bis das >ganze zu Hause ist. Zwecklos. Ohne beides da zu haben kannst du lesen ohne Ende. Ein Programm kommt dabei nicht heraus. >Danach beides an den PC anschließen und den Cortex M3 am Board >programmieren. >Wenn alles richtig Programmiert ist, eine externe Spannungsversorgung >für das Board besorgen, SD Karte einlegen, analoge Eingänge und GPS Maus >anschliesen und man kann ohne PC zu Messen beginnen. >Sehe ich das so richtig? Im Prinzip schon. Ein bisschen Kleinarbeit ist da schon noch zu machen. Ich denke wir werden noch oft von dir hören;)
Martin Wende schrieb: > Mein Post wird grade ignoriert? > > Wenne dir das mitm AVR ned zutraust, könnt ich gegen ne kleine Spende > das bauen mit den rausgeführten Pins zum AD Wandler. Nein natürlich nicht ;) Danke, aber mit dem Löten bin ich schon vertraut. Eine Hilfe brauche ich bei der Auswahl der Hardware. Aus dem Grund bin ich hier im Forum. Wie werden AVR Programmiert? kann man sich bei diesen den Programmer ersparen?
Unabhängig von der Hardware (selbst gebaut oder fertigs Board) würde ich auf alle Fälle auf die Feuchtigkeit achten (von außen Schnee, von innen Schweiß). Mein Vorschlag wäre eine Selbstbauvariante mit minimalem Materialeinsatz: - ATTiny 84 - SD Karte - Spannungsversorgung (z.B. 9V Block und kleinen Spannungsregler) Der µC hat "nur" eine 10 Bit ADC, was aber vermutlich vollkommen ausreicht, da es mit der internen Spannungsreverenz von 1,1 V auch schon eine Auflösung von 1mV entspricht. Das muss die Hardware erstmal hergeben (weiß natürlich nicht, was du als Hardware hast). Sollte es nicht ausreichen kann man immer noch einen externen ADC anschließen. Bräuchtest dann noch einen Programmieradapter für das ganze, die kosten aber auch nicht die Welt. z.B. http://www.reichelt.de/Programmer-Entwicklungstools/DIAMEX-ALL-AVR/3/index.html?;ACTION=3;LA=446;ARTICLE=110345;GROUPID=2969;artnr=DIAMEX+ALL+AVR;SID=10UCT6h38AAAIAAGtWgYcc29ef4cc908235996ef89f1a9154c399 Gruß Kai
Hier hast Du alles auf einem Board: http://www.alvidi.de/shop/product_info.php?info=p34_AVR-ATxmega-USB-Extended-Modul-mit-ATxmega256A3.html Die 12 Bit sind bei dem hier verwendeten Atmel XMega mit Vorsicht zu geniessen, warscheinlich kommst Du aber eh mit 10Bit aus. Programmieren kannst Du das Board in C, BASCOM oder LunaAVR. Mit dieser Lösung bekommst Du wahrscheinlich am schnellsten was auf die Beine gestellt.
Fürn AVR brauchste auchn Programmer, da empfehle ich den USBasp (10€ bei ebay). Oder du hast nochn LPT, dann lässt sich da was aus 4 Widerständen basteln.
So danke für die guten Vorschläge bisher. Ich habe 2 Paletten zusammengefasst, die mich interessieren. 1) Die beiden ADC extern http://www.ti.com/lit/ds/symlink/ads7822.pdf Als Programmer den DIAMEX ALL AVR http://www.reichelt.de/Programmer-Entwicklungstools/DIAMEX-ALL-AVR/3/index.html?;ACTION=3;LA=446;ARTICLE=110345;GROUPID=2969;artnr=DIAMEX+ALL+AVR;SID=10UCT6h38AAAIAAGtWgYcc29ef4cc908235996ef89f1a9154c399 Beim Board bin ich mir noch nicht sicher. Ich habe in einem anderen Thread gelesen, dass manche uC nicht die gewünschte Samplerate erreichen. Habt ihr Vorschläge dazu? Mit Link zum Bestelle am besten. 2) Alles im selben Board: https://www.olimex.com/Products/ARM/ST/STM32-P103/ Und zum JTAG Programmieren: https://www.olimex.com/Products/ARM/JTAG/ARM-USB-OCD-H/
Was meinste mit gewünschte Samplerate nicht erreichen? Den AVR und die ADCs löteste einfach aufn Lochraster mit Quarz und ISP. Da brauchste kein Board.
Wenn Du das von mir oben genannte Board http://www.alvidi.de/shop/product_info.php?info=p34_AVR-ATxmega-USB-Extended-Modul-mit-ATxmega256A3.html nimmst, kannst Du das auch mit Bootloader bestellen. Das heisst Du benötigst dann keinen Programmer.
Martin Wende schrieb: > Was meinste mit gewünschte Samplerate nicht erreichen? Ich möchte mindestens 100 Messwerte pro analog-Kanal erreichen.
Martin Wende schrieb: > Den AVR und die ADCs löteste einfach aufn Lochraster mit Quarz und ISP. > Da brauchste kein Board. Also einfach ADCs, einen ATmega und einen Programmer und die ersten beiden zusammenlöten, oder?
Albert M. schrieb: > Wenn Du das von mir oben genannte Board > http://www.alvidi.de/shop/product_info.php?info=p3... > nimmst, kannst Du das auch mit Bootloader bestellen. Das heisst Du > benötigst dann keinen Programmer. Wo finde ich einen Bootloader?
Der Bootloader ist ein Programm auf dem Prozessor-Chip, was es Dir erlaubt Deine Software über die serielle Schnittstelle auf den Chip zu flashen. Bei dem von mir genannten Board befindet sich ein Schnittstellenwandler USB-Seriell bereits on Board. Du kannst also dein Board mit einem USB-Kabel mit einem PC verbinden. Diese Schnittstelle erscheint auf dem PC als virtueller Port und kann von der benutzen Programmiersoftware angesprochen werden. Somit kannst Du ziemlich einfach Dein Programm auf das Board übertragen.
Jo 100Werte/s haste erwähnt. Aber warum soll das nicht gehen? Der ADC selbst schafft 200.000 Werte/s, also kein Problem. Der AVR muss 2x8bit auslesen per SPI (Der ADC füllt nach 12bit mit 0en aus). Das sind bei 2 Kanälen zu 100W/s, 400byte/s. Das geht locker übern SPI, der mit Quarztakt/2 laufen kann. Zum schreiben auf die SD Karte is auch noch genug Zeit. Also nen Timerinterrupt, der mit 100Hz auslöst. Darin werden beide ADC ausgelesen und die Werte kommen in RAM des AVR. Von dort liest dann die Hauptschleife den RAM Abschnitt aus und schreibts auf die SD Karte. Bei meinem MP3 Projekt gehen 40kbyte/s von SD karte übern AVR in nen Puffer des MP3 decoders.
Martin, welche Bauteile kannst du mir empfehlen? Die ADCs hast du mir ja schon gezeigt.
Albert M. schrieb: > Der Bootloader ist ein Programm auf dem Prozessor-Chip, was es Dir > erlaubt Deine Software über die serielle Schnittstelle auf den Chip zu > flashen. > Bei dem von mir genannten Board befindet sich ein Schnittstellenwandler > USB-Seriell bereits on Board. Du kannst also dein Board mit einem > USB-Kabel mit einem PC verbinden. Diese Schnittstelle erscheint auf dem > PC als virtueller Port und kann von der benutzen Programmiersoftware > angesprochen werden. Somit kannst Du ziemlich einfach Dein Programm auf > das Board übertragen. Was bedeutet auf der Produktwebseite http://www.alvidi.de/shop/product_info.php?info=p34_AVR-ATxmega-USB-Extended-Modul-mit-ATxmega256A3.html oben im Pulldown Menü BOOTLOADER_KEY_MODE? Und wieso benötigt man noch einen Quarz? Ist der noch nicht auf dem Board?
Na dann noch nen ATMmega324 als Gehirn mit 12,882MHz Quarz. Sonst brauchst nix weiter außer das Konstrukt mit der Micro SD Karte. was noch weiter benötigt wird hängt von deinen zu messenden Spannungen ab und der Stromversorgung. Die Grundbeschaltung eines AVR gibs zur Genüge im Netz sowe den Anschluss der SD Karte am AVR.
Martin Wende schrieb: > Na dann noch nen ATMmega324 als Gehirn mit 12,882MHz Quarz. > Sonst brauchst nix weiter außer das Konstrukt mit der Micro SD Karte. > was noch weiter benötigt wird hängt von deinen zu messenden Spannungen > ab und der Stromversorgung. Meinst du einen ATmega324 als DIP Bauteil?
Jops: http://www.reichelt.de/Atmel-ATMega-AVRs/ATMEGA-324PA-PU/3//index.html?ACTION=3&GROUPID=2959&ARTICLE=121841&SHOW=0&START=0&OFFSET=500& SMD wollteste ja nich (klang jedenfalls so). Passt auch schön auf Lochraster (Sockel empfielt sich).
Christoph S schrieb: > Was bedeutet auf der Produktwebseite > http://www.alvidi.de/shop/product_info.php?info=p34_AVR-ATxmega-USB-Extended-Modul-mit-ATxmega256A3.html > oben im Pulldown Menü BOOTLOADER_KEY_MODE? Da kannst Du Dir verschiedene Bootloader aussuchen. Wenn Du nicht weisst welchen, einfach mal bei Alvidi fragen was die unterschiede sind. > Und wieso benötigt man noch einen Quarz? Ist der noch nicht auf dem > Board? Der Quarz ist im Boardpreis inbegriffen. Ich würde Dir für eine problemlose schnelle Datenübertragung vom/zum PC den 14.7456 MHz Quarz empfehlen. Du kannst natürlich auch mit dem Chip-internen Taktgenerator arbeiten. Aber wenn der Quarz nunmal zum Lieferumfang gehört ...
Martin Wende schrieb: > Jops: > http://www.reichelt.de/Atmel-ATMega-AVRs/ATMEGA-32... > SMD wollteste ja nich (klang jedenfalls so). > Passt auch schön auf Lochraster (Sockel empfielt sich). Wie kann ich den Programmieren?
Steht hier alles auf der Webseite. Den proggste in C mit WinAVR oder AVR Studio. Das Programmiergerät heißt AVR ISP (gibt verschiedene). USBasp gibs fürn 10er beim ebaychinesen.
Albert M. schrieb: > Der Quarz ist im Boardpreis inbegriffen. Ich würde Dir für eine > problemlose schnelle Datenübertragung vom/zum PC den 14.7456 MHz Quarz > empfehlen. Du kannst natürlich auch mit dem Chip-internen Taktgenerator > arbeiten. Aber wenn der Quarz nunmal zum Lieferumfang gehört ... Okay also einfach den Quarz mitbestellen und einbauen.. Und zur Auflösung: Du hast angedeutet, dass die Auflösung nicht unbedingt 12bit sind. Kann ich dazu noch 2 externe ADCs und eine GPS Maus schalten? (natürlich alles SPI-konform) Hat dieses Bauteil genügen SPI Eingänge?
Google mal nach SPI, das isn Bus. Da kannste also viele Geräte anschließen. Deshalb hat jdes SPI gerät nen chip select. DEr chip select muss dann an irgendein Portpin des Controllers mit der das SPI gerät auswählen kann. GPS ist meist UART.
Martin Wende schrieb: > Google mal nach SPI, das isn Bus. > Da kannste also viele Geräte anschließen. > Deshalb hat jdes SPI gerät nen chip select. > DEr chip select muss dann an irgendein Portpin des Controllers mit der > das SPI gerät auswählen kann. > > GPS ist meist UART. Also kann ich genügend SPI Geräte an einen uC anschließen, oder? Durch die Programmierung kann ich das ausgewählte Gerät festlegen
Christoph S schrieb: > Und zur Auflösung: Du hast angedeutet, dass die Auflösung nicht > unbedingt 12bit sind. Kann ich dazu noch 2 externe ADCs und eine GPS > Maus schalten? (natürlich alles SPI-konform) Hat dieses Bauteil genügen > SPI Eingänge? 2 externe ADCs geht. Ich würde aber zuerst mal mit dem ADC vom XMega probieren, insbesondere da die verlangte Samplerate sehr niedrig ist. GPS-Mouse eher fraglich wenn Du das Protokoll der Mouse nicht kennst. Wie Du die elektrisch da reinbekommst frag mal andere hier. Da würde ich lieber ein GPS-Mudul kaufen bei dem die Schnittstelle und das Protokoll dokumentiert sind. Wenn Du nicht fitt in C bist, würde ich das Ganze in Bascom programmieren, um das ganze zeitnah installiert zu bekommen :)
Gibt ja nicht viele GPS Protokolle, meist isses NMEA.
Ich glaube, dass es für mich am besten ist, wenn ich das fertige Board kaufe: http://www.alvidi.de/shop/product_info.php?info=p34_AVR-ATxmega-USB-Extended-Modul-mit-ATxmega256A3.html Für das andere bin ich wahrscheinlich noch zu unerfahren. Da bestelle ich wie schon besprochen den 14,75MHz Quarz und bei die freie Installation, die man auswählen kann, informiere ich mich noch. Außer hier kann mir jemand was empfehlen. Zum Programmieren benötigt man zusätzlich nur ein USB Kabel und die Bootloader Software. Ich schätze, man kann das Programm so gestalten, dass die Daten binär oder Hex auf der SD Karte gespeichert werden können. Die Spannungsversorgung ist hier extern. Wenn die Auflösung zu ungenau ist, kann ich mir später noch externe ADCs kaufen. Ist die Messung von negativen Spannungen ein Problem? Bei dem GPS Signal lasse ich mir noch Zeit. Das packe ich erst im nächsten Ausbauschritt an ;) So ich hoffe, dass ich damit alles machen kann, was ich brauche. Vielen Dank für eure Hilfe und falls etwas in dem Beitrag nicht so stimmt, bitte sofort melden
Christoph S schrieb: > Zum Programmieren benötigt man zusätzlich nur ein USB Kabel und die > Bootloader Software. Ich schätze, man kann das Programm so gestalten, > dass die Daten binär oder Hex auf der SD Karte gespeichert werden > können. Die Bootloader Software brennt Dir Alvidi auf den Chip. Die Treibersoftware für den PC kannst Du von der Alvidi Seite runterladen. Die Daten lassen sich binär, hex oder am besten dezimal auf der SD-Karte speichern. > Ist die Messung von negativen Spannungen ein Problem? Du kannst negative Spannungen nicht an den Prozessor anlegen. das mag der garnicht. Hebe einfach durch einen Spannungteiler mit 2 gleichen Widerständen das Potential an den ADC Eingängen auf Vcc/2. Die Spannung an diesem virtuellen Nullpunkt darf dann max. +Vcc/2 und -Vcc/2 sein.
Albert M. schrieb: > Du kannst negative Spannungen nicht an den Prozessor anlegen. das mag > der garnicht. Hebe einfach durch einen Spannungteiler mit 2 gleichen > Widerständen das Potential an den ADC Eingängen auf Vcc/2. Die Spannung > an diesem virtuellen Nullpunkt darf dann max. +Vcc/2 und -Vcc/2 sein. Die Nullpunktsanpassung mach ich einfach an dem Poti von meinem Differenzverstärker (INA121) Nochmal zum Bootloader: weist du, wo ich mich zu den verschiedenen Programmen informieren kann?
Christoph S schrieb: > Nochmal zum Bootloader: weist du, wo ich mich zu den verschiedenen > Programmen informieren kann? Wie gesagt, einfach mal bei Alvidi anrufen und fragen.
Beim Loggen auf SD-Karten immer darauf achten, dass die Schreibzeit für einen Block (512bytes) im ungünstigsten Fall 250ms dauern kann. Falls Aufzeichnungslücken ausgeschlossen werden müssen, mit Doppelpuffer arbeiten und entsprechend viel RAM für die Pufferung vorhalten. Ist ein recht anspruchsvolles Anfängerprojekt, aber zu schaffen. Viel Erfolg.
Martin Thomas schrieb: > Beim Loggen auf SD-Karten immer darauf achten, dass die Schreibzeit für > einen Block (512bytes) im ungünstigsten Fall 250ms dauern kann. Falls > Aufzeichnungslücken ausgeschlossen werden müssen, mit Doppelpuffer > arbeiten und entsprechend viel RAM für die Pufferung vorhalten. > Ist ein recht anspruchsvolles Anfängerprojekt, aber zu schaffen. Viel > Erfolg. Danke! Kennst du irgendwelche Vorlagen für den Bootloader? Ich denke, dass solch ein Programm relativ oft benötigt wird.
Christoph S schrieb: > Kennst du irgendwelche Vorlagen für den Bootloader? Ich denke, dass > solch ein Programm relativ oft benötigt wird. Wie bereits gesagt kannst Du das Board von Alvidi mit bereits auf den Prozessor geflashten Bootloader bekommen. Was willst Du noch mit irgendwelchen Vorlagen? Du kannst Dir auch den zum Prozessor passenden Bootloader von der Alvidi Seite runterladen. Das bringt Dir aber nix, weil Du den dann mit einem ISP Programmer, den Du nicht hast, auf den Prozessor flashen müsstest. Vieleicht solltest Du vom Bootloader Abstand nehmen und gleich einen anständigen Programmer kaufen (Atmel AVRISP MKII für ca 40 Euro), dann brauchst Du Dir über Bootloader keine Gedanken mehr machen.
Martin Thomas schrieb: >Beim Loggen auf SD-Karten immer darauf achten, dass die Schreibzeit für >einen Block (512bytes) im ungünstigsten Fall 250ms dauern kann. Falls >Aufzeichnungslücken ausgeschlossen werden müssen, mit Doppelpuffer >arbeiten und entsprechend viel RAM für die Pufferung vorhalten. Dazu vom mir einige Fragen: a) Was gehört zu den ungünstigen Fällen? b) Wie funktioniert ein Doppelpuffer? Hintergrund: Ich habe ein „EKG-Gerät“ gebaut und zeichne die Messwerte auf einer SD-Karte auf. Dazu wird der ADC alle 5ms abgefragt und der Wert in ein Feld des RAM geschrieben. Ist das Feld mit 512 Bytes gefüllt, dann wird das Feld auf die SD-Karte geschrieben. Ich habe den Eindruck, dass immer mal Messwerte fehlen. MFG
Wolfgang-G schrieb: > b) Wie funktioniert ein Doppelpuffer? 2 Puffer a 512Bytes. Puffer A voll > weitere Werte in Puffer B erfassen + Puffer A wegschreiben bis Puffer B voll > weitere Werte in Puffer A erfassen + Puffer B wegschreiben ... Wolfgang-G schrieb: > Ich habe den > Eindruck, dass immer mal Messwerte fehlen. Kann natürlich auch an schlechtem Design liegen. z.B. Datenerfassung nicht im Interrupt (wegschreiben blockiert dann u.U. Datenerfassung). Stephan
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.