/*============================================================== File........JP Serial GLCD Module Test code for Arduino Purpose.....This test code for JP SerGLCD 128x64 Module MCU.........ATmega328 Auther......Jianping Sun Website.....www.JianpingUSA.com Email.......JP@JianpingUSA.com Started.....Jan. 3, 2011 Updated..... Note: The module Rx <===> Tx of Arduino ==============================================================*/ int x = 0; // variable void setup() { Serial.begin(2400); //J1 and J2 are connected. delay(1000); Serial.print(97, BYTE); //Send command to show JP Logo delay(100); Serial.print(250, BYTE); delay(2000); CleanScreen(); x = 3; SetFont(); BackLightTest(); CleanScreen(); ScreenOnOffTest(); CleanScreen(); SetLine(); CleanScreen(); FunctionTest(); CleanScreen(); } void loop(){} //========= Ellipse, Circle, Rectang, Square, Box Test ================== void FunctionTest() { Serial.print(88, BYTE); // Ellipse function Serial.print(64, BYTE); // x1 Serial.print(32, BYTE); // y1 Serial.print(60, BYTE); // x2 Serial.print(30, BYTE); // y2 Serial.print(1, BYTE); Serial.print(0, BYTE); Serial.print(250, BYTE); delay(1000); Serial.print(40, BYTE); // ClipRect function Serial.print(5, BYTE); // Left Serial.print(5, BYTE); // Top Serial.print(122, BYTE); // Right Serial.print(58, BYTE); // Bottom Serial.print(250, BYTE); delay(100); Serial.print(41, BYTE); // ClipPed function Serial.print(0, BYTE); // True Serial.print(250, BYTE); delay(100); for (int i = 0; i <= 6; i++) { x = i * 8 + 2; Serial.print(89, BYTE); // Circle function Serial.print(64, BYTE); // x Serial.print(32, BYTE); // y Serial.print(x, BYTE); // r Serial.print(1, BYTE); Serial.print(0, BYTE); Serial.print(250, BYTE); delay(500); } Serial.print(41, BYTE); // ClipPed function Serial.print(1, BYTE); // False Serial.print(250, BYTE); delay(1000); Serial.print(86, BYTE); // Rectang function Serial.print(8, BYTE); // x1 Serial.print(8, BYTE); // y1 Serial.print(120, BYTE); // x2 Serial.print(56, BYTE); // y2 Serial.print(1, BYTE); Serial.print(250, BYTE); delay(1000); Serial.print(87, BYTE); // Round Rectang function Serial.print(12, BYTE); // x1 Serial.print(12, BYTE); // y1 Serial.print(116, BYTE); // x2 Serial.print(52, BYTE); // y2 Serial.print(1, BYTE); Serial.print(250, BYTE); delay(2000); Serial.print(85, BYTE); // Square function Serial.print(48, BYTE); // x1 Serial.print(16, BYTE); // y1 Serial.print(33, BYTE); // L Serial.print(1, BYTE); Serial.print(250, BYTE); delay(1000); Serial.print(90, BYTE); // Full Box function Serial.print(51, BYTE); // x1 Serial.print(19, BYTE); // y1 Serial.print(78, BYTE); // x2 Serial.print(46, BYTE); // y2 Serial.print(1, BYTE); Serial.print(250, BYTE); delay(1000); for (int i = 0; i <= 8; i++) { x = i * 8 + 2; Serial.print(39, BYTE); // Invert function Serial.print(10, BYTE); // x Serial.print(10, BYTE); // y Serial.print(109, BYTE); // w Serial.print(45, BYTE); // h Serial.print(250, BYTE); delay(500); } } void SetLine() { Serial.print(82, BYTE); // Line Hor function Serial.print(0, BYTE); // x1 Serial.print(127, BYTE); // x2 Serial.print(31, BYTE); // y Serial.print(1, BYTE); Serial.print(250, BYTE); delay(1000); Serial.print(83, BYTE); // Line Ver function Serial.print(63, BYTE); // x1 Serial.print(0, BYTE); // y1 Serial.print(63, BYTE); // y2 Serial.print(1, BYTE); Serial.print(250, BYTE); delay(1000); for (int i = 0; i <= 5; i++) { x = i * 10 + 5; Serial.print(84, BYTE); // Line function Serial.print(0, BYTE); // x1 Serial.print(x, BYTE); // y1 Serial.print(127, BYTE); // y2 Serial.print(x, BYTE); Serial.print(1, BYTE); Serial.print(i, BYTE); Serial.print(250, BYTE); delay(1000); } for (int i = 0; i <= 3; i++) { x = i * 32 + 16; Serial.print(84, BYTE); // Line function Serial.print(x, BYTE); // x1 Serial.print(0, BYTE); // y1 Serial.print(x, BYTE); // x2 Serial.print(63, BYTE); // y2 Serial.print(1, BYTE); Serial.print(i, BYTE); Serial.print(250, BYTE); delay(1000); } Serial.print(84, BYTE); // Line function Serial.print(0, BYTE); // x1 Serial.print(0, BYTE); // y1 Serial.print(127, BYTE); // x2 Serial.print(63, BYTE); // y2 Serial.print(1, BYTE); Serial.print(0, BYTE); Serial.print(250, BYTE); delay(1000); Serial.print(84, BYTE); // Line function Serial.print(0, BYTE); // x1 Serial.print(63, BYTE); // y1 Serial.print(127, BYTE); // x2 Serial.print(0, BYTE); // y2 Serial.print(1, BYTE); Serial.print(0, BYTE); Serial.print(250, BYTE); delay(1000); } void SetFont() { Serial.print(36, BYTE); Serial.print(x, BYTE); Serial.print(250, BYTE); } void CleanScreen() { Serial.print(35, BYTE); Serial.print(0, BYTE); Serial.print(250, BYTE); delay(100); } void BackLightTest() { ScreenText0(); x = 0; BackLight(); x = 1; BackLight(); x = 0; BackLight(); x = 1; BackLight(); x = 0; BackLight(); x = 1; BackLight(); x = 0; BackLight(); x = 1; BackLight(); } void BackLight() { Serial.print(33, BYTE); Serial.print(x, BYTE); Serial.print(250, BYTE); delay(500); } void ScreenText0(){ Serial.print(43, BYTE); Serial.print(1, BYTE); Serial.print("BackLight Test."); Serial.print(250, BYTE); delay(100); Serial.print(95, BYTE); Serial.print(0, BYTE); Serial.print(25, BYTE); Serial.print(1, BYTE); Serial.print(1, BYTE); Serial.print(250, BYTE); delay(1000); } void ScreenText1() { Serial.print(43, BYTE); Serial.print(1, BYTE); Serial.print("Screen On/Off"); Serial.print(250, BYTE); delay(100); Serial.print(95, BYTE); Serial.print(5, BYTE); Serial.print(25, BYTE); Serial.print(1, BYTE); Serial.print(1, BYTE); Serial.print(250, BYTE); delay(1000); } void ScreenOnOffTest() { ScreenText1(); for (int i = 0; i <= 4; i++) { x = 1; ScreenOnOff(); x = 0; ScreenOnOff(); } } void ScreenOnOff() { Serial.print(34, BYTE); Serial.print(x, BYTE); Serial.print(250, BYTE); delay(500); }