Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@0:ded1a1350d0d, 2014-10-04 (annotated)
- Committer:
- zhimagod
- Date:
- Sat Oct 04 04:00:38 2014 +0000
- Revision:
- 0:ded1a1350d0d
First Try
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| zhimagod | 0:ded1a1350d0d | 1 | #include "mbed.h" |
| zhimagod | 0:ded1a1350d0d | 2 | #include "LCD.h" |
| zhimagod | 0:ded1a1350d0d | 3 | |
| zhimagod | 0:ded1a1350d0d | 4 | typedef unsigned char byte; |
| zhimagod | 0:ded1a1350d0d | 5 | |
| zhimagod | 0:ded1a1350d0d | 6 | DigitalOut LCD_DC(D10); |
| zhimagod | 0:ded1a1350d0d | 7 | DigitalOut LCD_CS(D9); |
| zhimagod | 0:ded1a1350d0d | 8 | DigitalOut LCD_RES(D8); |
| zhimagod | 0:ded1a1350d0d | 9 | |
| zhimagod | 0:ded1a1350d0d | 10 | SPI Lcd_5110(SPI_MOSI, SPI_MISO, SPI_SCK); |
| zhimagod | 0:ded1a1350d0d | 11 | |
| zhimagod | 0:ded1a1350d0d | 12 | const byte CharTable[][14]= |
| zhimagod | 0:ded1a1350d0d | 13 | { |
| zhimagod | 0:ded1a1350d0d | 14 | {0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,0x00,0x30,0x33,0x00,0x00,0x00},/*"!",0*/ |
| zhimagod | 0:ded1a1350d0d | 15 | {0x00,0x10,0x0C,0x16,0x0C,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*""",1*/ |
| zhimagod | 0:ded1a1350d0d | 16 | {0x40,0x40,0xF8,0x40,0xF8,0x40,0x00,0x04,0x3E,0x05,0x3F,0x05,0x04,0x00},/*"#",2*/ |
| zhimagod | 0:ded1a1350d0d | 17 | {0x00,0x70,0x88,0xFC,0x08,0x30,0x00,0x00,0x18,0x20,0xFF,0x21,0x1E,0x00},/*"$",3*/ |
| zhimagod | 0:ded1a1350d0d | 18 | {0xF0,0x08,0xF0,0x80,0x70,0x08,0x00,0x00,0x21,0x1C,0x03,0x1E,0x21,0x1E},/*"%",4*/ |
| zhimagod | 0:ded1a1350d0d | 19 | {0x00,0xF0,0x88,0x70,0x00,0x00,0x00,0x1F,0x20,0x27,0x28,0x1F,0x21,0x10},/*"&",5*/ |
| zhimagod | 0:ded1a1350d0d | 20 | {0x10,0x16,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"'",6*/ |
| zhimagod | 0:ded1a1350d0d | 21 | {0x00,0x00,0x00,0xF0,0x0C,0x02,0x00,0x00,0x00,0x00,0x0F,0x30,0x40,0x00},/*"(",7*/ |
| zhimagod | 0:ded1a1350d0d | 22 | {0x00,0x06,0x18,0xE0,0x00,0x00,0x00,0x00,0x60,0x18,0x07,0x00,0x00,0x00},/*")",8*/ |
| zhimagod | 0:ded1a1350d0d | 23 | {0x40,0x40,0x80,0xF0,0x80,0x40,0x40,0x02,0x02,0x01,0x0F,0x01,0x02,0x02},/*"*",9*/ |
| zhimagod | 0:ded1a1350d0d | 24 | {0x00,0x00,0x00,0xF0,0x00,0x00,0x00,0x01,0x01,0x01,0x1F,0x01,0x01,0x01},/*"+",10*/ |
| zhimagod | 0:ded1a1350d0d | 25 | {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xB0,0x70,0x00,0x00,0x00,0x00},/*",",11*/ |
| zhimagod | 0:ded1a1350d0d | 26 | {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x00},/*"-",12*/ |
| zhimagod | 0:ded1a1350d0d | 27 | {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00},/*".",13*/ |
| zhimagod | 0:ded1a1350d0d | 28 | {0x00,0x00,0x00,0x00,0xC0,0x38,0x0C,0x00,0x60,0x38,0x07,0x01,0x00,0x00},/*"/",14*/ |
| zhimagod | 0:ded1a1350d0d | 29 | {0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00},/*"0",15*/ |
| zhimagod | 0:ded1a1350d0d | 30 | {0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00},/*"1",16*/ |
| zhimagod | 0:ded1a1350d0d | 31 | {0x00,0x70,0x08,0x08,0x08,0xF0,0x00,0x00,0x30,0x2C,0x22,0x21,0x30,0x00},/*"2",17*/ |
| zhimagod | 0:ded1a1350d0d | 32 | {0x00,0x30,0x08,0x88,0x88,0x70,0x00,0x00,0x18,0x20,0x20,0x31,0x1E,0x00},/*"3",18*/ |
| zhimagod | 0:ded1a1350d0d | 33 | {0x00,0x80,0x40,0x20,0xF8,0x00,0x00,0x06,0x05,0x04,0x24,0x3F,0x24,0x04},/*"4",19*/ |
| zhimagod | 0:ded1a1350d0d | 34 | {0x00,0xF8,0x08,0x88,0x88,0x08,0x00,0x00,0x19,0x21,0x20,0x31,0x1F,0x00},/*"5",20*/ |
| zhimagod | 0:ded1a1350d0d | 35 | {0xE0,0x10,0x88,0x88,0x88,0x18,0x00,0x0F,0x11,0x20,0x20,0x31,0x1F,0x00},/*"6",21*/ |
| zhimagod | 0:ded1a1350d0d | 36 | {0x00,0x38,0x08,0x08,0xE8,0x18,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00},/*"7",22*/ |
| zhimagod | 0:ded1a1350d0d | 37 | {0x70,0x98,0x88,0x08,0x98,0x70,0x00,0x1E,0x21,0x21,0x21,0x31,0x1E,0x00},/*"8",23*/ |
| zhimagod | 0:ded1a1350d0d | 38 | {0xF0,0x08,0x08,0x08,0x18,0xE0,0x00,0x31,0x22,0x22,0x32,0x19,0x07,0x00},/*"9",24*/ |
| zhimagod | 0:ded1a1350d0d | 39 | {0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00},/*":",25*/ |
| zhimagod | 0:ded1a1350d0d | 40 | {0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x80,0x60,0x00,0x00,0x00},/*";",26*/ |
| zhimagod | 0:ded1a1350d0d | 41 | {0x00,0x00,0x80,0x60,0x10,0x08,0x00,0x00,0x01,0x02,0x0C,0x10,0x20,0x00},/*"<",27*/ |
| zhimagod | 0:ded1a1350d0d | 42 | {0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x00},/*"=",28*/ |
| zhimagod | 0:ded1a1350d0d | 43 | {0x00,0x08,0x30,0x40,0x80,0x00,0x00,0x00,0x20,0x18,0x04,0x02,0x01,0x00},/*">",29*/ |
| zhimagod | 0:ded1a1350d0d | 44 | {0x70,0x08,0x08,0x08,0x18,0xF0,0x00,0x00,0x00,0x30,0x37,0x01,0x00,0x00},/*"?",30*/ |
| zhimagod | 0:ded1a1350d0d | 45 | {0xC0,0x30,0xC8,0x28,0xE8,0x10,0xE0,0x07,0x18,0x27,0x24,0x23,0x14,0x0B},/*"@",31*/ |
| zhimagod | 0:ded1a1350d0d | 46 | {0x00,0x00,0xE0,0x18,0xE0,0x00,0x00,0x20,0x3C,0x23,0x02,0x23,0x3C,0x20},/*"A",32*/ |
| zhimagod | 0:ded1a1350d0d | 47 | {0x08,0xF8,0x88,0x88,0x88,0x70,0x00,0x20,0x3F,0x20,0x20,0x31,0x1E,0x00},/*"B",33*/ |
| zhimagod | 0:ded1a1350d0d | 48 | {0xE0,0x30,0x08,0x08,0x08,0x38,0x00,0x0F,0x10,0x20,0x20,0x20,0x10,0x00},/*"C",34*/ |
| zhimagod | 0:ded1a1350d0d | 49 | {0x08,0xF8,0x08,0x08,0x10,0xE0,0x00,0x20,0x3F,0x20,0x20,0x10,0x0F,0x00},/*"D",35*/ |
| zhimagod | 0:ded1a1350d0d | 50 | {0x08,0xF8,0x88,0x88,0xE8,0x18,0x00,0x20,0x3F,0x20,0x20,0x23,0x30,0x00},/*"E",36*/ |
| zhimagod | 0:ded1a1350d0d | 51 | {0x08,0xF8,0x88,0x88,0xE8,0x08,0x10,0x20,0x3F,0x20,0x00,0x03,0x00,0x00},/*"F",37*/ |
| zhimagod | 0:ded1a1350d0d | 52 | {0xC0,0x30,0x08,0x08,0x08,0x38,0x00,0x07,0x18,0x20,0x20,0x22,0x1E,0x02},/*"G",38*/ |
| zhimagod | 0:ded1a1350d0d | 53 | {0x08,0xF8,0x08,0x00,0x08,0xF8,0x08,0x20,0x3F,0x21,0x01,0x21,0x3F,0x20},/*"H",39*/ |
| zhimagod | 0:ded1a1350d0d | 54 | {0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00},/*"I",40*/ |
| zhimagod | 0:ded1a1350d0d | 55 | {0x00,0x08,0x08,0xF8,0x08,0x08,0x00,0xC0,0x80,0x80,0x7F,0x00,0x00,0x00},/*"J",41*/ |
| zhimagod | 0:ded1a1350d0d | 56 | {0x08,0xF8,0x88,0xC0,0x28,0x18,0x08,0x20,0x3F,0x20,0x01,0x26,0x38,0x20},/*"K",42*/ |
| zhimagod | 0:ded1a1350d0d | 57 | {0x08,0xF8,0x08,0x00,0x00,0x00,0x00,0x20,0x3F,0x20,0x20,0x20,0x30,0x00},/*"L",43*/ |
| zhimagod | 0:ded1a1350d0d | 58 | {0x08,0xF8,0xF8,0x80,0xF8,0xF8,0x08,0x20,0x3F,0x00,0x3F,0x00,0x3F,0x20},/*"M",44*/ |
| zhimagod | 0:ded1a1350d0d | 59 | {0x08,0xF8,0x38,0xC0,0x08,0xF8,0x08,0x20,0x3F,0x20,0x03,0x1C,0x3F,0x00},/*"N",45*/ |
| zhimagod | 0:ded1a1350d0d | 60 | {0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00},/*"O",46*/ |
| zhimagod | 0:ded1a1350d0d | 61 | {0x08,0xF8,0x08,0x08,0x08,0xF0,0x00,0x20,0x3F,0x21,0x01,0x01,0x00,0x00},/*"P",47*/ |
| zhimagod | 0:ded1a1350d0d | 62 | {0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x0F,0x18,0x24,0x24,0x78,0x4F,0x00},/*"Q",48*/ |
| zhimagod | 0:ded1a1350d0d | 63 | {0x08,0xF8,0x88,0x88,0x88,0x70,0x00,0x20,0x3F,0x20,0x01,0x06,0x38,0x20},/*"R",49*/ |
| zhimagod | 0:ded1a1350d0d | 64 | {0x00,0x70,0x88,0x08,0x08,0x18,0x00,0x00,0x30,0x20,0x21,0x23,0x1E,0x00},/*"S",50*/ |
| zhimagod | 0:ded1a1350d0d | 65 | {0x18,0x08,0x08,0xF8,0x08,0x08,0x18,0x00,0x00,0x20,0x3F,0x20,0x00,0x00},/*"T",51*/ |
| zhimagod | 0:ded1a1350d0d | 66 | {0x08,0xF8,0x08,0x00,0x08,0xF8,0x08,0x00,0x1F,0x20,0x20,0x20,0x1F,0x00},/*"U",52*/ |
| zhimagod | 0:ded1a1350d0d | 67 | {0x08,0x78,0x88,0x00,0x88,0x78,0x08,0x00,0x00,0x0F,0x38,0x0F,0x00,0x00},/*"V",53*/ |
| zhimagod | 0:ded1a1350d0d | 68 | {0x08,0xF8,0xC4,0xF8,0x00,0xF8,0x08,0x00,0x07,0x3F,0x01,0x3E,0x07,0x00},/*"W",54*/ |
| zhimagod | 0:ded1a1350d0d | 69 | {0x08,0x38,0xE8,0x80,0xE8,0x18,0x08,0x20,0x30,0x2C,0x03,0x2E,0x38,0x20},/*"X",55*/ |
| zhimagod | 0:ded1a1350d0d | 70 | {0x08,0x38,0xC8,0x00,0xC8,0x38,0x08,0x00,0x00,0x20,0x3F,0x20,0x00,0x00},/*"Y",56*/ |
| zhimagod | 0:ded1a1350d0d | 71 | {0x10,0x08,0x08,0xC8,0x38,0x08,0x00,0x30,0x2C,0x23,0x20,0x20,0x10,0x00},/*"Z",57*/ |
| zhimagod | 0:ded1a1350d0d | 72 | {0x00,0x00,0x00,0xFE,0x02,0x02,0x00,0x00,0x00,0x00,0x7F,0x40,0x40,0x00},/*"[",58*/ |
| zhimagod | 0:ded1a1350d0d | 73 | {0x00,0x1C,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x1C,0x60,0x00},/*"\",59*/ |
| zhimagod | 0:ded1a1350d0d | 74 | {0x00,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,0x40,0x40,0x7F,0x00,0x00,0x00},/*"]",60*/ |
| zhimagod | 0:ded1a1350d0d | 75 | {0x00,0x00,0x04,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"^",61*/ |
| zhimagod | 0:ded1a1350d0d | 76 | {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80},/*"_",62*/ |
| zhimagod | 0:ded1a1350d0d | 77 | {0x00,0x02,0x02,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"`",63*/ |
| zhimagod | 0:ded1a1350d0d | 78 | {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x1D,0x24,0x22,0x22,0x3F,0x20},/*"a",64*/ |
| zhimagod | 0:ded1a1350d0d | 79 | {0x08,0xF8,0x00,0x80,0x80,0x00,0x00,0x00,0x3F,0x21,0x20,0x20,0x1F,0x00},/*"b",65*/ |
| zhimagod | 0:ded1a1350d0d | 80 | {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x1F,0x31,0x20,0x20,0x11,0x00},/*"c",66*/ |
| zhimagod | 0:ded1a1350d0d | 81 | {0x00,0x00,0x80,0x80,0x88,0xF8,0x00,0x00,0x1F,0x21,0x20,0x20,0x3F,0x20},/*"d",67*/ |
| zhimagod | 0:ded1a1350d0d | 82 | {0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x22,0x22,0x22,0x13,0x00},/*"e",68*/ |
| zhimagod | 0:ded1a1350d0d | 83 | {0x80,0x80,0xF0,0x88,0x88,0x18,0x00,0x00,0x20,0x3F,0x20,0x20,0x00,0x00},/*"f",69*/ |
| zhimagod | 0:ded1a1350d0d | 84 | {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x6B,0x94,0x94,0x93,0x60,0x00},/*"g",70*/ |
| zhimagod | 0:ded1a1350d0d | 85 | {0x08,0xF8,0x00,0x80,0x80,0x80,0x00,0x20,0x3F,0x21,0x00,0x20,0x3F,0x20},/*"h",71*/ |
| zhimagod | 0:ded1a1350d0d | 86 | {0x00,0x80,0x80,0x98,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00},/*"i",72*/ |
| zhimagod | 0:ded1a1350d0d | 87 | {0x00,0x00,0x80,0x80,0x98,0x00,0x00,0x00,0xC0,0x80,0x80,0x7F,0x00,0x00},/*"j",73*/ |
| zhimagod | 0:ded1a1350d0d | 88 | {0x08,0xF8,0x00,0x80,0x80,0x80,0x00,0x20,0x3F,0x24,0x06,0x39,0x20,0x00},/*"k",74*/ |
| zhimagod | 0:ded1a1350d0d | 89 | {0x00,0x08,0x08,0xF8,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00},/*"l",75*/ |
| zhimagod | 0:ded1a1350d0d | 90 | {0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x00,0x3F,0x00,0x3F,0x20},/*"m",76*/ |
| zhimagod | 0:ded1a1350d0d | 91 | {0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x20,0x3F,0x21,0x00,0x20,0x3F,0x20},/*"n",77*/ |
| zhimagod | 0:ded1a1350d0d | 92 | {0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x31,0x20,0x21,0x1F,0x00},/*"o",78*/ |
| zhimagod | 0:ded1a1350d0d | 93 | {0x80,0x80,0x00,0x80,0x80,0x00,0x00,0x80,0xFF,0xA1,0x20,0x30,0x1F,0x00},/*"p",79*/ |
| zhimagod | 0:ded1a1350d0d | 94 | {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x1F,0x21,0x20,0xA0,0xFF,0x80},/*"q",80*/ |
| zhimagod | 0:ded1a1350d0d | 95 | {0x80,0x80,0x80,0x00,0x80,0x80,0x00,0x20,0x20,0x3F,0x21,0x20,0x01,0x00},/*"r",81*/ |
| zhimagod | 0:ded1a1350d0d | 96 | {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x33,0x24,0x24,0x24,0x19,0x00},/*"s",82*/ |
| zhimagod | 0:ded1a1350d0d | 97 | {0x00,0x80,0x80,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x00},/*"t",83*/ |
| zhimagod | 0:ded1a1350d0d | 98 | {0x80,0x80,0x00,0x00,0x80,0x80,0x00,0x00,0x3F,0x20,0x20,0x20,0x3F,0x20},/*"u",84*/ |
| zhimagod | 0:ded1a1350d0d | 99 | {0x80,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x03,0x1C,0x30,0x1C,0x03,0x00},/*"v",85*/ |
| zhimagod | 0:ded1a1350d0d | 100 | {0x80,0x80,0xC0,0x80,0x00,0x80,0x80,0x00,0x0F,0x3F,0x07,0x38,0x0F,0x00},/*"w",86*/ |
| zhimagod | 0:ded1a1350d0d | 101 | {0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x20,0x31,0x2E,0x0E,0x31,0x20,0x00},/*"x",87*/ |
| zhimagod | 0:ded1a1350d0d | 102 | {0x80,0x80,0x80,0x00,0x80,0x80,0x80,0x80,0x83,0x4E,0x30,0x0E,0x01,0x00},/*"y",88*/ |
| zhimagod | 0:ded1a1350d0d | 103 | {0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x21,0x38,0x24,0x23,0x30,0x00},/*"z",89*/ |
| zhimagod | 0:ded1a1350d0d | 104 | {0x00,0x00,0x00,0x80,0x7E,0x02,0x00,0x00,0x00,0x00,0x00,0x3F,0x40,0x00},/*"{",90*/ |
| zhimagod | 0:ded1a1350d0d | 105 | {0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00},/*"|",91*/ |
| zhimagod | 0:ded1a1350d0d | 106 | {0x00,0x02,0x7E,0x80,0x00,0x00,0x00,0x00,0x40,0x3F,0x00,0x00,0x00,0x00},/*"}",92*/ |
| zhimagod | 0:ded1a1350d0d | 107 | {0x00,0x06,0x01,0x01,0x02,0x04,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"~",93*/ |
| zhimagod | 0:ded1a1350d0d | 108 | }; |
| zhimagod | 0:ded1a1350d0d | 109 | |
| zhimagod | 0:ded1a1350d0d | 110 | byte StringTable[12]; |
| zhimagod | 0:ded1a1350d0d | 111 | byte const String_1[]={"bbs.eeworld"}; |
| zhimagod | 0:ded1a1350d0d | 112 | byte const String_2[]={"ID:zhimagod"}; |
| zhimagod | 0:ded1a1350d0d | 113 | |
| zhimagod | 0:ded1a1350d0d | 114 | const byte S1_Long = sizeof(String_1)/sizeof(String_1[0])-1; |
| zhimagod | 0:ded1a1350d0d | 115 | const byte S2_Long = sizeof(String_2)/sizeof(String_2[0])-1; |
| zhimagod | 0:ded1a1350d0d | 116 | |
| zhimagod | 0:ded1a1350d0d | 117 | |
| zhimagod | 0:ded1a1350d0d | 118 | //LCD Initials Values Array |
| zhimagod | 0:ded1a1350d0d | 119 | const byte LCD_Init_Array[8]= |
| zhimagod | 0:ded1a1350d0d | 120 | { |
| zhimagod | 0:ded1a1350d0d | 121 | Function|PowerUp|EntryVer|InstrucExtern, |
| zhimagod | 0:ded1a1350d0d | 122 | Vop|55, |
| zhimagod | 0:ded1a1350d0d | 123 | Temper|0, |
| zhimagod | 0:ded1a1350d0d | 124 | Bias|3, |
| zhimagod | 0:ded1a1350d0d | 125 | Function|PowerUp|EntryHor|InstrucBasic, |
| zhimagod | 0:ded1a1350d0d | 126 | DispCtrl|Normal, |
| zhimagod | 0:ded1a1350d0d | 127 | AddressX(0), |
| zhimagod | 0:ded1a1350d0d | 128 | AddressY(0), |
| zhimagod | 0:ded1a1350d0d | 129 | }; |
| zhimagod | 0:ded1a1350d0d | 130 | //LCD write function |
| zhimagod | 0:ded1a1350d0d | 131 | //just add the cs signal for SPI operation |
| zhimagod | 0:ded1a1350d0d | 132 | void LCD_Write(unsigned char data) |
| zhimagod | 0:ded1a1350d0d | 133 | { |
| zhimagod | 0:ded1a1350d0d | 134 | LCD_CS=0; |
| zhimagod | 0:ded1a1350d0d | 135 | Lcd_5110.write(data); |
| zhimagod | 0:ded1a1350d0d | 136 | LCD_CS=1; |
| zhimagod | 0:ded1a1350d0d | 137 | return; |
| zhimagod | 0:ded1a1350d0d | 138 | } |
| zhimagod | 0:ded1a1350d0d | 139 | //LCD Initials Function |
| zhimagod | 0:ded1a1350d0d | 140 | //Initials the LCD use the Initials values |
| zhimagod | 0:ded1a1350d0d | 141 | void LCD_Init(void) |
| zhimagod | 0:ded1a1350d0d | 142 | { |
| zhimagod | 0:ded1a1350d0d | 143 | unsigned int i; |
| zhimagod | 0:ded1a1350d0d | 144 | Lcd_5110.frequency(10000000); |
| zhimagod | 0:ded1a1350d0d | 145 | LCD_RES=0; |
| zhimagod | 0:ded1a1350d0d | 146 | wait_us(10); |
| zhimagod | 0:ded1a1350d0d | 147 | LCD_DC=0; //command |
| zhimagod | 0:ded1a1350d0d | 148 | LCD_RES=1; |
| zhimagod | 0:ded1a1350d0d | 149 | for(i=0;i<8;i++) |
| zhimagod | 0:ded1a1350d0d | 150 | { |
| zhimagod | 0:ded1a1350d0d | 151 | LCD_Write(LCD_Init_Array[i]); |
| zhimagod | 0:ded1a1350d0d | 152 | } |
| zhimagod | 0:ded1a1350d0d | 153 | LCD_DC=1; //Data |
| zhimagod | 0:ded1a1350d0d | 154 | for(i=0;i<504;i++) |
| zhimagod | 0:ded1a1350d0d | 155 | { |
| zhimagod | 0:ded1a1350d0d | 156 | LCD_Write(0x00);//clear DDR |
| zhimagod | 0:ded1a1350d0d | 157 | } |
| zhimagod | 0:ded1a1350d0d | 158 | } |
| zhimagod | 0:ded1a1350d0d | 159 | |
| zhimagod | 0:ded1a1350d0d | 160 | //Locate the pointer to x,y on the screen |
| zhimagod | 0:ded1a1350d0d | 161 | void LCD_XY(unsigned char x,unsigned char y) |
| zhimagod | 0:ded1a1350d0d | 162 | { |
| zhimagod | 0:ded1a1350d0d | 163 | LCD_DC=0; |
| zhimagod | 0:ded1a1350d0d | 164 | LCD_Write(Hor_Basic); //basic activ |
| zhimagod | 0:ded1a1350d0d | 165 | LCD_Write(AddressX(x)); //set x |
| zhimagod | 0:ded1a1350d0d | 166 | LCD_Write(AddressY(y)); //set y |
| zhimagod | 0:ded1a1350d0d | 167 | LCD_DC=1; |
| zhimagod | 0:ded1a1350d0d | 168 | } |
| zhimagod | 0:ded1a1350d0d | 169 | |
| zhimagod | 0:ded1a1350d0d | 170 | //Display one char at position x,y with 16*7 or 16*14 pix |
| zhimagod | 0:ded1a1350d0d | 171 | //x :x address |
| zhimagod | 0:ded1a1350d0d | 172 | //y :y address |
| zhimagod | 0:ded1a1350d0d | 173 | //Invert:Invert Display this char |
| zhimagod | 0:ded1a1350d0d | 174 | //Index :the Char Index in the CharTable |
| zhimagod | 0:ded1a1350d0d | 175 | void LCD_Disp_Char(byte x,byte y,byte Invert,byte Index) |
| zhimagod | 0:ded1a1350d0d | 176 | { |
| zhimagod | 0:ded1a1350d0d | 177 | byte i,mask; |
| zhimagod | 0:ded1a1350d0d | 178 | const byte *p; |
| zhimagod | 0:ded1a1350d0d | 179 | //adjust the Index's vvalue |
| zhimagod | 0:ded1a1350d0d | 180 | if(Index<33) |
| zhimagod | 0:ded1a1350d0d | 181 | Index=33; |
| zhimagod | 0:ded1a1350d0d | 182 | else if(Index>126) |
| zhimagod | 0:ded1a1350d0d | 183 | Index=125; |
| zhimagod | 0:ded1a1350d0d | 184 | |
| zhimagod | 0:ded1a1350d0d | 185 | p=&CharTable[Index-33][0]; |
| zhimagod | 0:ded1a1350d0d | 186 | LCD_DC=1; |
| zhimagod | 0:ded1a1350d0d | 187 | //adjust if Invert |
| zhimagod | 0:ded1a1350d0d | 188 | if(Invert!=0) |
| zhimagod | 0:ded1a1350d0d | 189 | mask=0xFF; |
| zhimagod | 0:ded1a1350d0d | 190 | else |
| zhimagod | 0:ded1a1350d0d | 191 | mask=0x00; |
| zhimagod | 0:ded1a1350d0d | 192 | //upper half of a letter |
| zhimagod | 0:ded1a1350d0d | 193 | LCD_XY(x,y); |
| zhimagod | 0:ded1a1350d0d | 194 | for(i=0;i<7;i++) |
| zhimagod | 0:ded1a1350d0d | 195 | { |
| zhimagod | 0:ded1a1350d0d | 196 | LCD_Write((*p)^mask); |
| zhimagod | 0:ded1a1350d0d | 197 | p++; |
| zhimagod | 0:ded1a1350d0d | 198 | } |
| zhimagod | 0:ded1a1350d0d | 199 | y++; |
| zhimagod | 0:ded1a1350d0d | 200 | //down half of a letter |
| zhimagod | 0:ded1a1350d0d | 201 | LCD_XY(x,y); |
| zhimagod | 0:ded1a1350d0d | 202 | for(i=0;i<7;i++) |
| zhimagod | 0:ded1a1350d0d | 203 | { |
| zhimagod | 0:ded1a1350d0d | 204 | LCD_Write((*p)^mask); |
| zhimagod | 0:ded1a1350d0d | 205 | p++; |
| zhimagod | 0:ded1a1350d0d | 206 | } |
| zhimagod | 0:ded1a1350d0d | 207 | } |
| zhimagod | 0:ded1a1350d0d | 208 | //display string |
| zhimagod | 0:ded1a1350d0d | 209 | //ROM source |
| zhimagod | 0:ded1a1350d0d | 210 | void LCD_Disp_String_Rom(byte Line,byte row,byte Number,const byte *String) |
| zhimagod | 0:ded1a1350d0d | 211 | { |
| zhimagod | 0:ded1a1350d0d | 212 | byte x,y; |
| zhimagod | 0:ded1a1350d0d | 213 | byte i; |
| zhimagod | 0:ded1a1350d0d | 214 | if(Line>2){ |
| zhimagod | 0:ded1a1350d0d | 215 | return; |
| zhimagod | 0:ded1a1350d0d | 216 | } |
| zhimagod | 0:ded1a1350d0d | 217 | y=Line*2; |
| zhimagod | 0:ded1a1350d0d | 218 | x=row; |
| zhimagod | 0:ded1a1350d0d | 219 | for(i=0;i<Number;i++) |
| zhimagod | 0:ded1a1350d0d | 220 | { |
| zhimagod | 0:ded1a1350d0d | 221 | LCD_Disp_Char(x,y,0,*String); |
| zhimagod | 0:ded1a1350d0d | 222 | x+=7; |
| zhimagod | 0:ded1a1350d0d | 223 | if(x>84){ |
| zhimagod | 0:ded1a1350d0d | 224 | return; |
| zhimagod | 0:ded1a1350d0d | 225 | } |
| zhimagod | 0:ded1a1350d0d | 226 | String++; |
| zhimagod | 0:ded1a1350d0d | 227 | } |
| zhimagod | 0:ded1a1350d0d | 228 | } |
| zhimagod | 0:ded1a1350d0d | 229 | //display string |
| zhimagod | 0:ded1a1350d0d | 230 | //RAM source |
| zhimagod | 0:ded1a1350d0d | 231 | void LCD_Disp_String_Ram(byte Line,byte row,byte Number,byte *String) |
| zhimagod | 0:ded1a1350d0d | 232 | { |
| zhimagod | 0:ded1a1350d0d | 233 | byte x,y; |
| zhimagod | 0:ded1a1350d0d | 234 | byte i; |
| zhimagod | 0:ded1a1350d0d | 235 | if(Line>2){ |
| zhimagod | 0:ded1a1350d0d | 236 | return; |
| zhimagod | 0:ded1a1350d0d | 237 | } |
| zhimagod | 0:ded1a1350d0d | 238 | y=Line*2; |
| zhimagod | 0:ded1a1350d0d | 239 | x=row; |
| zhimagod | 0:ded1a1350d0d | 240 | for(i=0;i<Number;i++) |
| zhimagod | 0:ded1a1350d0d | 241 | { |
| zhimagod | 0:ded1a1350d0d | 242 | LCD_Disp_Char(x,y,1,*String); |
| zhimagod | 0:ded1a1350d0d | 243 | x+=7; |
| zhimagod | 0:ded1a1350d0d | 244 | if(x>84){ |
| zhimagod | 0:ded1a1350d0d | 245 | return; |
| zhimagod | 0:ded1a1350d0d | 246 | } |
| zhimagod | 0:ded1a1350d0d | 247 | String++; |
| zhimagod | 0:ded1a1350d0d | 248 | } |
| zhimagod | 0:ded1a1350d0d | 249 | } |
| zhimagod | 0:ded1a1350d0d | 250 | |
| zhimagod | 0:ded1a1350d0d | 251 | int main() { |
| zhimagod | 0:ded1a1350d0d | 252 | int i = 0; |
| zhimagod | 0:ded1a1350d0d | 253 | LCD_CS=1; |
| zhimagod | 0:ded1a1350d0d | 254 | LCD_RES=1; |
| zhimagod | 0:ded1a1350d0d | 255 | LCD_Init(); |
| zhimagod | 0:ded1a1350d0d | 256 | for(i=0;i<12;i++){ |
| zhimagod | 0:ded1a1350d0d | 257 | StringTable[i]=(i+48); |
| zhimagod | 0:ded1a1350d0d | 258 | } |
| zhimagod | 0:ded1a1350d0d | 259 | while(1) |
| zhimagod | 0:ded1a1350d0d | 260 | { |
| zhimagod | 0:ded1a1350d0d | 261 | LCD_Init(); |
| zhimagod | 0:ded1a1350d0d | 262 | wait(0.2); |
| zhimagod | 0:ded1a1350d0d | 263 | LCD_Disp_String_Ram(0,0,12,&StringTable[0]); |
| zhimagod | 0:ded1a1350d0d | 264 | wait(0.2); |
| zhimagod | 0:ded1a1350d0d | 265 | LCD_Disp_String_Rom(1,0,S1_Long,&String_1[0]); |
| zhimagod | 0:ded1a1350d0d | 266 | wait(0.2); |
| zhimagod | 0:ded1a1350d0d | 267 | LCD_Disp_String_Rom(2,0,S2_Long,&String_2[0]); |
| zhimagod | 0:ded1a1350d0d | 268 | wait(1); |
| zhimagod | 0:ded1a1350d0d | 269 | |
| zhimagod | 0:ded1a1350d0d | 270 | } |
| zhimagod | 0:ded1a1350d0d | 271 | } |
| zhimagod | 0:ded1a1350d0d | 272 |