Hallo liebe Leser... ... nach ganz langer Zeit hab ich mich entschlossen, mal wieder was mit µC's zu machen. Toll fand ich die ganze Serie von ATMEL. Dazu hab ich mir mal für ein aktuelles Projekt zum Lernen den ATtiny12 besorgt natürlich Bascom; für'n Anfänger wohl die beste Wahl?!? Um hier aber nicht die ganzen Profis mit meinen profanen Fragen zu nerven wäre es toll, wenn sich hier jemand mit Erfahrung mit dem tiny12 für einen eMail-, ggf. telefonischen Austausch finden würde, der mich bei meinen ersten Schritten unterstützt. Bin gerade schon nach Stunden Rumprobiererei und Anleitung lesen an einem ganz profanem Problem gescheitert. Offensichtlich muss man beim tiny12 einige Besonderheiten beachten, die ich bisher nicht habe finden/lösen können :/ Viele Grüsse Michael Buchholz (646) aka M*I*B * http://CBX-FORUM.de * http://CBX-FIGHTER-CLUB.de Forum * Kalletal - Forum http://kalletown.de (im Aufbau)
Du willst also gewissermaßen einen Privat-Support bzw. Privatlehrer. Wieviel bist du bereit auszugeben? (hint: bei konkreten Fragen wird hier gerne geholfen - kostenlos. dein Posting klingt nach einer "Suche"-Annonce - gegen Bezahlung)
BASCOM is zu weit weg von der Hardware. Damit wirst du den MC nicht kennenlernen. Der Tiny12 ist so klein und damit so überschaubar, dass es der ideale AVR für den Einstieg in ASM ist. Deine Freunde sind AVR-Studio und das Datenblatt. Dazu noch das instruction-set, also die Befehlsliste, die aber auch per Hilfe im AVR-Studio aufrufbar ist. Eine interessante Einführung findest du hier, auch wenn das Projekt zweifelhaft ist und nicht realisiert wurde: http://www.mikrocontroller.net/forum/read-1-113815.html ...
@ Chris ... genau solche Kommentare wollte ich hier im Forum vermeiden; Deine Frage brauche ich wohl nicht zu beantworten ... @ HanneS Mein ursprüngliches Problem habe ich durch einen Zufallstreffer gelöst, aber ein weiteres noch nicht: Ich habe zwei Ausgänge, auf die ich eine Art PWM-Signal schalten muss. Bereich so 100-1000Hz. PWM kann der Tiny12 ja so von Haus aus nicht, also muss ich es irgendwie anders lösen (mit dem Timer?) Dabei kommt es nicht darauf an, das das Signal mit kurzen Aussetzern gestört wird, da da eh später 12V/21W Lampen dranhängen. Die sind reichlich träge ;o) Der Haken kommt jetzt: Jeweils einen der Ausgänge muss ich mit einem 1 - Signal überlagern können bei Bedarf, ohne das das PWM-Signal auf dem anderen Pin abreisst...
Hi... So ganz unrecht hat Chris da aber garnicht... Bei BASCOM werde ich dir nicht helfen, denn ich nutze es selbst nicht. Auch bei Nutzung einer Hochsprache sind Grundlagen in ASM unabdingbar. Und die kleinen Tinys (die ohne SRAM) sind so übersichtlich und überschaubar, da ist ASM angesagt. Du willst also 12V / 21W - Lampen dimmen. Warum mit 1000 Hz?? Die sind doch so träge, dass 50 Hz dicke reichen. Und eine Software-PWM mit 50Hz...100Hz schafft der Tiny12 (in ASM) spielend. Du willst sie zusätzlich einschalten können. Das geht. Wie hoch der Aufwand wird, wird durch die weiteren Umstände der Schaltung bestimmt. Wird die Lowside geschaltet (Lampe fest an +12V), dann wird es einfacher, muss man die Highside schalten weil die Lampe fest an GND liegt, wird es etwas aufwendiger. Ist aber alles im Rahmen des Machbaren. Lies dir aber erstmal den oben genannten Link durch und versuche es zu verstehen. Schlage dazu auch im Datenblatt des Tiny12 und Tiny15 nach. Denn ich habe keine Lust alles doppelt und dreifach zu erklären. ...
... das, was mich an Chris seiner Aussage gestört hat, ist die Sache mit dem bezahlen. Wenn ich das wollte, hätte ich ein Pflichtenheft erstellt und das an einen Programmierer abgegeben. Ich möchte aber gerne was lernen und ich denke, das ist auch aus meinem Initialartikel klar hervorgegangen. Und jeder, der sich ohne fremde Hilfe was beigebracht hat, wird mir sicherlich Recht geben, wenn ich behaupte, das er viele falsche Wege gegangen ist, vor denen ein Tutor ihn sicherlich bewahrt hätte, ohne den eigenen Stil zu unterdrücken. Sicherlich kann man sich sowas auch aus Lehrbüchern u.s.w. beibringen, aber i.d.R. entspricht der Stil in den Dokumentationen in den seltensten Fällen dem eigenen Stil. Was die Sache selbst betrifft: Ich sagte ja, das es nicht so darauf ankommt. Aber 50Hz ist etwas wenig, da u.U. dort auch LED-Leuchten drankommen. Und da sieht man das bei PWM sehr wohl, erst recht, wenn dann noch kleinere Aussetzer durch Interrupts o.ä. hinzukommen. Aber gemach ;) Hab ja gestern Abend, nachdem ich meine 2 jährige Tochter ins Bett gebracht hatte, erst mit der Sache angefangen. Und dafür hab ich schon ein funktionierendes Progrämmchen hinbekommen, welches ausser der PWM-Geschichte schon so tut, wie ich mir das vorgestellt habe... Baba Micha
Da liegts Du aber ein wenig falsch mit Deiner Meinung! Habe selbst PWM für LED´s in 100 einstellbaren Stufen gemacht (LCD-Backlight) und ab 50Hz sieht man nichts flimmern da 1. unsere Augen recht träge sind (siehe Fernseher mit 50 Halb-/25 Vollbilder) und 2. auch die LED´s eine Nachleuchtzeit haben. Habe es zwar mittlerweile logarythmisch in 32 Stufen umgestellt wo bei es dann auf knapp über 200Hz kommt (10KHz/46) aber ab 50Hz flimmert für uns nichts mehr. PWM macht man normaler weise sowieso mit Timer-Interrupt und da wird das PWM nicht von Interrupts gestört, wenn, dann wird das nicht so zeitkritische "Main-Programm" vom PWM-Interrupt gestört, aber da ist es ja egal. Du kannst auch Leuten wie Hannes ruhig glauben schenken da solche Leute aus Ihren eigenen Erfahrung sprechen und um was zu kapieren mußt wohl auch Du erst mal Deine eigenen Erfahrungen machen in dem Du auch das versuchst nachzuvollziehen was andere Dir raten. Gruß Andi
... nun ja ... Mit Interesse alles gelesen; nur weitergeholfen hat's mir bisher nicht die Bohne. Aber das kenne ich schon aus unseren Foren: Die ursprüngliche Frage wird, wenn überhaupt, erst am Ende nach Tagen oder Wochen beantwortet, weil einjeder erstmal ins kleinste Detail geht und sich so der Thread in viele kleine Schnippsel zerfläddert; da mache ich auch niemandem einen Vorwurf. Ist halt so ... Einen Tutor habe ich inzwischen auch gefunden, der zufälliger Weise an einem ähnlichen Projekt arbeitet, wobei ich nicht sagen will, das ich auch gerne einen Zweiten begrüssen würde ;o) Aber die meissten hier machen wohl alles in Assembler... So weit bin ich noch lange nicht. Ich weiss, das ASM in fast allen Belangen besser ist als eine Hochsprache, aber ich fange trotzdem erstmal mit Bascom an, zumindest so lange ich mit dem Tiny12 rummache und so lange mein Vorhaben in den Speicher passt... Dank Euch allen Micha
Wenn du eine Hochsprache nutzt um dich vor ASM zu drücken, dann wirst du nach einigen "schnellen Erfolgen" fürchterlich auf die Nase fallen, weil die Hochsprache (besonders BASCOM) zu weit von der Hardware entfernt ist und du nicht kapieren kannst, was im MC eigentlich vorgeht. Und ich denke mal, du möchtest "Hardware" (Ports, Timer, A-Comp...) mit deinem Programm ansprechen. Eine PWM mit mehreren Kanälen mit 100 Stufen geht übrigens mit 150Hz wenn die ISR alle 100 Takte aufgerufen wird und der Oszi des Tiny12 auf 1,2MHz calibriert wird. In ASM kann ich die (benötigten) Takte zählen, in BASCOM sterbe ich dumm. Also mach dein Ding, mir soll es recht sein. Viel Erfolg ...
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.