atmega328 auf Breadboard

Hallo,

mal ne ganz blöde Frage, welche bestimmt jetzt schon hundertfach gestellt wurde, aber wie kann ich den im Uno programmierten atmega328 auf einem Breadboard zum laufen bekommen?

Ich habe mein Programm auf den Chip geladen und auch auf dem Board getestet. Jetzt wo alles läuft, wollte ich den atmega328 direkt auf das Breadboard stecken und nach dieser Grafik verkable.: http://achuwilson.files.wordpress.com/2011/12/arduino-to-atmega8-pins.png leider funktioniert nichts....

Kann ich den Chip nicht einfach verpflanzen und dann mit einer externen Stromquelle versorgen?

PS. Kann ich mit einem ATTiny85 ein Thermometer DS18S20 ansteuern?

[EDIT] habe Modell des ATmega korrigiert. Uer Federer [/EDIT]

Du musst entweder den Bootloader installieren(per ISP, siehe ISP-Sketch in der IDE) oder direkt einen ISP verwenden. Allerding ist auf dem Uno ein 328P verbaut, hast du dich nur verschrieben? Edit: Schau mal hier (Grafiken) und hier nach und nach der Anleitung hier.

Addi

BigInteger Hast Du einen ATmega32 oder ATmega328? Grüße Uwe

BigInteger: ...Kann ich den Chip nicht einfach verpflanzen und dann mit einer externen Stromquelle versorgen?...

Doch, Du darfst aber den Quarz und die zugehörigen Kondensatoren nicht vergessen. Es sei denn Du fusest den Prozessor so um, daß er mit dem internen Oszillator läuft. (Timing ggf.beachten)

Also ich finde diese Anleitung gut um ein Arduino auf einem Breadboard aufzubauen: http://arduino.cc/en/Main/Standalone Habe das vor ein paar Tagen gemacht und hat auf anhieb funktioniert :)

Oh in der Tat ich habe einen 328P 8) Das war ein kleiner Vertipper.

Ich möchte einfach die Temperatur (mehr oder weniger) periodisch abfragen und dann über eine rgb-LED ausgeben, also z.B. +25°C rot +18°C bis +24°C grün und unter +18°C blau ausgeben. Am liebsten würde ich das mit einem ATiny machen.

Ich habe eine Atiny85 und auch einen ATmega328P beide mit Bootloader schon drauf. Den ATmega328P habe ich mit meinem Uno programmiert und danach auf das Breadboard gesteckt und entsprechend meines Aufbaus verkabelt. Leider hat es nicht funktioniert. :-(

Kannst Du mal einen Schaltplan der aufgebauten Schaltung zeigen?

Nur dass ich als Thermostat ein DS18S20 verwendet habe, aber das hab ich bei fritzing nicht gefunden.

Ich habe mich an diese Abbildung gehalten:

Und wo sind der 16 MHz Quarz und die zwei Kondensatoren? Die gehören an die Pins 9 (XTAL1/TOSC1/PB6) und 10 (XTAL2/TOSC2/PB7). Schau Dir nochmal genau den Link an, den Balisto gepostet hat, vor allem das dritte Bild im Abschnitt "ATMEGA8/168/328 Basics".

Außerdem wirst du mit 3 Volt (beim Einsatz von Akkus sogar nur 2,4 Volt) den 328 nicht zu 16 MHz bewegen können. Am besten wäre es hier, diesen auf den internen Oszillator umzufusen...

Oh :astonished: Ich wusste nicht, dass ich den Quarz brauche. Die Zwei Kondensatoren, habe ich übersehen :-( Ich dachte ich könne das so nur mit einem Microcontroller umsetzen. =(

Im Prinzip geht das schon.

Die AtMegas können sowohl mit externer Taktquelle als auch mit interner Taktquelle betrieben werden. Dies kann über entsprechende Falgs im Chip gesteuert werden. Auf den Arduinos sind die Flags auf externe Taktquelle eingestellt.

Du musst also den Chip entsprechend umprogrammieren. Ob das mit Deiner Programmierkonstellation geht weiss ich nicht.

Außerdem musst Du dann evtl. Deinen Code umgestalten, falls Du mit zeitbezogenen Geschichten arbeitest. Je nach Taktfrequenz musst Du da anders umrechnen.

Ich wollte jetzt meinen atmega umprogrammieren, dass er mit den 8mhz intern läuft, so dass ich keinen Quarz brauche. Ich habe mir die zip Datei runtergeladen und in den Ordner Hardware kopiert, so dass ich jetzt ein ATmega328 mit 8mhz unter board auswählen kann. Dann habe ich das Board wie in der Anleitung verkabelt und den ArduinoISP Scetsh auf das Uno Board geladen. Danach habe ich das ATmega328 mit 8mhz intern unter Boards ausgewählt und unter Programmer Arduino as ISP ausgewählt.

Jetzt bekomme ich folgende (Fehler-) Meldung wenn ich den Booatloader brennen möchte: avrdude: Yikes! Invalid device signature. Double check connections and try again, or use -F to override this check.

Achso der ATmega hat schon einen Bootloader installiert, welchen weiss ich nicht, hab ihn leider so gekauft. Aber es müsste doch möglichsein, dass ich den Bootloader überschreiben kann.

Hab mich an diese Anleitung gehaltern:

Jedes Kontrollermodell hat eine eigene Kennung. Die Kennung ändert sich schon an den Buchstaben nach dem ATmega328. Welchen Atmega hast Du? Grüße Uwe

der auf dem Uno steckt oder den ich Programmieren möchte?

PS bei meinem ATtiny85 bekomme ich auch einen Fehler: avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85 avrdude: Yikes! Invalid device signature. Double check connections and try again, or use -F to override this check.

Auf dem Uno: ATMEGA328P-PU 1243 Auf dem Breadboard: ATMEGA328P-PU 1221 ATtiny85: ATTINY85 20PU 1238

Leider Funktioniert das nicht so :-(