Hallo zusammen, Zusammengefasst ist das so: Der Controller soll inputs für einen anderen Controller simulieren und die outputs dann messen. "Manuel" geschieht das wunderbar, also per terminal inputs eingeben und outputs lesen. Die kommunikation mit dem PC geschieht über USB. Der nächste Schritt ists nun, das ganze zu automatisieren, also aus einer .txt Datei testcases (inputs) einlesen, simulieren, outputs messen und gegebenenfalls in einer anderen .txt Datei protokollieren. Ich habe die letzten 2 Tage gesucht und gelesen, das meiste was ich gefunden habe, war wie man mit SPI und SD-Karte umgeht, aber nicht wenn die datei auf der Festplatte im PC ist. PS: http://elm-chan.org/fsw/ff/00index_e.html habe ich gecheckt, die Dokumentation und die Demofiles, trotzdem bin ich (noch) planlos und wäre für eure Tipps sehr dankbar, LG
Wenn ich das richtig verstanden habe, dann ist das ein Problem für den PC und nicht auf dem Microkontroller.
Jim Meba schrieb: > Wenn ich das richtig verstanden habe, dann ist das ein Problem für den > PC und nicht auf dem Microkontroller. Warum ist das ein Problem für den PC? der hat ein eigenes Betriebsystem :) Der µController soll nun auf der Festplatte des PCs Schreib- und Lesezugriffe haben.
Dann brauchst du kein FATfs auf dem μC, sonder ein RemoteFs, NFS oder so. Der PC wird dir was husten, wenn du seine Files lowlevel beschreiben willst.
Bastler schrieb: > Dann brauchst du kein FATfs auf dem μC, sonder ein RemoteFs, NFS oder > so. Der PC wird dir was husten, wenn du seine Files lowlevel beschreiben > willst. Das werde ich mal googlen, aber momentan sagt mir das nichts :)
Probier doch mal ein simples Protokoll über Seriellen Port: O,<filename> crlf Datei öffnen R crlf Lesen, PC antwortet mit <Daten> crlf W,<Daten> crlf Schreiben C crlf Datei schließen Kann beliebig erweitert werden, z.B. Durch FileNummern für mehrere offene Dateien, Öffnungs-Modus (Read, Write, Append, ...)
Syrer schrieb: > gefunden habe, war wie man mit SPI und SD-Karte umgeht, aber nicht wenn > die datei auf der Festplatte im PC ist. Das Experiment "Festplatte SCHREIBEN" würde ich auch sehr vorsichtig angehen. Mach erst mal kleine Schritte und prüfe ob DU überhaupt dort lesen KANNST und ob DU überhaupt genau DORT schreiben DARFST wo Du es möchtest. Dein PC-BS hat auch eine Meinung was Du darfst!
Die Frage ist: Soll der zweite Controller die Steuerung übernehmen und die Files lesen, den ersten Controller fütern und die Resultate speichern lassen oder soll der zweite Controller nur Bindeglied spielen und nur vermitteln, während der PC das Kommando hat. Bei letzterem bräuchte man kein Remotefilesystem sondern ein eventuell selbstgestricktes Progrämmchen, welches die Daten verschickt und empfängt während der zweite Controller nur reagiert aber nicht wirklich was steuert. Das wäre eine andere Aufgabenstellung.
32u4 hat ja USB, darüber kann man das simple Protokoll natürlich auch verwenden. BTW, SMB, das Windows Remote File Protokoll, ist übrigens fast genau so gebaut. Nur etwas universeller, sprich aufwendiger
oszi40 schrieb: > Das Experiment "Festplatte SCHREIBEN" würde ich auch sehr vorsichtig > angehen. Mach erst mal kleine Schritte und prüfe ob DU überhaupt dort > lesen KANNST und ob DU überhaupt genau DORT schreiben DARFST wo Du es > möchtest. Dein PC-BS hat auch eine Meinung was Du darfst! Ist eh klar, wenn ich was gelerent hab, dann die Arbeit aufzuteilen und kleine Erfolge zu geniessen Carsten R. schrieb: > Soll der zweite Controler die Steuerung übernehmen und die Files lesen, > den ersten Controller fütern und die Resultate speichern lassen oder > soll der zweite Controller nur Bindeglied spielen und nur vermitteln, > während der PC das Kommando hat. Bei letzterem bräuchte man kein > Remotefilesystem sondern ein eventuell selbstgestricktes Progrämmchen, > welches die Daten verschickt und empfängt während der zweite Controller > nur reagiert aber nicht wirklich was steuert. Das wäre eine andere > Aufgabenstellung. ähm, sagen wir µController A hat die aufgabe temperatur zu messen und einen Lüfter zu steuern, µController B kann den sensor und den Motor für A spielen und empfangen was A so macht, also temperatur und Tachosignal simulieren und duty cycle empfangen. Das alles geht über USB vom PC aus (Die kommunikation zwischen PC und B meine ich), und nun soll B Daten aus einer datei einlesen und weiter machen als ob ein user das händisch machen würde. Bastler schrieb: > 32u4 hat ja USB, darüber kann man das simple Protokoll natürlich > auch > verwenden. > BTW, SMB, das Windows Remote File Protokoll, ist übrigens fast genau so > gebaut. Nur etwas universeller, sprich aufwendiger Ja, wie gesagt .. händisch, also wert für wert, geht das, nun sollte µController B die Daten von einer datei einlesen. Update: Wie gesagt, Die Kommunikation mit dem PC über USB ist schon da, d.h. ich habe sowas wie: - Temperature:25 - Temperature sent to application, measuring the duty cycle - O.K. duty cycle is 50% ODER - ERROR, Temperature is over lower bound and the motor is not running Eine .txt datei soll nun z.b. folgendes beinhalten: T:25 T:30 T:10 ... und µController B soll nun diese Werte einlesen und verarbeiten. Ich hoffe die Idee ist nun klar :)
Dann kontrolliert er entweder das Blockdevice selbst, SD-Card, oder er bittet den PC das für ihn zu tun. Mit SD wäre er in der Lage nach vorbereiteter Kommandodatei Tests durchzuführen und gegen ebenso vorbereitete Ergebnisdatei zu prüfen. Die SD füllt der PC, dann steckt man sie in den Prüfautomat. Vorteil: 10 Automaten können parallel arbeiten, event. auch verschiedene Testpläne. Nur wozu dann USB? Es könnte natürlich auch ein PC-Programm die Testpläne aus einer Datei lesen und dann wie schon funktionierend Stück für Stück an den μC schicken und das Ergebnis von dort lesen. Programme können auch, was man am Terminal von Hand macht ;-)
Syrer .. schrieb: > und µController B soll nun diese Werte einlesen und verarbeiten. > Ich hoffe die Idee ist nun klar :) Nun ist die Frage, 1.ob Dein µC B "Einzelfeuer" schon erfolgreich lieferte oder 2.geht es gar nicht? 3.Besteht das Problem NUR bei "Dauerfeuer"? Dann wäre es evtl. ein Zeitproblem/Handshake?
Bastler schrieb: > Mit SD wäre er in der Lage nach vorbereiteter Kommandodatei Tests > durchzuführen und gegen ebenso vorbereitete Ergebnisdatei zu prüfen. Die > SD füllt der PC, dann steckt man sie in den Prüfautomat. Vorteil: 10 > Automaten können parallel arbeiten, event. auch verschiedene Testpläne. > Nur wozu dann USB? Das kann ich leider momentan nicht ändern, also die kommunikation mit dem PC muss über USB laufen. Bastler schrieb: > Es könnte natürlich auch ein PC-Programm die Testpläne aus einer Datei > lesen und dann wie schon funktionierend Stück für Stück an den μC > schicken und das Ergebnis von dort lesen. Programme können auch, was man > am Terminal von Hand macht ;-) Aso, genau das wäre richtig für mich, stichwörter bitte ;;)
oszi40 schrieb: > 3.Besteht das Problem NUR bei "Dauerfeuer"? Dann wäre es evtl. ein > Zeitproblem/Handshake? Die Idee für "Dauerfeuer" ist nicht vorhanden, denn das Problem besteht darin, dass ich keine Ahnung habe, wie der Controller die .txt datei überhaupt lesen könnte..
Die Idee hast du doch schon geliefert bekommen. Den Rest der Semester-/Abschuß-Arbeit mußt du schon selbst machen. Das gefällt jetzt bestimmt wieder einigen nicht, aber ist halt so!
Nochmal: der PC liest die Datei und tut dann so, als würde das jemand eintippen!
Bastler schrieb: > Das gefällt jetzt bestimmt wieder einigen nicht, aber ist halt so! Ne, ich gehöre nicht zu dieser Gruppe :), aber in dem Bereich habe ich eigentlich keine Erfahrung, und ich verlange nie fetrige Lösungen Bastler schrieb: > Nochmal: der PC liest die Datei und tut dann so, als würde das jemand > eintippen! hmm, die das ist inzwischen klar, danke :) Update: Wonach würde man dann suchen wenn man genau das beabsichtigt? :D
Da das problem wenig mit dem µC zu tun hat, habe ich einen neuen Beitrag unter Beitrag "Input von einer .txt Datei zum µC über hyperterminal umleiten" falls wer weiter lesen möchte. LG
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.