Ich habe mir ein Mikrocontroller Lernpaket mit einem tastenprogrammierbaren HT46F47E Controller http://www.ak-modul-bus.de/stat/ht46f47e_mikrocontroller.html gekauft und komme damit auch schon so einigermaßen zurecht. Das gute dabei ist, das ich dazu keine Programmiersoftware brauche. Man kann ihn einfach mit Tastern programmieren, was ich allerdings gerade noch versuche zu verstehen. Trotzdem habe ich mir heute gleich einen ATMEGA328P-PU dazu gekauft. Gehe ich richtig in der Annahme, das ich unbedingt einem Arduino oder einem Programmierkarte (Programmer) brauche um den zu programmieren? Kann ich ohne Programmer nur auf dem Breadboard mit Bauteilen überhaupt erste Gehversuche mit dem Atmega wagen? mfg
:
Verschoben durch Moderator
Für den ATMega brauchst Du mindestens einen AVR-ISP-Programmer. Wenn Du die Luxusversion willst, besorg Dir ein STK-500 oder so. Die Software gibts kostenlos im Internet, z.B. das AVR-Studio direkt von Atmel oder AVR-GCC.
Hallo Manuel Du benötigst einen Programmer, um die Software aufzuspielen. Von Haus aus, macht der Mikrocontroller grundsätzlich nichts. Programmieren kannst du den Chip auch über einen Arduino. Siehe hier: https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard Alternativ kannst du auch, wie von magic_smoke vorgeschlagen, einen teureren Programmer bschaffen. Da gäbe es auch noch die preiswerteren USBTinyISP und USBasp. Am einfachsten nimmst du für erste Versuche die Arduino IDE. Da brauchst du nur wenig Aufwand, bis du eine lauffähige Entwicklungsumgebung hast. Grüsse
Ok ich verstehe, super, danke für eure Antworten. Noch eine Frage: Den mit Arduino IDE programmierten Chip kann ich dann einbauen wo ich möchte oder? Also wenn ich jetzt mit dem Atmega Chip und der Arduino IDE eine Schaltung mit Feuchtigkeitssensor und Luftbefeuchter programmiere kann ich dann den Chip ausbauen, in eine "echte" Dose (ohne Arduino) einsetzen, verkabeln und das läuft? mfg Manuel
:
Bearbeitet durch User
Manuel B. schrieb: > Noch eine Frage: Den > mit Arduino IDE programmierten Chip kann ich dann einbauen wo ich möchte > oder? So ist es.
Du kannst auch alternativ einen A.Nano verwenden. Der einen ATeg328p, hat die Größe eines (breiten) DIL32 Gehäuses (also DIL40 eine ATmega32 in etwas kürzer), paßt in Steckbrett oder Fassung und hat alles, was es braucht um ihn über MicroUSB zu programmieren (per A.IDE oder AVRdude). Experiment verlaufen einfacher, wenn man nicht Rätseln muß, warum der Quarz nicht tut ;-) Programme darf man natürlich in jeder Sprache schreien, solange sie AVR-MaschinenCode generiert. Das muß nicht "Arduinisch" sein.
magic s. schrieb: > Luxusversion willst, besorg Dir ein STK-500 Luxusversion ist ein SDK600 + AVR ONE!
Hallo Manuel, ich arbeite unter anderem auch mit dem 328p (DIL28-Gehäuse). Entweder du besorgst dir ein Arduino UNO oder duemilanove (den habe ich von Fritzing) oder du baust dir ein Arduino ISP Programemr. Ich habe mir solch einen ISP-Programmer sowie einen normalen AVRISP mk2 gebaut. Das ganze natürlich auf Arduino Basis. Alle beide Programmer funktionieren über die Arduino-IDE sowie auch über das AtmelStudio. Diese Programmer habe ich mir gebaut um meine µC auf meinen eigenen Platinen zu programmieren. Gruß Alex
Danke euch, ich werde mir einen Arduino Uno kaufen. Wenn ich den Chip auf einem Brett habe, kann ich den dann direkt mit einem 5V Adapter von der Steckdose betreiben oder muss ich dazu die Schaltung mit Kristall, Kondensatoren etc. wie hier ( https://www.arduino.cc/en/Main/Standalone ) gezeigt bauen?
Ja kannst du. Der Quarzt ist optional. Aber auf den 100nF Kondensator nahe am Chip zwischen VCC und GND solltest du nicht verzichten. Also im Minimalfall brauchst du ein netzteil bzw Batterie, den Chip, einen Kondensator und natürlich eine Platine oder ein Steckbrett. Falls du ohne die Arduino Umgebung (back to the Roots) arbeiten möchtest, hilft Dir vielleicht auch diese Anleitung: http://stefanfrings.de/avr_hello_world/index.html
Stefan U. schrieb: > Ja kannst du. Der Quarzt ist optional. Moment! Ein ATmega328 der auf einem Arduino Dienst tat (also den Arduino Bootloader drauf hat) der hat auch die Fuses so gesetzt daß er einen externen Quarz oder Resonator braucht. Wenn man ihn in einer Anwendungsschaltung ohne Quarz betreiben will, dann muß man vorher die Fuses wieder auf den internen Oszillator umstellen. Wenn man allerdings so weit ist, daß man Fuses umstellt (wozu man sowieso einen ISP-Adapter braucht) dann stellt sich andererseits die Frage, warum dann überhaupt erst einen Arduino verwenden. Langer Rede kurzer Sinn: der ATmega vom Arduino-Board braucht in der freien Wildbahn einen Quarz und zwei 22pF Kondensatoren.
Manuel B. schrieb: > Kann ich ohne Programmer nur auf dem Breadboard mit Bauteilen überhaupt > erste Gehversuche mit dem Atmega wagen? Nicht wirklich sehr praktikabel, aber: Könnte man wenn man seeeehr sehr verzweifelt oder gelangweilt ist das ISP-Programmieren nicht eigentlich auch "per Hand" mit ein paar Tastern machen? Hat ISP eine Mindesttaktrate? Ich meine mich zu erinnern dass die AVRs im Prinzip einen vollstatischen, also beliebig langsamen Betrieb erlauben... Eine blinkende LED kann man z.B. in Assembler mit ca 40 Byte erschlagen. 320 Bit, also 320 mal eine oder zwei Tasten drücken...
Hallo, für solche Dinge mal auf Tiny.Systems und Elektronik-Labor.de nachsehen.Hier werden einfache Verfahren vorgestellt. Gruss Max
Einer der günstigsten AVR Programmer ist der "mySmartUSB light". Liegt zwischen 16 und 17 Euro. Der hat allerdings keine "USB UART Bridge", die bis auf das Zielsystem reicht. Die nächste Stufe ist dann der der "mySmartUSB" (ohne "light" :>) ~30€
Sowas hier wäre auch möglich: http://www.fischl.de/avrusbboot/ Damit könntest du alles auf ein Breadboard stecken und den Chip dann ohne zusätzliche Hardware über USB programmieren. (Voraussetzung: der ATmega mit entsprechendem vorprogrammierten Bootloader)
wenn du einen parallelport am rechner hast, kannst du ganz einfach mit dem kostenlosen BASCOM AVR deine hex-files auf den controller schreiben. aufbau siehe anhang der parallelport sollte auf EPP gestellt sein, glaube ich (sonst wirds wackelig oder geht gar nicht). die konfiguration unter BASCOM AVR wie hier gezeigt: http://www.rowalt.de/mc/avr/progd.htm einfacher und billiger gehts nimmer und läuft auch einwandfrei. größere hex-files brauchen aber ein paar sekunden, bis sie übertragen sind. mit einem AVRISP MKII (den ich sehr empfehlen kann, ca. 40€) geht es wesentlich schneller. mit BASCOM AVR kannst du den controller auch in BASIC programmieren. ich selber arbeite lieber im AVR-Studio in C. kostenloser download BASCOM AVR: http://mcselec.com/index.php?option=com_docman&task=doc_download&gid=139&Itemid=54
humus schrieb: > wenn du einen parallelport am rechner hast Was heutzutage eher selten ist. Ansonsten ist die wahrscheinlich günstigste Variante ein Tiny85/VUSB basierter USBASP wie der guloprog (< 5 €). Kann man auch mit Tiny85, ein wenig Hühnerfutter und einem abgeschnittenen USB-Kabel auf dem Breadboard mit aufbauen - hat dann natürlich ein Henne-Ei-Problem, den Programme zu programmieren.
Malte S. schrieb: > humus schrieb: >> wenn du einen parallelport am rechner hast > > Was heutzutage eher selten ist. Ansonsten ist die wahrscheinlich > günstigste Variante ein Tiny85/VUSB basierter USBASP wie der guloprog (< > 5 €). Kann man auch mit Tiny85, ein wenig Hühnerfutter und einem > abgeschnittenen USB-Kabel auf dem Breadboard mit aufbauen - hat dann > natürlich ein Henne-Ei-Problem, den Programme zu programmieren. wobei man mit dem Parallelportprogger und einem Steckbrett auch das Henne-Ei-Problem gut lösen kann - PP am Rechner vorausgesetzt.
Stimmt, oder der hier: http://electronics-diy.com/avr_programmer.php für den seriellen Port. So einen hatte ich seinerzeit zum Flashen des ersten AVR-basierten AVR-Flashers verwendet. Bisschen mehr Bauteile als die PP-Variante, aber hat gewonnen, weil serielles Kabel mit offenem Ende schon da war, paralleles nicht. Viele Wege führen nach (Flash)ROM.
Malte S. schrieb: > Stimmt, oder der hier: http://electronics-diy.com/avr_programmer.php für > den seriellen Port. Hübsches Teil, gefällt mir! Läuft der auch an einem USB-to-Seriell-Modul? Weil ich sowieso früher viel über PP gesteuert habe, konnte ich direkt auf die Kabelage für den SP12 zurückgreifen. Der ist auch immer super gelaufen. Lässt sich halt nur nicht direkt vom AVR-Studio aus ansprechen, deshalb BASCOM AVR als Brennsoftware benutzt. Und ist etwas langsamer als die neueren Brenner. Was bei mir immer wackelig gelaufen ist, war ein nach Anleitung gebauter USBASP. Trotz endloser Fehlersuchen und Einstellung der Takt-f auf alle möglicher Werte hat er höchstens bei jedem dritten Versuch einen vernünftigwn Flash hinbekommen.
humus schrieb: > Hübsches Teil, gefällt mir! Läuft der auch an einem > USB-to-Seriell-Modul? Genau das funktioniert NICHT ! Die USB zu Seriell Module funktionen (meines Wissens nach) alle nach der Methode, ein Byte komplett zu versenden. Die seriellen "Programmer" bedienen sich aber des "Bit-Bangings" bei dem die Pins der seriellen Schnittstelle gezielt auf 1 oder 0 gesetzt werden (und deshalb der UART Chip des PC direkt angesprochen wird). Zu diesem Zweck hab ich einen (extrem günstigen) alten Thin-Client Computer (klein und für Microcontrollerprogrammierung absolut ausreichend) aus der Bucht besorgt, die es ab 12 Euro gibt. Auf dem Thin-Client läuft ein Porteus Linux im Textmodus mit installiertem AVR-GCC 4.8.1 und AVRDUDE und einer selbstprogrammierten IDE im Turbo C Stil von Borland (Free Vison). AVRDUDE kann dann diesen gezeigten Programmer als "ponyser" bedienen. Ursprünglich war dieses Mini-Linux System dafür gedacht, einfach nur ein Werkzeug an die Hand zu geben um einen USBTINY - Chip oder einen USBASP zu flashen. Mittlerweile programmiere ich die Chips tatsächlich nur noch aus der Textmodeoberfläche (allerdings NICHT mit einem "ponyser" Adapter). Bei Bedarf kann ich vllt. dieses komplett installierte Linux als Version für einen Bootstick ins Internet stellen (um sich eben einen Flasher selbst basteln zu können). Vorraussetzung für so etwas ist allerdings immer, ein echter RS232 Anschluß im Computer.
Beeindruckend, was du da machst!!!!! So ein Thin-Client ist eine Art Laptop ohne Bildschirm und Tastatur, könnte man sagen?!?
Ralph S. schrieb: > Vorraussetzung für so etwas ist allerdings immer, ein echter RS232 > Anschluß im Computer. Was einigen vielleicht nicht bewusst ist: Auch auf aktuellen Mainboards sind auf der Platine oft noch Stiftleisten-Anschlüsse für die serielle und parallele Schnittstelle. Man muss sie nur mit einem passenden Kabel und Slotblech nach außen führen.
Alexander S. schrieb: > Auch auf aktuellen Mainboards sind auf der Platine oft noch > Stiftleisten-Anschlüsse für die serielle und parallele Schnittstelle. Seriell ja aber parallel? Das hab ich seit Jahren schon auf keinem handelsüblichen Mainboard mehr gesehen. Das war ja schon praktisch 2000 veraltet.
Michael K. schrieb: > Seriell ja aber parallel? Das hab ich seit Jahren schon auf keinem > handelsüblichen Mainboard mehr gesehen. Aber ich -z.B. in den Rechnern von Fujitsu-Siemens (Esprimo), wie hier vorhanden. Diese Rechner sind wunderbar: klein, sehr leise, alle erdenklichen Schnittstellen (bis auf Firewire) Mehrkernprozessor geht rein und nicht unheimlich teuer. Kann ich nur empfehlen. Siehe hier: https://www.rrze.fau.de/dienste/hardware/beschaffung/db_esprimo_e5925.pdf (Gibt's auch noch bei etlichen anderen Leuten, war nur der erste Treffer beim Suchen.) MfG Paul
Michael K. schrieb: > Seriell ja aber parallel? Das hab ich seit Jahren schon auf keinem > handelsüblichen Mainboard mehr gesehen. Das war ja schon praktisch 2000 > veraltet. Nur als Beispiel MSI B85-G41 PC Mate (wird aktuell z.B. von ARLT angeboten, Handbuch ist von 2013) Im engl. Handbuch auf S. 1-28 JLPT1: Parallel Port Connector This connector is used to connect an optional parallel port bracket. (pdf in zip verpackt) http://de.msi.com/support/mb/B85-G41-PC-Mate.html#down-manual
Ralph S. schrieb: > Die USB zu Seriell Module funktionen (meines Wissens nach) alle nach der > Methode, ein Byte komplett zu versenden. > > Die seriellen "Programmer" bedienen sich aber des "Bit-Bangings" bei dem > die Pins der seriellen Schnittstelle gezielt auf 1 oder 0 gesetzt werden > (und deshalb der UART Chip des PC direkt angesprochen wird). Die typischen FTDI haben einen Bit-Banging Modus.
Ulrich F. schrieb: > Die typischen FTDI haben einen Bit-Banging Modus. Ich habe so ein Ding. Damit geht es, aber: Man kann sich 2x rasieren, bevor man einen Attiny2313 geladen hat. Damit habe ich aber nur mal aus Interesse probiert, auf die Dauer benutze ich mehrere sog. AVR-DOPER, die an allen möglichen Rechnern über USB hängen. MfG Paul
Manuel B. schrieb: > erste Gehversuche mit dem Atmega wagen? http://www.ebay.de/itm/Nano-V3-0-Controller-Board-Compatible-with-Arduino-Nano-CH340-USB-Driver-no-cabl-/371436661150?hash=item567b59a99e Damit und mit der Arduino IDE anfangen. "Costa fast gar nix!"
Arthur schrieb: > So ein Thin-Client ist eine Art Laptop ohne Bildschirm und Tastatur, > könnte man sagen?!? Nein, ein Thin-Client ist ein PC auf das allernötigste reduziert, von der Konzeption ist ein Thin-Client daraufhin ausgelegt, ein minimalstes System zu booten um dann alle Daten und Programme von einem Server zu beziehen. Daher haben sie in aller Regel wenig RAM, extrem wenig Massenspeicher (Festplatte) und einen eher langsameren Prozessor. Eingesetzt werden sie in hochvernetzten Betrieben wie Banken, Versicherungen oder großen Betriebe. Durch ihre abgespeckte Hardware sind sie preiswerter als vollwertige PC's und haben dadurch, dass Programme und Betriebssystem zentral auf einem Server liegen einen geringeren Bedarf an Softwarewartung (Programme müssen "nur" auf dem Server gepflegt werden und alle Teilnehmer haben immer dieselbe Software). Desweiteren haben sie in aller Regel eine stark verminderte Stromaufnahme (meine beiden TC's benötigen 12 Watt) Viele Thin-Clients haben keine wirkliche Festplatte sondern einen Flash-Speicher um Daten zu sichern (sogenanntes Disk on Module https://de.wikipedia.org/wiki/Disk_on_Module ). Ist ein Betriebssystem jedoch sehr sparsam mit den Resourcen (wie mein verwendetes und modifiziertes Porteus - Linux) ist dieses darauf lauffähig. Mein Bastel-Thin-Client ist ein HP T5000 mit 800 MHz Via Eden CPU (x86) und 256 MB Ram und ein Siemens Futro S400. Wichtig bei einem solchen System ist, dass er erstens einen x86 - kompatiblen Prozessor hat und dass es von einem USB-Device bootfähig ist. Mit 256 MB Ram lässt sich zur Not ein LXDE Desktop starten, 128 MB reichen für den Textmodus, weniger als 128 MB Ram reichen nicht aus. Damit ich dann doch etwas mehr Massenspeicher habe, ist ein Nano USB-Stick mit 8 GB ständig eingesteckt. Beispiel für einen Thin Client aus der Bucht auf dem das System läuft ist: http://www.ebay.de/itm/FSC-Futro-S400-Thin-Client-Lautlos-AMD-Athlon-1GHz-256MB-256MB-B-Ware-vergilbt-/301581381327?hash=item4637a6aecf oder grundsätzlich (nicht die Bucht): http://www.parkytowers.me.uk/thin/info/hp.shtml Ralph PS: gerade hab ich n bissi gesurft und festgestellt, dass die Preise für gebrauchte Thin Clients im vgl. zu letztem Jahr sehr deutlich angezogen haben und auch mal 30 Euro bringen (dafür würde ich mir keinen kaufen, dafür finde ich die zu teuer ... :-) vllt. setze ich ja mal so ein AVR Programmiercomputer für den Raspberry Pi B++ um damit)
Paul B. schrieb: > Ich habe so ein Ding. Damit geht es, aber: Man kann sich 2x rasieren, > bevor man einen Attiny2313 geladen hat. Das erzieht einen dazu ressourcensparend zu programmieren, man übt sich außerdem im mentalen Debuggen des Codes (wie Schachspielen ohne Brett), und außerdem schont es noch den Flash-Speicher vor Abnutzung ;-)
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.