//*** start part 3 ***
// the setup routine
void setup()
{
pinMode (SYNC_PIN, OUTPUT);
pinMode (DATA_PIN, OUTPUT);
pinMode (DATA_PIN2, OUTPUT);
pinMode (DATA_PIN3, OUTPUT);
digitalWrite (SYNC_PIN, HIGH);
digitalWrite (DATA_PIN, HIGH);
digitalWrite (DATA_PIN, HIGH);
digitalWrite (DATA_PIN, HIGH);
MCUCR = MCUCR | 0x10; // Disable weak pullup resistors
clearScreen();
// FrequencyTimer2 init
// configured to interrupt 59.94 times a second
// frequencytimer2 rounds this to a different value
// actual interrupt period printed to serial for reference
// see frequencytimer2 doc....
// period requested = 16683 micro seconds or 59.95 times a second
// period actually set = 16640 or 60.096 times a second
FrequencyTimer2::setPeriod(16683);
temp = FrequencyTimer2::getPeriod();
Serial.begin(9600);
Serial.println("Video Test");
Serial.println(temp);
FrequencyTimer2::disable();
FrequencyTimer2::setOnOverflow(DrawFrame);
FrequencyTimer2::enable();
}
void loop()
{
// your code goes here,
// any code in loop can be replaced with your own code
// checkerboard pattern to display bitmap "0"
for ( xtemp =3;xtemp<=33 ;++xtemp)
{
for ( ytemp =2;ytemp<=26 ;++ytemp)
{
if (((xtemp + ytemp)% 2) == 1)
{setPixel(xtemp,ytemp,0);}
else
{grayPixel(xtemp,ytemp,0);}
}
}
// gray scale to hidden bitplane
for (xtemp = 3; xtemp <= 7; xtemp++)
{
for (ytemp = 2; ytemp <= 18; ytemp++)
{setPixel(xtemp,ytemp,1);}
};
for (xtemp = 8; xtemp <= 12; xtemp++)
{
for (ytemp = 2; ytemp <= 18; ytemp++)
{grayPixel(xtemp,ytemp,1);}
};
for (xtemp = 13; xtemp <= 17; xtemp++)
{
for (ytemp = 2; ytemp <= 18; ytemp++)
{clearPixel(xtemp,ytemp,1);}
};
for (xtemp = 18; xtemp <= 22; xtemp++)
{
for (ytemp = 2; ytemp <= 18; ytemp++)
{setPixel(xtemp,ytemp,1);}
};
for (xtemp = 23; xtemp <= 27; xtemp++)
{
for (ytemp = 2; ytemp <= 18; ytemp++)
{grayPixel(xtemp,ytemp,1);}
};
for (xtemp = 27; xtemp <= 33; xtemp++)
{
for (ytemp = 2; ytemp <= 18; ytemp++)
{clearPixel(xtemp,ytemp,1);}
};
for (xtemp = 3; xtemp <= 33; xtemp++)
{
for (ytemp = 19; ytemp <= 22; ytemp++)
{grayPixel(xtemp,ytemp,1);}
};
for (xtemp = 3; xtemp <= 33; xtemp++)
{
for (ytemp = 23 ; ytemp <= 26; ytemp++)
{setPixel(xtemp,ytemp,1);}
};
// swap display bitmap "0" with hidden bitmap "1"
while (1==1)
{
Swap();
delay(1000);
};
}
//*** end part 3 ***