SG12864A
Dependents: SG12864A_TestProgram
main.cpp
- Committer:
- shintamainjp
- Date:
- 2010-08-10
- Revision:
- 4:200d1ea4e76e
- Parent:
- 3:86e7fba29623
- Child:
- 5:4d86043f7942
File content as of revision 4:200d1ea4e76e:
/** * sample program for SG12864A Graphics LCD module driver class (Version 0.0.1) * * Copyright (C) 2010 Shinichiro Nakamura (CuBeatSystems) * http://shinta.main.jp/ * * See also ... * http://mbed.org/users/shintamainjp/notebook/sg12864asunlike-display-graphics-lcd-driver/ */ #include "mbed.h" #include "SG12864A.h" int main() { SG12864A lcd(p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18); #if 0 lcd.clear(); lcd.reset(); { static const int pages = 8; static const int columns = 64; for (int i = 0; i < pages; i++) { lcd.setPageAddress(SG12864A::CS1, i); lcd.setPageAddress(SG12864A::CS2, i); for (int j = 0; j < columns; j++) { uint8_t n = 1 << (j % 8); lcd.setColumnAddress(SG12864A::CS1, j); lcd.setColumnAddress(SG12864A::CS2, j); lcd.writeData(SG12864A::CS1, n); lcd.writeData(SG12864A::CS2, n); } } } uint8_t n = 0; while (1) { lcd.setDisplayStartLine(SG12864A::CS1, n); lcd.setDisplayStartLine(SG12864A::CS2, n); n++; wait_ms(100); } #else lcd.clear(); lcd.reset(); bool reverse = false; while (1) { // lcd.bufferClear(reverse); lcd.bufferDrawLine(0, 0, SG12864A::PIXEL_X - 1, SG12864A::PIXEL_Y - 1, reverse); lcd.bufferDrawLine(0, SG12864A::PIXEL_Y - 1, SG12864A::PIXEL_X - 1, 0, reverse); lcd.bufferDrawString(1, 1, "This is a test #1.\b", reverse); lcd.bufferDrawCheckbox(50, 50, 60, 60, true, reverse); lcd.bufferPush(); wait_ms(1000); // lcd.bufferClear(reverse); lcd.bufferDrawBox(0, 0, SG12864A::PIXEL_X - 1, SG12864A::PIXEL_Y - 1, reverse); lcd.bufferDrawString(1, 2, "This is a test #2.\b", reverse); lcd.bufferDrawCheckbox(50, 50, 60, 60, false, reverse); lcd.bufferPush(); wait_ms(1000); #if 0 // lcd.bufferClear(reverse); lcd.bufferFillBox(0, 0, SG12864A::PIXEL_X - 1, SG12864A::PIXEL_Y - 1, reverse); lcd.bufferDrawString(1, 3, "This is a test #3.\b", reverse); lcd.bufferDrawCheckbox(50, 50, 60, 60, true, reverse); lcd.bufferPush(); wait_ms(1000); #endif // { lcd.bufferClear(reverse); int min = 0; int max = 100; for (int i = min; i <= max; i++) { lcd.bufferDrawProgressbar(10, 10, 118, 20, min, max, i, true, reverse); lcd.bufferPush(); wait_ms(2); } } // { lcd.bufferClear(reverse); int min = -100; int max = 100; for (int i = min; i <= max; i++) { lcd.bufferDrawProgressbar(10, 10, 118, 20, min, max, i, true, reverse); lcd.bufferPush(); wait_ms(2); } } // { lcd.bufferClear(reverse); int min = 100; int max = 600; for (int i = min; i <= max; i++) { lcd.bufferDrawProgressbar(10, 10, 118, 20, min, max, i, true, reverse); lcd.bufferPush(); wait_ms(2); } } // reverse = !reverse; } #endif }