Mein Code sieht jetzt so aus:
Code:
#include <stdlib.h>
#include <avr/io.h>
#include "rn-control.h"
#define width 5 // Breite des Spielfelds
#define height 5 // Höhe des Spielfelds
int bit[width][height]; // Bitfeld
int alt[width][height]; // Backup
int main(void){
//#######################Initialisierungen#######################
// Deklarieren der Input/Output-Pins
//###############################################################
int a;
int b;
bit[2][2] == 1;
while(1){
for (a = 1; a <= (width-1); ++a){
for (b = 1; b <= (height-1); ++b){
// in andere Matrix kopieren
alt[a][b] = bit[a][b];
// Nachbarn Checken
int anz = 0;
anz = anz + alt[a-1][b-1]+alt[a][b-1]+alt[a+1][b-1];
anz = anz + alt[a-1][b] + alt[a+1][b];
anz = anz + alt[a-1][b+1] + alt[a][b+1] + alt[a+1][b+1];
// Stadien bestimmen
// Wiedergeburt
if (anz == 3){
if (bit[a][b] == 0){
bit[a][b] = 1;
}
}
// Einsamkeit
if (anz < 2){
if(bit[a][b] == 1) {
bit[a][b] = 0;
}
}
// bleibt am Leben
if (anz == 2){
if (bit[a][b] == 1){
bit[a][b] = 1;
}
}
// bleibt am Leben
if (anz == 3){
if (bit[a][b] == 1){
bit[a][b] = 1;
}
}
// Überbevölkerung
if (anz > 3){
bit[a][b] = 0;
}
}
}
// Ausgebeben
for (a = 0; a = width; ++a){
for (b = 0; b = height; ++b){
if ( bit[a][b] == 1){
}
}
}
}
return 0;
}
Da müssen jetzt halt noch die Pindefinitionen rein. Wie kann ich das dann Ausgeben dass er mir auch die LED anschaltet, die im Spielfeld 1 ist?
Am besten wahrscheinlich einfach if-schleifen die abfragen, wann welches Feld an ist und dementsprechend die LEDs einschaltet...
Lesezeichen