Hallo Gemeinde, suche jemand der mir eine kleine Firmware für einen PIC18F2553 schreiben kann. Es handelt sich um einen Datenlogger der auf eine SD Karte 4 analoge (0-5V) Eingänge in einer xxx.txt Datei als CSV speichern soll. Bitte meldet euch doch einfach per Email wenn Interesse besteht. Dann kann alles besser und in Ruhe besprochen werden. Email: mpebay[ät]web.de Dankeschön
:
Verschoben durch User
hat keiner Interesse? soll auch nicht für umsonst sein? Oder hat weiß jemand wo ich eventuell jemanden damit beauftragen kann? Gibt's im www so eine Platform für solche Dienstleistungen? Gruß
Heinz L. schrieb: > hat keiner Interesse? > soll auch nicht für umsonst sein? > Oder hat weiß jemand wo ich eventuell jemanden damit beauftragen kann? > Gibt's im www so eine Platform für solche Dienstleistungen? > > Gruß Zunächst: Dein PIC ist reichlich winzig. Das geht zwar vermutlich rein, aber so richtig gut geeignet ist er nicht. Ich würde min. einen PIC mit 64k Flash nehmen. Zur Enwticklungsleistung: Das wird nicht billig, das ist hoffentlich klar? Ich habe bis zur Umsetzung von etwas ähnlichem (mit FATFS) aber ungefähr 30-40 Arbeitsstunden investiert. Also bis FATFS richtig lief- das Projekt ist noch nicht fertig... Richtige Profis können das natürlich schneller schaffen - bin nur Hobbyprogrammierer. Wenn du es lieber selber machen willst: Ein guter Start ist hier zu finden: http://elm-chan.org/fsw/ff/00index_e.html Oder sieh hier nach: http://www.microchipc.com/sourcecode/#mmc Ich kann Beispielcode zu FATFS posten, wenn es dir hilft. FATFS ist nicht übermäßig schwirig, das ist für einen normalbegabten Hobbyisten noch gut zu schaffen.
@ Heinz L. (luli) >Es handelt sich um einen Datenlogger der auf eine SD Karte 4 analoge >(0-5V) Eingänge in einer xxx.txt Datei als CSV speichern soll. Schau erstmal, was es so als Fertiggeräte auf dem Markt gibt. Das ist in der Regel deutlich einfacher, schneller und billiger. Sonderanfertigungen sind immer recht aufwändig und teuer.
Hallo, der datalogger ist schon vorhanden. Habe ich mir aus einem vorhanden Schaltpläne zusammen gelötet. Jetzt braucht es eben von die Firmware für den PIC. Mit programmieren habe ich nix am Hut und wäre auch zu zeitintensiv das zu erlernen. Deshalb wird jemand gesucht der das machen kann.
Heinz L. schrieb: > Habe ich mir aus einem vorhanden > Schaltpläne zusammen gelötet. Jetzt braucht es eben von die Firmware für > den PIC. Eine neue Schaltung mit geeignetem Controller zusammen zu löten ist ja nur ein minimaler Aufwand verglichen mit der Programmierung. Sich wegen dieses winzigen Aufwandes extra viel Arbeit beim Programmieren einzuhandeln ist ja wohl völlig bescheuert. Sag doch mal was zur gewünschten Abtastrate...
Abtastrate wäre zwischen folgenden ms zu wählen, am besten durch eine xxx.txt Datei die auf die SD Karte hinterlegt wird: 50ms, 100ms, 200ms, 500ms, 1000ms Wie ihr seht habe ich schon klare Vorstellung wie das alles sein sollte, nur die Umsetzung (Firmware Programmierung) kann ich nicht selbst
Das sind 120 Byte/Sec, das ist ja zum Glück kein Problem. Heinz L. schrieb: > nur die Umsetzung (Firmware Programmierung) kann ich nicht selbst "nur" die Umsetzung ist leider wesentlich aufwändiger als nur zu wissen was man will... Wenn du nicht programmieren kannst kauf dir einen fertigen Logger z.B. von NI, das kommt dich wesentlich billiger.
Drum suche ich ja jemand der mir die Firmware schreibt. Ich will keinen anderen logger kaufen. Danke für die Ratschläge!
Dann zeig mal deinen Schaltplan und ein Bild vom realen Aufbau.
Dr. Sommer schrieb: > Das sind 120 Byte/Sec, das ist ja zum Glück kein Problem. Bei nur 2k SRAM, wo mindestens ein 512 Byte Sektorpuffer drin sein muss? Das knallt bei der Suche nach freien Clustern auf großen (16,32 GB) Karten, da man worst case mehrere MB FAT einlesen muss bis man den Nächsten findet. Das dauert über SPI recht lange, da wird der RAM knapp. Und SD Karte an 5V Controller ist ziemlich bäh, weil man zwingend einen Pegelwandler braucht. Aber so richtig anrüchig ist die konkrete Vorgabe eines µCs ohne dass man selber die Software schreiben kann. Der normale Vorgang ist genau andersherum: Der Dienstleister gibt eine oder mehrere µC Familien vor, und man sucht sie mit Rücksprache des Softwaregurus einen passenden für das Projekt aus.
wie gesagt der Datalogger ist vorhanden. Läuft mit einer Firmware die ich hier habe auch, will aber Änderungen die ich nun nicht selber machen kann! Pegelwandler usw. alles vorhanden. Nochmal: der datalogger braucht nur eine Firmware die so ausgestattet ist wie ich es vorgeben und die dann, jemand der Interesse hat, programmiert. Alles weitere per Email, Schaltplan usw.....
@Jim Meba (turboj) >> Das sind 120 Byte/Sec, das ist ja zum Glück kein Problem. >Bei nur 2k SRAM, wo mindestens ein 512 Byte Sektorpuffer drin sein muss? Auch das geht, zumindest mit FATfs vom Meister Chan! >Das knallt bei der Suche nach freien Clustern auf großen (16,32 GB) >Karten, >da man worst case mehrere MB FAT einlesen muss bis man den Nächsten >findet. Das dauert über SPI recht lange, da wird der RAM knapp. Was soll diese Schwarzmalerei? FATfs hat exakt nur EINEN Sektorpuffer, wenn man nicht noch einen pro Datei reserviert. Und man kann PROBLEMLOS VORHER eine maximale Dateigröße anlegen und dann voll entspannt die Daten schreiben, ohne auch nur ein einziges Mal in der FAT nach freien Clustern suchen zu müssen. Been there, done that. >Und SD Karte an 5V Controller ist ziemlich bäh, weil man zwingend einen >Pegelwandler braucht. Ach herje, bricht jetzt die Welt zusammen?
Heinz L. schrieb: > Läuft mit einer Firmware die > ich hier habe auch, will aber Änderungen die ich nun nicht selber machen > kann! Sourcecode ist auch vorhanden?
Volker S. schrieb: > Heinz L. schrieb: > Läuft mit einer Firmware die > ich hier habe auch, will aber Änderungen die ich nun nicht selber machen > kann! > > Sourcecode ist auch vorhanden? Leider nicht sonst hätte ich nicht wohl selber getraut etwas alleine hinzu basteln, bzw. mich tiefer in die Materie eingearbeitet
:
Bearbeitet durch User
Die Sache mit dem Winz-PIC sehe ich auch kritisch: Es ist doch so: Bei einem Aufwand von zig Arbeitsstunden macht der Aufpreis für ein paar kB Flash bei eine Einzelstück oder geringen Stückzahlen weniger als 1 Promille der Kosten aus. Da ist ein PIC mit 64k Flash / 16k RAM billiger, als auch nur eine 10 Minuten Optimierung. Der Hersteller des Datenloggers kann natürlich mehr Aufwand investieren, bei ordentlich STückzahlen bekommt der das wieder herein. Aber du nicht. Sonst wäre noch zu sagen: Wenn du bereit bist, z.B. das Geld für einige zig Arbeitsstunden zu investieren, dann wist du hier auch jemanden finden, der dir das macht. Und, bist du bereit dazu? Also mehrere hundert € dafür auszugeben? PS: Hilfe zum selber Erstellen der Firmware wirst du problemlos bekommen. Ich würde mir doch nocheinmal gut überlegen, ob es nicht sinnvoll wäre, das selber zu machen. Wie sieht es damit aus? Interesse?
DerMitDerMaus schrieb: > PS: > Hilfe zum selber Erstellen der Firmware wirst du problemlos bekommen. > Ich würde mir doch nocheinmal gut überlegen, ob es nicht sinnvoll wäre, > das selber zu machen. > Wie sieht es damit aus? Interesse? Hau rein! Der Pic18f2553 bleibt!
Schau doch mal den Oshonsoft-Compiler an, der kann 10mal gestartet werden oder so, und ist zum Kaufen auch nicht teuer: http://www.oshonsoft.com/pic18basiccompilerreferencemanual.html#879 Diese Libs sind doch heutzutage so einfach zu handhaben, das ist mit ein bisschen Programmiererfahrung doch machbar! mikroe hat auch so ne Lib, die läuft nach dem Beispiel mit nem 18F452, sogar noch kleiner als des TO's (1k5 vs. 2k RAM), nur ist da der Code auf ein oder zwei kWorte begrenzt... Gruss Chregu
Also, für FATFS schnappt man sich am Besten ein Beispiel von der Seite von Elm Chan: http://elm-chan.org/fsw/ff/00index_e.html Unter "FatFs sample projects for various platforms November 15, 2016" Da drin enthalten ist eine "foolproof" example für AVRs. Da drin anpassen muss man im Endeffekt nur die sdmm.c Das lässt sich relativ leicht auf PICs portieren. Man muss ein paar kleiner Anpassungen machen. Also solche Sachen:
1 | #define DI_INIT() DDRB |= 0x02 /* Initialize port for MMC DI as output */ |
2 | #define DI_H() PORTB |= 0x02 /* Set MMC DI "high" */ |
3 | #define DI_L() PORTB &= 0xFD /* Set MMC DI "low" */ |
Das sind Makros, zum auf die Pins schreiben. Das kann beim PIC zum Beispiel so aussehen: [c] #define DI_INIT() TRISBbits.TRISB1 = 0 /* Initialize port for MMC DI as #define DI_H() LATBbits.LATB1 = 1 /* Set MMC DI "high" */ #define DI_L() LATBbits.LATB1 = 0 /* Set MMC DI "low" */ [\c] Dann poppen bestimmt noch ein paar Fehler auf, aber soweit ich mich erinnere nichts gravierendes mehr. Halt ein paar Unterschiede zwischen PIC und AVR. Die behebt man eben. Das ist ein Pfuschbeispeil, mit Bitbanging-SPI. Dafür ist es umso leichter verständlich. Wenn das mal läuft, und du in ein File schreiben kannst, ist der Rest nicht mehr allzu schwierig. Inklusive der Portierung auf Hardware-SPI. Was ich noch nicht getan habe, ist die Implementierung von DMA-Transfer. Ob du das Beispielprojekt in deinen Winz- PIC bekommst, musst du selber ausprobieren.
Christian M. schrieb: > Schau doch mal den Oshonsoft-Compiler an, der kann 10mal gestartet > werden oder so, und ist zum Kaufen auch nicht teuer: > > http://www.oshonsoft.com/pic18basiccompilerreferen... > > Diese Libs sind doch heutzutage so einfach zu handhaben, das ist mit ein > bisschen Programmiererfahrung doch machbar! > > mikroe hat auch so ne Lib, die läuft nach dem Beispiel mit nem 18F452, > sogar noch kleiner als des TO's (1k5 vs. 2k RAM), nur ist da der Code > auf ein oder zwei kWorte begrenzt... > > Gruss Ok Danke! aber mir wäre es doch lieber wenn mir jemand die Firmware schreibt. Wie gesagt soll das nicht umsonst sein. Und ich denke nen Datalogger auf Pic18-Basis haben doch schon einige auf die Beine gestellt.
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.