Go Down

Topic: "BIG C"-Pong: ATMega8 und Arduino Boot? (Read 3 times) previous topic - next topic

DE8MSH

#5
Jan 01, 2011, 10:50 am Last Edit: Jan 01, 2011, 10:51 am by DE8MSH Reason: 1
Das mit dem Auslöten ist auch nur hypothetisch gemeint. Ich bin der Meinung, dass es die o.g. Platte auch mal mit großen LED gab. Dann hätte man sie für andere Projekte auslöten können. So bleiben sie schön auf den Boards :)

Aber mal etwas anderes: ich habe noch nicht ganz herausgefunden wie ich auf dem Arduino Uno entwickle und das Projekt dann auf dem ATMega8 bringe. Möchte gerne in der Arduino Plattform bleiben, da ich im Moment keine Luste habe noch WinAVR (C direkt) oder gar BASCOM zu lernen. Ich bin mit Arduino bisher sehr zufrieden.

Also: ich möchte in der Arduino Plattform Software bauen und die o.g. LED-Matrix ansteuern. Die Platte ist ja so aufgebaut:

http://www.elo-web.de/ximage/0910pingpong3.jpg

Die Platte hat also zwei Schieber (IC2/IC3), mit denen ich die LED Matrix schalte. Wie auf Arduino coden? Kann jemand ein Beispiel bringen?

Das .hex File kann ich nachher mit dem http://www.elo-web.de/elo/mikrocontroller-und-programmierung/ping-pong/mega8-isp-programmer auf den ATMega8 schieben.



DE8MSH

#7
Jan 01, 2011, 11:13 am Last Edit: Jan 01, 2011, 11:30 am by DE8MSH Reason: 1
Also das klappt schonmal nicht:

Code: [Select]
int latchPin = 10;
int clockPin = 11;
int dataPin = 12;

void setup() {
 //set pins to output so you can control the shift register
 pinMode(latchPin, OUTPUT);
 pinMode(clockPin, OUTPUT);
 pinMode(dataPin, OUTPUT);
}

void loop() {
 // count from 0 to 255 and display the number
 // on the LEDs
 for (int numberToDisplay = 0; numberToDisplay < 256; numberToDisplay++) {
   // take the latchPin low so
   // the LEDs don't change while you're sending in bits:
   digitalWrite(latchPin, LOW);
   // shift out the bits:
   shiftOut(dataPin, clockPin, MSBFIRST, numberToDisplay);  

   //take the latch pin high so the LEDs will light up:
   digitalWrite(latchPin, HIGH);
   // pause before next value:
   delay(500);
 }
}


Ich habe das auf Arduino Uno complierte .hex File per ISP Brenner auf das C Board gebracht. Keine LED leuchtet.

volvodani

Wenn du das mit dem Uno kompiliert musst du noch einen 16Mhz Resonator drauflöten an den Punkten B6+B7. Die Software geht von einem 16Mhz AVR aus
So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

DE8MSH

#9
Jan 01, 2011, 03:06 pm Last Edit: Jan 01, 2011, 03:11 pm by DE8MSH Reason: 1
Stimmt. Das habe ich gesehen, dass das Quarz fehlt. Pong nutzt den internen Zähler. Hätte ich da. Allerdings habe ich, weil ich nicht jeden Artikel bei Elo durchgelesen habe, das hier vorher nicht entdeckt:

http://www.elo-web.de/elo/mikrocontroller-und-programmierung/ping-pong/etch-a-sketch

Hier wird die Anbindung an Arduino beschrieben. Was aber nicht klappt, dass ich das .hex File direkt per ISP auf den Chip bringe.

Go Up