Hallo zusammen, ich habe im Internet sehr lange gesucht aber keine Antworten gefunden, ich hoffe ihr könnt mir bei meinem Projekt helfen. Ich muss für mein Projekt einen Wecker programmieren mit dem MSP430F149 Board habe aber keine Ahnung wie ich das mache. Hab bis jetzt nur den Interrupt eingestellt der jede Sekunde läuft und den Pragma Vector, ich weiß aber nicht wie ich jetzt weitermachen soll. Ich hoffe ihr habt da ein bisschen Codebeispiele für mich Projekt: Einen Wecker programmieren den man stellen kann und es am Display ausgeben
Klaus Hunkelmann schrieb: > Ich hoffe ihr habt da ein bisschen Codebeispiele für mich Vor Codebeispielen kommen Überlegungen. Und die sind in Deinem Fall so grundlegend, daß es gar nicht auf den verwendeten Controller ankommt. Du musst Dein Projekt in mehrere Teile zerlegen. Ein Teil beispielsweise ist das Ansteuern eines Displays, ein darauf aufbauender das Ausgeben einer Zeitinformation auf diesem Display. Ein weiterer Teil ist dann das interruptgesteuerte Aktualisieren einer Zeitinformation, und zu guter Letzt willst Du Deine Uhr/Deinen Wecker auch noch stellen können. Also brauchst Du noch Funktionen zur Ansteuerung von Bedienelementen, und da das ganze ein Wecker werden soll, auch zur Ansteuerung von etwas, was Krach macht. Das ganze kannst Du --bis auf die ganz hardwarenahen Dinge-- erst mal mit Papier und Stift aufmalen. Struktogramme sind da gar nicht so unpraktisch, wie Du sicherlich schon in Deinem Unterricht/Deiner Lehrveranstaltung gelernt haben solltest. Und dann kommen die hardwarespezifischen Dinge ins Spiel. Warum aber verwendest Du so einen steinalten MSP430-Vertreter wie den 'F149?
Das ist ein Schulprojekt und wir müssen den MSP430F149 verwenden, normale Ausgaben am Display kann ich ja ausgeben aber ich weiß nur nicht wie ich das mit dem Wecker hinbekommen soll. Und ja die Programmiersprache ist C
Naja, ich habe Dir ja schon ein paar Hinweise gegeben. Setz Dich hin, und überlege. Kein Programm schreiben, sondern ein Struktogramm, oder ein Flussdiagramm, oder was auch immer Dir hilft, Deine Gedanken zu sortieren. Wenn das zu kompliziert erscheint: Überleg' einfach mal, was ein Wecker macht. Und schreib Dir das in Stichpunkten auf. Stell Dir vor, Du müsstest jemandem, der nicht weiß, was eine Uhr ist, beschreiben, wie eine Digitaluhr funktioniert, und stell Dir dann vor, Du müsstest demjenigen auch noch beschreiben, wie ein Wecker funktioniert.
Hier ist alles was Du brauchst. Auch der Code. Viel Spass beim Hausaufgaben machen :) http://www.43oh.com/2010/08/an-msp430-based-clock/
Wissenwollender schrieb: > http://www.43oh.com/2010/08/an-msp430-based-clock/ Da ist aber kein Quellcode dabei... Klaus Hunkelmann schrieb: > Ich check das nicht :/ Stell konkrete Fragen und zeige dass du dich mit der Materie beschäftigt hast, dann wird dir geholfen. Deine Hausaufgaben wird hier keiner machen. Rufus hat genug Tipps gegeben.
Klaus Hunkelmann schrieb: > Ich check das nicht :/ Was checkst du nicht? > Hab bis jetzt nur den Interrupt eingestellt der jede Sekunde läuft > und den Pragma Vector, ich weiß aber nicht wie ich jetzt weitermachen > soll. Vor den Wecker haben die Götter die 'Uhr' gestellt. Also wird ja wohl das dein erstes Zeil sein. Pfeif erst mal auf alles andere, wie Wecker oder Eingabe bzw. Uhr stellen. Sieh einfach nur mal zu, dass du aus deiner '1 Sekude' eine Uhr machst, die du dann auch tatsächlich an deinem Display laufen siehst. Das ist dein erstes Ziel! Alles andere kommt später. In Etappen arbeiten. Du siehst momentan nur einen Wecker mit allen möglichen Features vor deinem geistigen Auge und diese 'VIelfalt' raubt dir die Courage. Aber das muss nicht sein! Teil dir dein Projekt in Abschnitte ein. Um einen Wecker zu bauen, brauchst du erst mal eine laufende Uhr. Um eine Uhr prinzipiell zum laufen zu bringen brauchst du erst mal keine Eingaben. Also ist das dein erstes Ziel: Die Uhr muss laufen. Dann überlegt man sich ein Bedienkonzept, wie man die Uhr stellen könnte. Anleihen an im Haushalt befindlichen Digitaluhren zu nehmen, ist da nicht schlecht. Wieviele Tasten bzw. Knöpfe haben die? Wie werden sie eingesetzt? Läuft die Uhr und kann man sie auch stellen, ... erst dann wird der Wecker das erste mal interessant. Was macht denn ein Wecker? Er gibt zu einer bestimmten Uhrzeit laut. Er klingelt um 7:00, weil die interne Uhr des Weckers, die die ganze Zeit dahintickt, mit der eingestellten Weckzeit von 7:00 übereinstimmt. Aber das ist alles noch Zukunftsmusik. Erst mal brauchst du eine hundsordinäre Uhr. Und wie die funktioniert, wenn du einen 1-Sekundenanstoss hast - na das wirst du ja doch wohl wissen! Setz dich hin und überlege, wie die Einzelteile zusammenspielen könnten. Erst mal nur für eine Uhr. Grundgedanke: Du hast eine Funktion, die automatisch alle 1 Sekunde aufgerufen wird. Wie machst du daraus eine 24-Stunden Uhr. Weiterer Grundgedanke: das Hochzählen der Uhr kann ruhig in diese Interrupt Funktion. Aber die Ausgabe nicht. Ausgaben gehören da nicht hinein. Wie können daher diese beiden groben Teile - 'Uhrwerk' und 'Ausgabe' - zusammenspielen? Ignorier erst mal alles andere und sieh zu, dass du dafür eine vernünftige Lösung kriegst.
Bis jetzt habe ich nur diesen Teil, ich habe kaum Erfahrung wie man an einem MSP programmiert, deswegen die Frage: hat keiner Code-Beispiele für mich! Ich weiß nicht wie ich damit anfangen soll.. Der Interrupt ist jetzt, denk ich mal, soweit fertig, nur die Programmierung des Weckers weiß ich nicht und Internet hilft auch nicht weiter, deswegen bin ich hier im Forum.
Klaus Hunkelmann schrieb: > hat keiner Code-Beispiele für mich! Du brauchst keine Code-Beispiele. Du musst Dir erstmal darüber klarwerden, wie Du Deine Problemstellung lösen kannst. Wenn Du ein Haus bauen möchtest, brauchst Du auch zuerst ein Grundstück mit einem Fundament drauf, bevor Du Dir Gedanken über die Farbe des Sofas machst, das im Wohnzimmer stehen soll.
Klaus Hunkelmann schrieb: > Der Interrupt ist jetzt, denk ich mal, soweit fertig, nur die > Programmierung des Weckers weiß ich nicht und Internet hilft auch nicht > weiter, deswegen bin ich hier im Forum. Das schaut ja schon mal ganz gut aus... Wecker heißt: Lärm machen, wenn aktuelle Uhrzeit == Weckzeit Also Bestandteile der Uhrzeit mit den Bestandteilen der Weckzeit vergleichen. Wenn alles gleich ist, Alarm starten bis ein Taster gedrückt wird. Ich würde das aber nicht im Interrupt machen.
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.