Hallo alle, Ich bin noch ein Anfänger hier und habe folgendes Problem. Die 2 Dateien die ich angehängt habe funktionieren beide Problemlos für sich, nur das die Temperaturanzeige im Serial Monitor erfolgt und nicht auf dem LCD. Wie kann ich es anstellen, das beide Dateien zusammen funktionieren in einen Programm und die Anzeige der Temperaturen auf den LCD erfolgt? Und wenn möglich auch noch die unterschiedlichen Sensoren für sich? Das DEMO Programm im LCD Programm kann dabei aussen vor bleiben dies ist nur zum Test gedacht. Danke im voraus Sly1
Maik Sly schrieb: > auf dem LCD. Wie kann ich es anstellen, das beide Dateien zusammen > funktionieren in einen Programm Trenn dich von der Vorstellung, dass du 2 existierende Programme zu einem einzigen zusammenmischen kannst. Prinzipiell schreibst du ein neues Programm. Für dieses neue Programm kannst du Ideen und Techniken aus beiden Programmen verwenden bzw. Einzelteile weiterverwenden. Aber mit der Vorstellung: Ich hab 2 funktionierende Programme und irgendwie verheirate ich jetzt die beiden, damit fällst du mit absoluter Sicherheit auf die Schnauze. Also: Sieh dir an, wie in dem einen Code die Temperatur gemessen wird. Sieh dir im anderen Programm an, wie dort Ausgaben (auch Zahlenausgaben) auf das LCD durchgeführt werden. Und dann schreib ein neues Programm, welches die beiden Techniken kombiniert. > Ich bin noch ein Anfänger Macht nichts. Das nennt sich eben "Programmieren lernen". Programmieren ist mehr, viel mehr, als nur vorgefertigte Einzelteile zu benutzen ohne sie zu verstehen. Wenn du Bilder-Maler werden willst, musst du malen! In vorgefertigen Zeichnungen, vorgefertigte Flächen anhand einer Nummer mit vorgefertigter Farbe ausfüllen hat nichts mit dem zu tun, was einen Künstler ausmacht. Als Lernender studierst du vielleicht die Technik und Bildkomposition anderer großer Meister. Aber deine eigenen Bilder malst du selber! Und genau in demselben Sinne studiert man auch Programme anderer um sich Techiken und Vorgehensweisen abzusehen und daraus zu lernen. Aber seine Programme schreibt man dann selber. Und ja. Das ist ein Lernprozess, der seine Zeit dauert. Gestern noch am Fliessband, heute bereits Industrieprogrammierer - das spielt es nun mal nicht. Die Ausbildungs- und Lernzeit für Programmierer bemisst sich in Jahren/Monaten und nicht in Tagen.
Danke, das habe ich schon probiert. Mein problem ist, beim LCD Programm gibt es Funktionen und ein main Programm. Wenn ich das Temperatur Programm in eine Funktion packe weis ich nicht wie ich die Übergabe der werte machen soll. Es kommt immer zu Fehlermeldungen wie z.B. "invalid conversion from 'const char*' to 'unsigned char' " oder ähnliches. Ich brauche halt einen ansatz wie ich das Temperatur mit ins LCD Programm einbauen kann. Danke dir trotzdem.
Maik Sly schrieb: > Danke, das habe ich schon probiert. > Mein problem ist, beim LCD Programm gibt es Funktionen und ein main > Programm. > Wenn ich das Temperatur Programm in eine Funktion packe weis ich nicht > wie ich die Übergabe der werte machen soll. Es kommt immer zu > Fehlermeldungen wie z.B. "invalid conversion from 'const char*' to > 'unsigned char' " oder ähnliches. Tja. Eines der wesentlichen Dinge lautet nun mal: Du musst deine Programmiersprache lernen. Keiner kann das von Geburt an, wir alle mussten da durch. Wenn dich das überfordert, dann ist das ein sicheres Zeichen dafür, dass du Schritte übersprungen hast und noch nicht so weit bist. Also: eine einfachere Aufgabe suchen, in deinen Lernunterlagen ein paar Kapitel zurückgehen.
Maik Sly schrieb: > DS18x20_Temperature.pde (2,6 KB, 6 Downloads) > LCD_Ausgabe.pde (17,4 KB, 11 Downloads) Wie liest man denn *.pde-Dateien? Fragt sich Harald
> Wenn dich das überfordert, dann ist das ein sicheres Zeichen dafür, > dass du Schritte übersprungen hast und noch nicht so weit bist. Wie ich da drauf komme? Die Demo-Programme, die du dir da zusammengesucht hast, sind so einfach zu verstehen, dass es einfacher schon fast nicht mehr geht. Wenn du da Schwierigkeiten hast, dann ist es ein sicheres Zeichen dafür, dass du sie noch nicht einmal studiert hast und durchgesehen bzw. mit ihnen 'gespielt' hast, was dir diese Demos zeigen bzw. beibringen wollen. Schnapp dir zb das LCD-Demo und specke es ab, so dass du nur eine einzige Zahl ausgeben kannst, die in einer Variablen vorliegt. Alles andere, was dazu nicht notwendig ist fliegt raus.
Harald Wilhelms schrieb: > Maik Sly schrieb: > >> DS18x20_Temperature.pde (2,6 KB, 6 Downloads) >> LCD_Ausgabe.pde (17,4 KB, 11 Downloads) > > Wie liest man denn *.pde-Dateien? Sind Textdateien (aus der Arduino IDE). Die kann man mit einem Texteditor aufmachen. Notepad hat allerdings mit dem Zeilenumbruch so seine Schwierigkeiten - also einen ordentlichen Editor nehmen.
>// Demoprogramm > while(1) { hier machst Du 20 bis dreißig Leerzeilen und fängst dann an Teile aus dem Hauptprogramm des Temperatur Messprogramms einzufügen. > // Zeichenkettenausgaben > printf_lcd(0,0,"LCD DIP204 KS0073",1); Die hier benötigten Funktionen kommen oben davor. und dann Schritt für Schritt erweitern.
Karl Heinz Buchegger schrieb: >> Wie liest man denn *.pde-Dateien? > > Sind Textdateien (aus der Arduino IDE). Danke. Gruss Harald
Karl Heinz Buchegger schrieb: > Tja. > Eines der wesentlichen Dinge lautet nun mal: Du musst deine > Programmiersprache lernen. Tja (ebenfalls). Das Erlernen irgendeiner Programmiesprache ist nicht der erste, sondern der zweite oder gar dritte Schritt. Der allererste Schritt besteht darin, die prinzipielle Funktionsweise einer Hardware zu verstehen, die Befehle ausführen und ein Programm abarbeiten kann. Der nächste Schritt ist das Verstehen von grundlegenden Bestandteilen einer jeden Programmiersprache: Vereinbarungen, Variablen, Programmcode. Danach kommt die Zuwendung zu irgendeiner Programmiersprache. Ich befürchte, unser junger Held steht noch vor dem allerersten Schritt. W.S.
Danke ihr habt mir sehr :-( geholfen. Ich habe ein staatlich abgeschlossenes Studium als Programmierer. Ich habe nur leider nicht die Zeit und wollte mir es einfacher machen und schauen ob mir einer auf die schnelle helfen kann. Aber ich sehe schon das hier nur lauder klug ... sind die mir sagen wollen, lerne Programmieren. (Danke das kann ich schon.) Also stehe ich nicht am anfang, sondern bin auf mich selbst gestellt. Danke euch trotzdem.
Maik Sly schrieb: > Danke ihr habt mir sehr :-( geholfen. > > Ich habe ein staatlich abgeschlossenes Studium als Programmierer. Erzähl deinen Schmäh woanders Selbst wenn du kein abgeschlossenes Studium hast, ist es trivial in beiden Programmen die jeweiligen main() zu studieren und eine neues zu schreiben, in dem beide zusammengeführt werden. Wenn ich das in 20 Sekunden kann, dann wirst du das in ein paar Stunden ja wohl hinkriegen mit deinem abgeschlossenem Studium
vielleicht hätte er das Studium nicht den Staat beenden lassen sondern es selbst machen sollen?!? Ich lach mich weg!
> Ich bin noch ein Anfänger hier und habe folgendes Problem. > Ich habe ein staatlich abgeschlossenes Studium als Programmierer. Ah ja. Allerdings frage ich mich schon, was das für ominöses Studium sein soll. Obwohl, heutzutage mit den neuen Bachelor Dinges kann ich mir vorstellen dass eine Wald und Wiesen Hochschule aufm Dorf einfach mal schnell nen entsprechenden Studiengang "staatl. gerpf. Programmierer" anbietet. Nicht ärgern nur wundern. gruß cyblord
Maik Sly schrieb: > Ich habe ein staatlich abgeschlossenes Studium als Programmierer. Abgeschlossen mit Zwangsexmatrikulation wegen fortgesetzter Lernresistenz? Anders wäre das nicht zu erklären...
Maik Sly schrieb: > Ich habe ein staatlich abgeschlossenes Studium als Programmierer. Dann lass dir mal schnell das Lehrgeld wiedergeben.
Man muß einfach nur das EVA-Prinzip der Datenverarbeitung beherzigen. Eingabe, Verarbeitung, Ausgabe. Anfangs mit Tasks und nicht zeitsynchronen Vorgängen auf realen µC tat ich mir damit schwer, heute geht es. ;-)
Maik Sly schrieb: > Ich habe ein staatlich abgeschlossenes Studium als Programmierer. Fordere doch die Studiengebühren wegen Erfolglosigkeit zurück und beauftrage einen 10-jährigen Hobbyprogrammierer mit deinen Problemen. Die machen das für 5€ und so machst du noch Gewinn.
Das ist garnicht so selten... In meinem TU-Jahrgang haben viele Kollegen 2er-4er auf Programmieren, konnten aber nur exakt die 3 Programme, die im Labor abgeprüft wurden auswendig (bzw. fallweise auch mit Schummelzetteln). Der Hammer war aber jemand, der in der letzten Laborübung das gesamte Programm bereits abgeschrieben hatte, aber dann nicht in der Lage war, die abgeschriebenen Funktionen in der main() in einem Menü aufzurufen weil sie diesmal bisschen anders geheissen haben ;) Und ja, ich musste einem Kollegen auch bei einer Digitaltechnik-Klausur diese Assemblerbefehle per SMS schicken... MOV A, B RRC JC IS_ODD JP IS_EVEN Soviel zu angehenden staatlich geprüften/diplomierten Programmiereren, Programmier-Akademikern, usw... @Maik: Was du mal machst: Du nimmst den Code vom LCD-Display. Hier sehe ich, dass du bereits sprintf drinnen hast (man sollte sprintf auf 8-Bittern vermeiden wenn es geht). sprintf schreibt Zahlen, Strings, Character, ... auf eine bestimmte, formatierte Weise in einen String. Dann gibst du deine Temperaturdaten in einen solchen String und gibst diesen an die LCD-Ausgabefunktion, welche den String ans Display schickt. Habe es jetzt nicht getestet, und keine Lust zu denken wie-was-wo-wann, aber eventuell hilft dir das weiter: http://pastebin.com/0hQGEViS Fehler können natürlich drin sein, aber du weisst jetzt ungefährt, was du tun sollst... Wenn du das geschafft hast, schnapp dir ein C-Buch und lerne die Basics (&, *, Pointer, ...) ordentlich, denn wenn's einmal keinen fertigen Source gibt, was dann? Oder gar noch schlimmer: Keine Library, sondern nur das Datenblatt. Auch das ist manchmal der Fall.
Hehe, ich habe in der Ausbildung auch S7 proigrammieren "gelernt" und war -in der Ausbildung- recht gut darin. Aber beim ersten RICHTIGEN Programm wo ich nen Fehler suchen sollte, hätte man genau so gut die Putzfrau hinstellen können. Ein Zettel wo draufsteht "Ich kann" sagt garnichts, obwohl die meisten Firmen nichts anderes mehr sehen/hören wollen. Beim Studium solltest du ja schon das eine oder andere gelernt haben. Also setz dich mal einen Nachmittag hin und gehe das AVR-GCC Tutorial durch. Damit habe ich von fast Null C für MCs gelernt. Ganz hilfreich für die Basics war auch noch das C-Tutorial von rn-wissen. Also, nimms den Leuten nicht übel, aber von Programmieren in C hast du anscheinend recht wenig Ahnung ;) Noch als Tip: Ich würde beide Programme soweit stripen und ändern, bis ich ihre mains einfach in eine Funktion umbenennen und als Source und Header zu meinem Projekt hinzufügen kann. In meiner Main wird dann einfach alles so aufgerufen, wie ich's brauche^^ Gruss Stefan
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.