AVR, Pollin-Board und Co. ---> Tutorial gesucht

  • Hallo erstmal!


    Bin Neu hier, aber schon lange in der LED/ Elektronik-Branche. Da ich bis jetzt alle Projekte mit Transistor , ttl (n555+Co) gelöst habe, bleibt mir wohl für mein neues Projekt keine andere wahl um auf die AVR-geschichte zurück zu kommen. Ich hätte zwar die möglichkeit es nach dem alten schema zu bauen, aber ich wollte jetzt mal dem Feind (AVR) ins Auge schauen! :twisted:
    So jetzt zum Problem:
    Ich habe das Board von Pollin bestellt + atmel16,atmel32,atmeltiny + kabel+netzteil
    Sooo, ich habe mir schon viele Tutorials durchgelesen, auch das von hier!
    Das Problem bei mir ist, ich check fast garnix #-o
    gibt es dein kein Tutorial was fogendes beinhaltet :


    * komplett aufs pollin board basiert(sprich: wo dann nicht zwischendurch von anderen boards gesprochen wird)


    * Anleitung von anschliesen des boards(evtl. jumpern) bis zu programmierung (zb.bascom inkl. grundbefehle) bis hin:"so, habe jetzt den chip programmiert,ja und jetzt?"


    *progammierter chip verwenden ,aber wie ??(kann man dann den chip aus dem board rausnehmen, dann einfach batterie drannklemmen und zb. ein paar leds und schon funktionierts? oder muss man für den chip noch eine "vorschaltung" bauen mit zb. Quarzen oder so??


    *ein einfaches beispiel zb. 2 LEDS auf einer Punktraster und evtl. einen sockel für den chip. sooo, die 2 LEDS sollen blinken ! halt ein einfaches beispiel ( mir ist schon klar das dieses beispiel eine verschwendung des chips wäre, und es genauso mit einen ne555 realisierbar wäre)


    also kurzgesagt ein tutorial für blöde :oops:



    cu
    steve-stiffbone

  • Willkommen im Forum!


    Das Pollin Board ist nur ein Board unter vielen. Wirklich peziell ist daran nichts. Was genau du damit machst, entscheidest du, Anwendungen gibts vom LED-Blinker bis hin zu GPS-gestützen Systemen und darüber hinaus.


    Im Prinzip sind am Board erstmal folgende Teile interessant:
    - PC RS232 -> ISP - Hierüber gelangt das eigentliche Programm in den AVR
    - ISP-Wannenstecker - Ein externer ISP, um verbaute Schaltungen neu zu programmieren. Die Schaltung braucht dann natürlich auch einen passenden Stecker mit Verbindung zu MISO MOSI SCK RESET VCC und GND.
    - Der Erweiterungsslot - auf dem 40-poligen Wannenstecker liegen (fast) alle Pins der IC-Fassungen an. Man nimmt ein altes ATA-Kabel, schneidet an einem Ende den Stecker ab und kann damit wunderbar z.B. das Steckbrett ansteuern, ohne den µC aus dem Eval-Board zu nehmen.
    - RS232-Port - Hiermit kann der AVR über serielles Protokomm mit dem PC sprechen. Der Pegelwandler MAX232 sorgt für die spannungsmäßige Umsetzung der AVR-UART (+5V) auf PC-Seriell (±15V).


    Das Pollinboard ist recht simpel gestrickt, ein STK500 z.B. ist da VIEL komplizierter!
    Konfigurieren kann man nicht alzuviel - einige der Pins sind halt mit LEDs, Tastern, Summer und RS232, etc. verbunden - das kann man über die Jumper 1-12 einstellen. Hier kann man auch Fehler machen - wenn man z.B. einen verwendeten Pin noch auf der RS232 liegen hat, dann wird das nix.


    Zur Programmierung in Bascom:
    - Das aktuelle PDF-Handbuch laden und lesen/verstehen! Nicht in einem Rutsch, aber es schadet nicht, sich mal all die möglichen Befehle/Funktionen anzusehen - das inspiriert auch.
    - Als Wissensbasis lohnen sich folgende Seiten:
    http://www.qsl.net/pa3ckr/index.html
    http://avrhelp.mcselec.com/bascom-avr.html - 1:1 Version des Handbuchs in html
    http://www.roboternetz.de/phpBB2/viewforum.php?f=32 Sehr gutes Forum, viele wirkliche Coder an Bord. Da findet man zu jedem Problem ne Lösung, bzw. Hilfe/Rat
    http://www.mcselec.com/index2.…c405f6c932b09ddfa964a3080 Herstellerforum in Englisch. Auch hier schwirren ein paar echte Software-Helden rum
    http://www.mikrocontroller.net/ Eher eine Quelle für C-Code und ASM wie ich finde.


    Für die Foren gilt: Erst Handbuch lesen, dann fragen! Ich finde meist alles was ich brauche per Suche im PDF. Auch sollte man bei konkreten Code-Problemen den Code auch dazupacken.


    Betrieb des AVRs ohne Board:
    Kein Problem, da brauchts echt nicht viel:
    - VCC - im Datenblatt stehen die Spannungen im Vergleich zum möglichen Takt. Manche AVRs kommen mit 2V klar, andere brauchen immer 5V. Insgesamt sind die Teile recht genügsam und auch tolerant, nur mehr als 5V sollte man ihnen nicht füttern.
    Am einfachsten geht das alles mit Festspannungsreglern 7805 z.B. für +5V, aber auch Batteriebetrieb geht.
    - Stütz-Kondensator - von VCC zu GND sollte ein Kondensator geschaltet sein, vor allem, wenn man z.B. 10 LEDs schaltet aus der selben Quelle. Im schlimmsten Fall funktioniert das Lauflicht sonst bis zu der Stelle mit 5 LEDs und danacht resetet der AVR wegen Spannungsschwankungen wieder.


    Dein Blinklicht ist wirklich einfach, das solltest du selber rausfinden können ;)
    Von Pollin gibts inzwischen auch ein kleines Code-Beispiel: http://www.pollin.de/shop/downloads/D810038S.ZIP
    Nimm als erstes mal den Mega16, pflanz den in das Board und versuch mit PonyProg das .HEX reinzuflashen. Wenn das geht, dann kanns losgehen.
    Als nächstes dann das .BAS in Bascom laden und drin rumspielen.
    Dann in den Keller, alte Elektrogeräte aufschrauben und überlegen, welches Teil du gerne recyceln würdest ;)

  • Stimmt es hilft nur für den allerersten Test, denn mein Fehler ist nicht enthalten :)


    Hab einen ATMega8, das Testprogramm läuft ohne Probleme, aber sobald ich etwas eigenes draufspiele leuchtet IMMER nur die LED1 egal ob sie angesteuert werden soll oder nicht.
    Sie leuchtet sobald das Programm übertragen wurde. Woran kann das liegen ?


    MfG

  • Ich glaub es lag daran das ich mir irgendwie den ATMega8 zerschossen hab...


    Mit 'nem ATMega16 funktioniert es,(ist nur einfaches abwechselndes Blinken) obwohl ich die Definitionsdatei nicht verändert habe :)


    Irgendwie sinds bisher immer nur 'Kleinigkeiten' die Fehler bei mir verursachen ob das nun Glück ist oder nicht muss jeder für sich selbst wissen :)


    MfG

  • Wenn du zwischen dem Mega8 und 16 wechselst, musst du aber die Datei ändern. Der Compiler muss doch wissen in welchen Code er compilieren soll.
    Mega8: $regfile = "m8def.dat"
    Mega16: $regfile = "m16def.dat"

  • Wollte mich erstmal ganz GROß bei euch bedanken! =D> =D> =D>


    Hätte nicht gedacht das so schnell antworten kommen!!
    Werde mich da jetzt mal durch wurschteln !
    Aber das Thema Atmel + co ist echt sehr erschreckend für mich!
    dank eurer hilfe werde ich es schon irgendwie schaffen! :oops:
    Ach was ich noch fragen wollte,passt zwar hier nicht rein aber denoch mal die frage, gibts für dieses Forum einen RSS-Feed?? wäre echt super!!


    Ach, nochwas !! Was sind den fusebits???



    cu.
    steve-stiffbone

  • Oh ha,
    du mußt wirklich noch viel lernen :lol:


    Also mit den Fusebits stellst du im Prinzip ein,
    wie sich der AVR verhalten soll, bzw. wie die
    PIN´s beschaltet werden.


    Du kannst damit z.B.: festlegen, ob er mit einem internen
    Taktgeber arbeitet, oder ob du ein Quarz angeschlossen hast.
    Du kannst damit auch festlegen, wie sich der Reset-PIN
    verhält usw. usw.
    Und ganz fieß : du kannst den AVR damit sogar "töten"


    Am besten mal das Datenblatt zu Gemüte ziehen, und dort bei
    den Fusebits nachschauen.

  • Oh Oh Oh! #-o :-k #-o


    Das sieht wohl so aus als wäre das doch komplizierter als ich dachte!!
    nicht genug das man erstmal die befehle einigermassen kennen sollte ,sondern dann noch die geschichte mit den fusebits! oh oh oh !


    zwischenfrage: wie schwer ist es einen 3D LED Cube (3 * 3 *3 ) zu bauen mit externer Platine, damit meine ich eine seperate Platine wo die schaltung ohne dem programmer-board läuft.?

  • Schwer! Vor allem brauchst du auch erstmal einen geeigneten Controller! Welche LED´s willst du verwenden? RGB? Soll wahrscheinlich so wie dieser 3D Borg werden oder?
    Find die Idee echt geil aber bis man sowas programmieren kann muss man sich erstmal mit dem ganzen mC Zeug auskennen und viel viel lesen! Ich hab aber selber erst vor kurzem angefangen und wenn man erstmal die Grundkenntnisse hat machts auch schon Spass, also lass dich nicht entmutigen! Immerhin ist noch kein Meister vom Himmel gefallen.
    Bin auf jeden Fall gespannt...


    Gruß

  • Naja ein 3^3 cube sollte noch im Rahmen des machbaren liegen.


    Vom Prinzip her würde ich es so machen: Du nimmst dir 9 Pins deines AVR, 3 davon zur bestimmung welche der drei ebenen du ansteuern willst. 3 weitere zur Ansteuerung der Spalte und die letzten drei zur Ansteuerung der Reihe.


    Das erstmal so als groben Überblick über das Konzept, den Rest kannst du dir ja mal selber überlegen. Aber =; bevor du jetzt direkt loslegst und dir tolle Effekte ausdenkst solltest du erstmal probieren den Controller so zu programmieren dass du bestimmte einzelne LEDs ansprechen kannst, bzw ein paar. Der Witz an der Sache ist nämlich, dass du die einzelnen LEDs sequentiell ansprechen musst und nicht parallel ansprechen kannst.


    So und jetzt viel Spass \:D/

  • ahh ok! verstehe! Thx!


    Weiss denn einer von euch wo der ursprung dieser cubes herkommt? Oder was die generell für einen sinn haben?? warum hat einer mal so einen cube gebaut? Oder dient der Cube nur für reine simulations zwecke?
    Werden die effekte bei den cubes per Musik geändert (gesteuert) oder läuft da nur das programm des chips herunter?

  • Also der Würfel wurde schon vor einiger Zeit erfunden, die Patente sind aber abgelaufen, daher darf heutzutage jeder einen Würfel bauen! :-%


    Aber mal im Ernst: Keinen Schimmer, wos herkommt, sieht halt nett aus, oder? Und was soll man damit simulieren?
    Der dekorative Effekt steht sicher im Vordergeund, aber man kann mit größeren Würfeln schon super Sachen machen. Such mal auf Youtube nach "LED Cube"!


    Musik-Effekte und ähnliches sind halt dann ne Sache der Ansteuerung. Aber Audio ist schon recht komplex...