Hallo zusammen! Für mein Abschlussprojekt brauche ich einen Bewegungssensor. Aber einfach einen fertigen kaufen und in mein Programm einbinden ist leider nicht.. Deshalb soll das ganze jezt mit einem Beschleunigungssensor (ADXL345 Breakout Board von Sparkfun) und einem uController umgesetzt werden. Dafür verwende ich das Crumb644 V1.1 AVR ATmega Modul und zum Programmieren das Atmel Studio. Nur leider bin ich wenns ums Thema uController geht ziemlich blank. Hab zwar schon einige kleiner Programme mit dem ATMega32 programmiert(LED blinken, Lauflicht) aber da war schon fast alles fertig eingestellt, musste eigentlich nur die Pins richtig ansteuern :P Meine Probleme habe ich jezt also mit den Grundlagen, wie man den USART initialisiert bzw. damit senden und empfangen kann oder wie ich zwischen Sensor und Controller mittels SPI kommunizieren kann. Ich habe mir schon ein paar Testprogramme runtergeladen und mir das UART Tutorial hier angesehen aber ich blick leider nicht wirklich durch :/ Wäre echt toll wenn mir jemand helfen könnte bzw. sagen kann wie ich am besten vorgehe und wo ich Anfangen soll. Danke schon mal im Vorhinein (: Gruß Jaki
:
Bearbeitet durch User
Jaki Langthaler schrieb: > Ich habe mir schon ein paar Testprogramme runtergeladen und mir das UART > Tutorial hier angesehen aber ich blick leider nicht wirklich durch :/ Was genau durchblickst du nicht? Denn eigentlichg ist es ziemlich einfach. Eigentlich so wie immer: erst mal wir die 'Komponente' entsprechend konfiguriert, was einem Setzen von diverser Bits bzw. Zahlenwerten in diversen Registern entspricht. Um die Komponente dann tatsächlich zu benutzen, müssen diverse Bits oder wie hier bei der USART Zuweisungen an ein Register gemacht werden. Bei der USART ist es eben die Zuweisung an UDR, welches das versenden genau dieses zugewiesenen Byte-Wertes in die Wege leitet. Eigentlich recht simpel, wenn da nicht die Nebenbedingung wäre, dass die Baudrate stimmen muss, sonst versteht das Gegenüber nur Bahnhof. Daher: UART erst mal testen, indem man vom µC zum PC (dort ein Terminal-Programm laufen lassen) sendet. IM Terminal sieht man dann sehr schnell, ob das vom AVR gesendete dort auch wirklich korrekt ankommt. > > Wäre echt toll wenn mir jemand helfen könnte bzw. sagen kann wie ich am > besten vorgehe. Mit nicht zu komplexen Dingen. Mit einfachen Sachen anfangen. Auch Rom ist nicht an einem Tag erbaut worden. Daher: nicht den Überblick verlieren, indem dir der Sensor die ganze Zeit im Hinterkopf rumspukt. Mach dich frei davon. Dein Augenmerk gilt momentan der UART und sonst nichts. Der AVR soll über UART etwas ausgeben. Was das ist, was er ausgeben soll und wo und wie du zu den Werten kommst, das kommt später. Im Moment reicht es, wenn du einen Text am Terminal ausgeben kannst und auch im Detail verstehst warum und wie das funktiniert bzw. wie das programmiert wird. > Hab zwar schon einige kleiner Programme mit dem ATMega32 > programmiert(LED blinken, Lauflicht) aber da war schon fast > alles fertig eingestellt, musste eigentlich nur die Pins richtig > ansteuern Das sind natürlich nicht unbedingt ideale Voraussetzungen.
:
Bearbeitet durch User
Danke für die schnelle Antwort! > Was genau durchblickst du nicht? Ich habe schon Probleme beim erstellen eines neuen Projekts im AVR Studio. Da brauche ich ja das richtige Board. Hab zwar eins mit dem ATMega466 drauf gefunden aber da ist er auf einem anderen Board. Kann ich das trotzdem verwenden? Auf der Seite wo ich das Crumb Modul bestell habe (chip45.com) habe ich auch eine AVR Toolchain gefunden weiß aber leider nichts damit anzufangen.
AVR-Studio oder Atmel-Studio? Auf dieser Ebene wichtig ist erst mal, dass die Einstellung für den µC stimmt. Denn der bestimmt, wie die Register heißen und was du in ihnen enthaltenen Bits bedeuten. Um zu kontrollieren, ob du das im Griff hast, kannst du ja mal deine LED-Beispiele von 0 beginnend nochmal nachbauen. Dann siehst du sehr schnell, ob du das richtige Board hast oder nicht.
Das Problem ist, dass ich das Board erst am Freitag bekomme aber ich bis dorthin schon funktionierenden Code haben soll :P Aber das LED Programm werde ich testen sobald ich kann. > AVR-Studio oder Atmel-Studio? Atmel-Studio hab ich gemeint, sorry!
Wie gesagt: das Board ist nicht so wichtig. Wichtig ist, dass du für den richtigen µC programmierst. Wo sich die Board-Einstellung im Atmel-Studio tatsächlich auswirkt, weiß ich ehrlich gesagt gar nicht. Ich denke mal, dass die erst beim Brennen auf den µC wichtig wird.
Jaki Langthaler schrieb: > Das Problem ist, dass ich das Board erst am Freitag bekomme aber ich bis > dorthin schon funktionierenden Code haben soll :P Aber doch nicht die volle Kombination "Beschleunigungssensor - SPI - µC - USART - PC". Das ist völlig illusorisch, bei deinen Vorkentnissen. Da wäre es noch einfacher, wenn du am Freitag deine erste Herztransplantation machen sollst. Mit nichts weiter in der Hand als dem Wissen wie man ein Butterbrot schmiert.
:
Bearbeitet durch User
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.