Hallo zusammen, arbeite mich gerade in das Thema µC ein. Habe mir dazu das Pollinboard und ein atmega 32 zugelegt. Mir nur das Tutorial durchlesen reicht mir nicht. Wisst ihr wo man Übungsaufgaben bekommen kann. Am besten online und kostenlos vielleicht sogar noch mit Lösungen. Möchte gerne einige Anwendungen machen, damit man die Theorie besser versteht. Z.b Add mit Flag übertragung, Verschiebung vom Bit usw. Solche Sachen würde ich gerne an ein paar Beispielen vertiefen. Gruß,
Welche Prozrammiersprache nutzt du? Das www sollte voll mit Übungen sein. Knut
Hi Steck dir ein Ziel. Schau dir deinen µC an und überleg, wofür du ihn verwenden willst. Angenommen, du willst eine Uhr bauen. Also beginnst du damit, alles über den Timer zu lernen, bis du eine LED im Sekundentakt blinken lassen kannst. Nun kommt der Aufbau der Werte und die Anzeige. Wenn du dich mit Schaltungen erst mal zurückhalten willst, schreib dir eine kleine VB Applikation und lern alles über seriellen Datenaustausch. Nun verbinde µC und PC. Lerne Steuersignale zu übergeben und Daten auszuwerten. Es wird sicherlich hier und da mal stocken und schier unlösbare Probleme auftauchen. Doch lerne diese zu lösen. Irgendwann ist aus deinem Projekt Uhr eine Stoppuhr mit Datenbankhintergrund zur Zeiterfassung für Sport- oder Modellbauanwendung geworden. Oder du steuerst mit der Zeitbasis Vorgänge in deiner Wohnung. Dazu gehört das Abfragen von Türen und Fenstern, ob sie zu bestimmten Zeiten geschlossen waren. Glaub mir, Ideen kommen beim Programmieren. Versuche aus deinen Vorstellungen kleine Aufgaben zu separieren und Schritt für Schritt Module zu konstruieren. Es wird sicherlich ein leines Weilchen dauern, bis greifbare Erfolge zu verzeichnen sind, aber wenn du keinen Lehrer neben dir an der Hand hast, wird's eh auf Eigenstudium hinauslaufen. Übrigends, ich hab ja schon öfter drauf hingewiesen, das ich ein Tool zum Download verfügbar gemacht habe, um einem Controller auf die Variablen zur LAufzeit zu schauen. Findest du unter OpenEye. Gruß oldmax
hallo oldmax, ich hab da mal eine frage zu deinem openexe. du hast ja deinen code in asm gepostet. kann ich den auch irgendwie mit c nutzen? wo muss ich den dort einfügen?
Hallo, Beginner kann es sein das du "Felix" heißt? Egal...also wenn du Aufgaben für den Einstieg haben willst. Dann beginn am besten mit dem Blinken einer LED! Dazu nimmst du dir den Code und zerflückst ihn dir! Damit du erstmal verstehst wie man so im grunde ein Programm aufbaut und beginnt. In "C" sieht das z.B. so aus. #include<avr/io.h> #include<util/delay.h> int main() // Hauptprogramm { DDRB=0xFF; // Defenierung des PORT B als Ausgang PORTB=0; // gesamten PORT B auf "0" while(1) // Schleifen beginn { PORTB = 0x01; // PORTB.0 auf "1" _delay_ms(500); // Wartezeit von 500ms PORTB &=~ 0x01; // PORTB.0 auf "0" _delay_ms(500); // Wartezeit von 500ms } // Schleifen ende return 1; // zurück zu while }
Beginner schrieb: > Mir nur das Tutorial durchlesen reicht mir nicht. Nein. Das LESEN allein reicht auch nicht. Du mußt das Tutorial DURCHARBEITEN und VERSTEHEN. Und dann lass die LED blinken. Danach machst du eine Übertragung mit einer seriellen Schnittstelle. Und dann stellst du z.B. die Blinkfrequnez über die serielle Schnitte ein. Dann irgendwas anderes....
wie ist es hier mit: http://www.mikrocontroller.net/articles/Absolute_Beginner-AVR_Steckbrettprojekte
Danke für eure Antworten: @ Eggi: nein bin nicht flexi. @ all: Dank für die Tipps: Das gibt mir schon mal eine kleinen Richtung. Habe gefragt da ich jetzt aktuell nicht einfach alles bestellen möchte (vom kleinen Motor bis hin zur Segment-Anzeige) für viel Geld und nachher kommt man nicht voran. Hatte gedacht das man erstmal die grundlegenden Sachen vom µC verstehen sollte, bevor man an Anzeigen, Schnittstellen usw geht. Eine Led habe ich schon zum Blinken gebracht. Hatte genau den C-Code der oben gepostet wurde erarbeitet. Werde es aber nun noch mal im Assembler machen. Gruß, Beginner
Hi Noch eine kurze Info zu OpenEye. Das Programm macht nix anderes, als den Inhalt vom SRAM ab einer angegebenen Adresse auf Anforderung zu übertragen. Ich hab es für Assembler gemacht, da ich dann weiß, wo welche Variablenwerte stehen. Natürlich sollte es auch für C oder Bascom gehen, wenn man die Adresse im SRAM weiß. Allerdings ist die Darstellung auf 1 Byte beschränkt. Bspl. Wenn 3 Bytes im SRAM hintereinander definiert und dort Programmstati hinterlegt sind, also Bit x ist Signal für das Durchlaufen von bestimmten Routinen, dann sollte es auch in C möglich sein, der Senderoutine die Adresse dieser Bytes zu übergeben und diese an den PC zu senden. Allerdings müssen dann die Variablennamen von Hand eingeben werden. Der Filter wird nicht funktioniren. Wer mit VB umgehen kann, der dürfte sich auch selbst dieses kleine Tool für seine Bedürfnisse schreiben können. Gruß oldmax
beginner schrieb: > Werde es aber nun noch mal im Assembler > machen Wenn Du schon C programmierst, warum dann Assembler? Du wechselst auch nicht ohne Grund aus einem Mercedes in ein offenes Kart Höchstens mal für einen kleinen Übungsausflug. Axel
@düsendieb: wollte mit assembler beginnen, um die Verarbeitung im µC für den Anfang besser zu verstehen. Wie wird was verarbeitet. Des Wegen wollte ich die ersten paar Übungen in Assembler. Gruß, Beginner
beginner schrieb: > @düsendieb: > > wollte mit assembler beginnen, um die Verarbeitung im µC für den Anfang > besser zu verstehen. Wie wird was verarbeitet. > > Des Wegen wollte ich die ersten paar Übungen in Assembler. > > Gruß, > > Beginner Lobenswert, aber nach den Übungen schnell wieder vergessen und in C programmieren. Und die immer so beliebte "delay" Funktion vermeiden, da in dieser Zeit der Controller nichts abfragen kann. Ein Timer ist da immer besser. Axel
Hi Warum soll er mit Assembler aufhören.. ? Es ist doch die Frage, welches Ergebnis am Ende eines Projektes herauskommen soll und ja, ich steige in ein offenes Kart, wenn die Strecke zufällig einer Rennstrecke gleicht und mir der Mercedes nicht das gewünschte Ergebnis brächte. Oder ich aus unerklärlichen Gründen vielleicht ein wenig aus dem Rahmen fallen würde.... Es ist doch eigemtlich völlig egal, welche Sprache ich spreche, wichtig ist doch das der Kellner mir das richtige Gericht bringt. Gruß oldmax
oldmax schrieb: > und mir der Mercedes nicht das gewünschte Ergebnis brächte. Oder ich aus > unerklärlichen Gründen vielleicht ein wenig aus dem Rahmen fallen > würde.... OK, dann aber auch nur dann ist Assembler gerechtfertigt. Aber für die tägliche Fahrt zur Arbeit, bzw die Lösung fast aller Programieraufgaben da ist der Mercedes und auch C einfach praktischer.
Hi Ok, noch ein klein bisschen Glaubenskrieg.... >Aber für die tägliche Fahrt zur Arbeit, bzw die Lösung fast aller >Programieraufgaben da ist der Mercedes und auch C einfach praktischer. Warum ? Weil es dir liegt ? Du in der Sprache gut bist ? Du nur einen Mercedes hast ? So wie man mit Mercedes täglich zur Arbeit fahren kann, mag es auch per Pedes, mit Fahrrad, mit Mopet, mit Bus, mit Zug, usw. gehen. Zugegeben, nicht immer gemütlich und bequem. Bei den Programmiersprachen gibt's außer Assembler und C noch Pascal und Bascom und vielleicht noch eine Vielzahl anderer Sprachen, die ich nicht kenne. Wer mit Bascom seine Erfolge feiert, ist doch auch zum Ziel gekommen. Warum dann das Ergebnis schlecht reden ? Gleiches glt für Assembler und all die andere Sprachen. Also, ich würd mich da nicht so eingrenzen, was die Programmiersprachen betrifft. Letztlich ist es dem Controller nicht mehr anzusehen, wenn er erst mal läuft und seinen Job macht, ob er mit viel Mühe in Assembler oder mal eben so in einer "Hohsprache" belehrt wurde.... Gruß oldmax
oldmax schrieb: > Ok, noch ein klein bisschen Glaubenskrieg.... Na klar ist das Geschmackssache. Hier im Forum kommen aber häufig Anfänger mit verwuseltem Stack oder bestimmtem Gebrauch von Registern in Assembler nicht klar. Daher "glaube" ich, dass zum Anfang C einfacher ist und es gibt icht so viel Frust. Wenn man den Ehrgeiz hat alles bis ins kleinste Bit zu lernen, dann kommt man nicht um Assembler herum, oder wenn man keine ander Wahl hat und dem Controller bis zum Äußersten ausnutzen muss. Axel
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.