C51 COMPILER V7.06 12864LCD___ST7920__ 06/29/2017 12:59:57 PAGE 1 C51 COMPILER V7.06, COMPILATION OF MODULE 12864LCD___ST7920__ OBJECT MODULE PLACED IN 12864LCD (ST7920).OBJ COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 12864LCD (ST7920).c BROWSE DEBUG OBJECTEXTEND stmt level source 1 /******************************************************************** 2 * * 3 * TX-1C 单片机开发系统演示程序 -12864 图片与文字显示 * 4 * * 5 * ST7920控制芯片(汉字库),串口模式。 * 6 * * 7 * 工作芯片:STC89C52 晶振频率:11.0592MHz * 8 * * 9 * 版本: V1.0 (2009/1/2) * 10 * 作者: 郭天祥 (Email: txmcu@163.com) * 11 * 网站: www.txmcu.com(天祥电子) * 12 * 邮箱: txmcu@163.com * 13 * * 14 *【版权】Copyright(C)天祥电子 www.txmcu.com All Rights Reserved * 15 *【声明】此程序仅用于学习与参考,引用请注明版权和作者信息! * 16 * * 17 /*******************************************************************/ 18 19 20 #include 21 #include 22 23 #define uchar unsigned char 24 #define uint unsigned int 25 26 /********** 12864LCD引脚定义 **********/ 27 28 sbit CS = P3^5; //片选 高电平有效 单片LCD使用时可固定高电平 29 sbit SID = P3^6; //数据 30 sbit SCLK = P3^4; //时钟 31 sbit PSB = P3^7; //低电平时表示用串口驱动,可固定低电平 32 //sbit RESET = P2^5; //LCD复位,LCD模块自带复位电路。可不接 33 34 /*********************************************************/ 35 36 uchar code DIS1[] = {" 天祥电子 "}; 37 uchar code DIS2[] = {"www.txmcu.com"}; 38 uchar code DIS3[] = {"TX-1C 51开发板"}; 39 uchar code DIS4[] = {"您最好的选择"}; 40 41 uchar code Photo1[] ={ 42 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 43 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 44 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 45 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01, 46 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 47 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01, 48 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x02, 49 0x10,0x04,0x00,0x40,0xF1,0x02,0x10,0x01, 50 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x02, 51 0xFE,0x0A,0x07,0xFE,0x11,0x07,0xBE,0x01, 52 0x83,0xED,0x80,0xF8,0x87,0xBE,0x23,0xC4, 53 0x82,0x11,0x04,0x02,0x52,0x89,0x48,0x01, 54 0x82,0xA5,0x00,0x81,0x88,0xAA,0x21,0x29, 55 0x7C,0x20,0x89,0x24,0x54,0x42,0x00,0x01, C51 COMPILER V7.06 12864LCD___ST7920__ 06/29/2017 12:59:57 PAGE 2 56 0x80,0x85,0x00,0x80,0x88,0x08,0x31,0x2E, 57 0x00,0xDF,0x60,0xA0,0x5B,0xA2,0x7C,0x01, 58 0x80,0x82,0x3E,0xF0,0x86,0x08,0x51,0xC2, 59 0xFE,0x00,0x02,0x20,0xF0,0x0F,0xC4,0x01, 60 0x80,0x82,0x00,0x08,0x81,0x08,0x51,0x45, 61 0x10,0x00,0x01,0x20,0x15,0x42,0x7C,0x01, 62 0x80,0x85,0x00,0x08,0x80,0x88,0x79,0x2E, 63 0x58,0x3F,0x8F,0xFE,0x35,0x47,0x44,0x01, 64 0x80,0x85,0x00,0x88,0x88,0x88,0x49,0x21, 65 0x54,0x20,0x80,0x50,0xD5,0x4A,0x7C,0x01, 66 0x81,0xCD,0x80,0x71,0xCF,0x1C,0xCF,0xBE, 67 0x92,0x20,0x80,0x88,0x10,0x82,0x44,0x01, 68 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x01, 69 0x30,0x3F,0x87,0x04,0x6F,0xE2,0x7C,0x01, 70 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 71 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01, 72 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 73 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01, 74 0x80,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 75 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x01, 76 0x80,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 77 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x01, 78 0x80,0x03,0xFF,0xFB,0x7C,0x00,0x70,0x38, 79 0x77,0xFA,0xBF,0xFF,0xFF,0xFF,0xE0,0x01, 80 0x80,0x03,0xFF,0xFA,0xFF,0xD7,0xF7,0xBF, 81 0x40,0x86,0xDF,0xFF,0xFF,0xFF,0xE0,0x01, 82 0x80,0x03,0xFF,0xF6,0x06,0x00,0xF0,0x3B, 83 0x5E,0xF6,0xFF,0xFF,0xFF,0xFF,0xE0,0x01, 84 0x80,0x03,0xFF,0xE5,0xF6,0xD6,0xF7,0xBB, 85 0x40,0x80,0x0F,0xFF,0xFF,0xFF,0xE0,0x01, 86 0x80,0x03,0xFF,0xD3,0xBE,0x00,0xF0,0x3B, 87 0x5F,0xF6,0xFF,0xFF,0xFF,0xFF,0xE0,0x01, 88 0x80,0x03,0xFF,0xF6,0xAF,0xDF,0xFF,0xF8, 89 0x40,0xF4,0xDF,0xFF,0xFF,0xFF,0xE0,0x01, 90 0x80,0x03,0xFF,0xF6,0xAC,0x00,0x00,0x0F, 91 0x4A,0xE2,0xBF,0xFF,0xFF,0xFF,0xE0,0x01, 92 0x80,0x03,0xFF,0xF5,0xB7,0xBB,0xED,0xFE, 93 0x40,0x97,0x7F,0xFF,0xFF,0xFF,0xE0,0x01, 94 0x80,0x03,0xFF,0xF3,0xB7,0x17,0xE4,0x19, 95 0x2A,0xF6,0x6F,0xFF,0xFF,0xFF,0xE0,0x01, 96 0x80,0x03,0xFF,0xF7,0xBF,0xE3,0xD9,0xFF, 97 0x6A,0xF1,0xAD,0xEF,0xBE,0xF7,0xE0,0x01, 98 0x80,0x03,0xFF,0xF6,0x3C,0x1C,0xBC,0x0C, 99 0x7C,0xC7,0xCF,0xFF,0xFF,0xFF,0xE0,0x01, 100 0x80,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 101 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x01, 102 0x80,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 103 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x01, 104 0x80,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 105 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x01, 106 0x80,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 107 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x01, 108 0x80,0x03,0xAB,0xFF,0xFF,0xFF,0xFF,0xFF, 109 0xFF,0xFF,0x87,0xFF,0xF7,0xFF,0xE0,0x01, 110 0x80,0x03,0xC7,0xFF,0xFF,0xFF,0xFF,0xFF, 111 0xFF,0xFF,0x80,0xFF,0x73,0xFF,0xE0,0x01, 112 0x80,0x03,0x00,0xBF,0xFF,0xFF,0xCF,0xFF, 113 0xFF,0xFF,0xFE,0xF6,0x33,0xFF,0xE0,0x01, 114 0x80,0x03,0xC7,0xFF,0xFF,0xFF,0x1F,0xBF, 115 0xFF,0xF3,0xFE,0xE4,0x13,0xFF,0xE0,0x01, 116 0x80,0x03,0xA3,0xFF,0xFF,0xFC,0x1C,0x7D, 117 0xFF,0xFC,0xFF,0xC0,0x83,0xFF,0xE0,0x01, C51 COMPILER V7.06 12864LCD___ST7920__ 06/29/2017 12:59:57 PAGE 3 118 0x80,0x03,0x6D,0xFF,0xFF,0xF0,0x30,0x71, 119 0xFD,0xFF,0x3F,0xB9,0xC7,0xFF,0xE0,0x01, 120 0x80,0x03,0xEF,0xDF,0x8F,0xE0,0x00,0x43, 121 0x7E,0x3F,0xCF,0xF9,0xF7,0xFF,0xE0,0x01, 122 0x80,0x03,0xFF,0xEF,0x07,0xC0,0x00,0x02, 123 0x5F,0x07,0xE3,0xFB,0xFF,0xBF,0xE0,0x01, 124 0x80,0x03,0xEF,0xAE,0x63,0x80,0x00,0xE4, 125 0x43,0xC0,0xF0,0xFF,0xFE,0xFF,0xE0,0x01, 126 0x80,0x03,0xFF,0xC6,0x93,0x80,0x00,0x10, 127 0x40,0x70,0x18,0x7E,0x3E,0x5F,0xE0,0x01, 128 0x80,0x03,0xFF,0x46,0x2B,0x00,0x00,0x00, 129 0xC0,0x00,0x04,0x3C,0x1E,0x3F,0xE0,0x01, 130 0x80,0x03,0xFF,0x82,0x28,0x00,0x00,0x00, 131 0xC0,0xE0,0x00,0x18,0xCC,0x6F,0xE0,0x01, 132 0x80,0x03,0xFE,0x81,0x10,0x00,0x00,0x01, 133 0x41,0x00,0x00,0x19,0x2C,0x5F,0xE0,0x01, 134 0x80,0x03,0xFF,0x01,0x80,0x00,0x3F,0x01, 135 0x20,0x00,0x00,0x0A,0x88,0x17,0xE0,0x01, 136 0x80,0x03,0xFD,0x01,0xC0,0x00,0xFF,0x82, 137 0x20,0x00,0x00,0x02,0x88,0x0F,0xE0,0x01, 138 0x80,0x03,0xFE,0x03,0xE0,0x00,0x03,0xC4, 139 0x10,0x1F,0x80,0x01,0x10,0x07,0xE0,0x01, 140 0x80,0x03,0xFA,0x07,0xA0,0x00,0x07,0x08, 141 0x11,0x3F,0xE0,0x00,0x3C,0x0F,0xE0,0x01, 142 0x80,0x03,0xFC,0x00,0x20,0x00,0x06,0x10, 143 0x08,0xF8,0x00,0x00,0x7E,0x0B,0xE0,0x01, 144 0x80,0x03,0xF4,0x00,0x40,0x00,0x02,0x20, 145 0x04,0x18,0x00,0x00,0x41,0x07,0xE0,0x01, 146 0x80,0x03,0xF8,0x07,0x80,0x04,0x4C,0x20, 147 0x02,0x1C,0x00,0x00,0x40,0x06,0xE0,0x01, 148 0x80,0x03,0xFC,0x18,0x80,0x02,0x20,0x40, 149 0x01,0x0C,0x00,0x00,0x40,0x04,0x60,0x01, 150 0x80,0x03,0xF4,0x28,0x40,0x05,0x10,0x40, 151 0x00,0x88,0x00,0x00,0x60,0x06,0xE0,0x01, 152 0x80,0x03,0xE0,0x44,0x40,0x02,0x00,0x40, 153 0x00,0x86,0x44,0x00,0x50,0x07,0xE0,0x01, 154 0x80,0x03,0xF0,0x42,0x21,0xC0,0x00,0x40, 155 0x00,0x40,0x88,0x0F,0x80,0x02,0xE0,0x01, 156 0x80,0x03,0xF8,0x82,0x11,0x30,0x00,0x80, 157 0x00,0x41,0x14,0x14,0xC4,0x03,0xE0,0x01, 158 0x80,0x03,0xD0,0x81,0x0E,0x2E,0x03,0x00, 159 0x00,0x40,0x08,0x22,0x22,0x02,0xE0,0x01, 160 0x80,0x03,0xF0,0x81,0x00,0x23,0xFC,0x00, 161 0x00,0x40,0x00,0x61,0x01,0x01,0xE0,0x01, 162 0x80,0x03,0xD8,0x81,0x00,0x22,0x00,0x00, 163 0x00,0x20,0x01,0xA1,0x00,0x03,0x60,0x01, 164 0x80,0x03,0xF0,0x81,0x00,0x22,0x00,0x00, 165 0x00,0x18,0x0E,0x40,0x80,0x81,0xA0,0x01, 166 0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 167 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01, 168 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 169 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF 170 }; 171 172 /******************************************************************************/ 173 uchar code Photo2[] ={ 174 //海豚戏水 175 176 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 177 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 178 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 179 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, C51 COMPILER V7.06 12864LCD___ST7920__ 06/29/2017 12:59:57 PAGE 4 180 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 181 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 182 0x00,0x7F,0x00,0x00,0x00,0x03,0xFE,0x00,0x00,0x00,0x00,0x02,0x00,0x76,0x00,0x00, 183 0x00,0xC3,0xFF,0x00,0x00,0x3F,0xE7,0xE0,0x00,0x00,0x00,0x03,0x00,0xFF,0x80,0x00, 184 0x00,0x81,0xFF,0xFE,0x00,0x7C,0x03,0xF0,0x00,0x00,0x00,0x01,0xF7,0xCB,0xF8,0x00, 185 0x01,0x83,0xF8,0x7B,0x00,0x40,0x00,0x30,0x00,0x00,0x00,0x00,0x3F,0xC0,0xF8,0x00, 186 0x03,0x1E,0x3C,0x01,0x80,0x60,0x00,0x30,0x00,0x00,0x00,0x00,0x01,0x40,0x18,0x00, 187 0x03,0x30,0x0C,0x01,0xE0,0x6C,0x00,0x70,0x00,0x00,0x00,0x00,0x01,0x7C,0xCC,0x00, 188 0x03,0x24,0x6F,0x31,0x20,0x7C,0x40,0x60,0x00,0x00,0x00,0x00,0x01,0x97,0xFC,0x00, 189 0x01,0xBF,0xFB,0xF3,0xE0,0x3F,0xE7,0xC0,0x00,0x00,0x00,0x00,0x01,0xFB,0x1C,0x00, 190 0x00,0x9B,0xC2,0x1F,0x00,0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x0C,0xFE,0x00, 191 0x00,0xCC,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xB8,0x00, 192 0x00,0x7E,0x7E,0x00,0x00,0x00,0x00,0x00,0x1F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00, 193 0x00,0x07,0xE0,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xFF,0x80,0x00,0x00,0x00,0x00, 194 0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0xE0,0x03,0xFF,0xE0,0x00,0x00,0x00,0x00, 195 0x00,0x00,0x00,0x1F,0x00,0x00,0x78,0x01,0xC0,0x00,0x00,0x70,0x00,0x00,0x00,0x00, 196 0x00,0x00,0x00,0x20,0x80,0x00,0xF8,0x01,0x80,0x00,0x00,0x30,0x00,0x00,0x00,0x00, 197 0x00,0x00,0x00,0x2E,0x80,0x00,0xD8,0x03,0x60,0x00,0x01,0xF8,0x00,0x00,0x00,0x00, 198 0x00,0x00,0x00,0x2A,0x80,0x00,0x98,0x02,0x60,0x00,0x00,0xC0,0x00,0x00,0x00,0x00, 199 0x00,0x00,0x00,0x2E,0x80,0x01,0x98,0x03,0xE0,0xC0,0x00,0x60,0x00,0x00,0x00,0x00, 200 0x00,0x00,0x00,0x20,0x83,0xFF,0x8C,0x07,0xE1,0xC8,0x00,0x30,0x00,0x00,0x00,0x00, 201 0x00,0x00,0x00,0x1F,0x7F,0x07,0x8C,0x0F,0xFF,0x8C,0x00,0x18,0x00,0x00,0x00,0x00, 202 0x00,0x00,0x00,0x00,0xB8,0x0F,0xCC,0x1F,0x83,0x8F,0x00,0x18,0x00,0x00,0x00,0x00, 203 0x00,0x00,0x00,0x39,0xC0,0x38,0xFE,0x1E,0x00,0x8F,0xC0,0x0C,0x00,0x00,0x00,0x00, 204 0x00,0x00,0x00,0x3B,0x80,0x70,0x1E,0x00,0x00,0xCC,0xF0,0x0C,0x00,0x00,0x00,0x00, 205 0x00,0x00,0x00,0x76,0x00,0xC0,0x00,0x00,0x00,0x6E,0x3C,0x06,0x00,0x00,0x00,0x00, 206 0x00,0x00,0x00,0x7E,0x01,0x80,0x00,0x00,0x00,0x3F,0x0E,0x06,0x00,0x00,0x00,0x00, 207 0x00,0x00,0x00,0xDC,0x03,0x00,0x00,0x00,0x00,0x1F,0x03,0x82,0x00,0x00,0x00,0x00, 208 0x00,0x00,0x00,0xD8,0x06,0x00,0x00,0x00,0x00,0x00,0x01,0xC2,0x00,0x00,0x00,0x00, 209 0x00,0x00,0x00,0xC0,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0xC2,0x00,0x00,0x00,0x00, 210 0x00,0x00,0x00,0x80,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x62,0x00,0x00,0x00,0x00, 211 0x00,0x00,0x00,0xC0,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00, 212 0x00,0x00,0x00,0xC0,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x26,0x00,0x00,0x00,0x00, 213 0x00,0x00,0x00,0x80,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x00, 214 0xFF,0xFF,0xFF,0x80,0x3F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xFF,0xFF,0xFE,0x00, 215 0x00,0x00,0x01,0x80,0x30,0x00,0x00,0x00,0x00,0x00,0x3F,0xD8,0x00,0x00,0x00,0x00, 216 0x3E,0x00,0x01,0x80,0x60,0x00,0x00,0x00,0x07,0xE0,0x3D,0xF0,0x01,0xF0,0x0C,0x00, 217 0xFF,0x80,0x01,0x80,0x6C,0x00,0x00,0x00,0x3E,0xF0,0x2C,0x60,0x07,0xFF,0xFC,0x00, 218 0x81,0xF8,0x71,0x01,0xDC,0x03,0xFC,0x00,0xF3,0xFF,0x87,0xE0,0x06,0x07,0xE0,0x00, 219 0x00,0x3F,0xE1,0x03,0xFC,0x0F,0x1F,0x87,0xC2,0x00,0x04,0xE0,0x00,0x00,0x00,0x00, 220 0x00,0x00,0x03,0x00,0x0C,0x1C,0x03,0xFF,0x00,0x00,0x01,0xE0,0x7F,0x03,0xF0,0x00, 221 0x00,0x00,0x03,0x00,0x18,0x10,0x00,0x00,0x00,0x00,0x01,0xC1,0xF3,0xF7,0x3C,0x00, 222 0xFF,0xC0,0x0F,0x02,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x80,0x7E,0x0E,0x00, 223 0xE1,0xFF,0xFF,0x03,0xF0,0x00,0x00,0x00,0x00,0x03,0xF8,0x7C,0x00,0x00,0x02,0x00, 224 0x00,0x01,0xE3,0x03,0xC0,0x00,0x03,0xFF,0x00,0x0F,0x1F,0xE0,0x00,0x00,0x00,0x00, 225 0x00,0x00,0x03,0x01,0x00,0x00,0x0F,0x03,0xF0,0x3C,0x00,0x00,0x00,0x00,0x00,0x00, 226 0x03,0xFC,0x03,0x01,0x0F,0x00,0x0C,0x00,0x7F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00, 227 0x0F,0x0F,0x8D,0x01,0x3F,0xE0,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 228 0x1C,0x01,0xFD,0x81,0x30,0x7C,0x03,0xC0,0xFE,0x00,0x00,0x00,0x04,0x00,0x00,0x00, 229 0x18,0x00,0x01,0xBF,0x00,0x0F,0xFF,0x07,0xC7,0xE0,0x00,0x00,0x1C,0x00,0x00,0x00, 230 0x00,0x00,0x00,0xFF,0x80,0x01,0xF8,0x3E,0x00,0x78,0x0F,0xF0,0x78,0x00,0x00,0x00, 231 0x00,0x0F,0x00,0x7F,0x83,0x80,0x3F,0xF1,0xF8,0x1E,0x1C,0x7F,0xE0,0x07,0xE0,0x00, 232 0x00,0x1F,0xE0,0x3F,0xDF,0xFE,0x00,0x07,0x9F,0x83,0xF0,0x00,0x00,0x1C,0x7C,0x00, 233 0x00,0x78,0x70,0x1F,0xD0,0x07,0xC0,0x3C,0x01,0xF8,0x03,0xC0,0x00,0x18,0x00,0x00, 234 0xFF,0xE0,0x1F,0x73,0xE0,0x00,0xFF,0xE0,0x00,0x1F,0xFF,0x00,0x00,0x00,0x00,0x00, 235 0x00,0x00,0x07,0xE1,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 236 0x00,0x0F,0x80,0x00,0xE1,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 237 0x00,0x7F,0xE0,0x00,0x07,0x9E,0x00,0x7F,0xC0,0x60,0x0F,0xC0,0x0F,0x00,0x00,0x00, 238 0x00,0xE0,0x7C,0x00,0x03,0xF7,0xC7,0xE0,0xFF,0xE0,0x3F,0xFF,0xFC,0x00,0x00,0x00, 239 0x01,0xC0,0x0F,0x00,0x03,0xBD,0xFE,0xFC,0x00,0x00,0xF0,0x1F,0xF0,0x00,0xC6,0x00, 240 }; 241 C51 COMPILER V7.06 12864LCD___ST7920__ 06/29/2017 12:59:57 PAGE 5 242 /******************************************************** 243 * * 244 * 延时t毫秒 * 245 * 11.0592MHz时钟,延时约1ms * 246 * * 247 ********************************************************/ 248 void delay(uint t) 249 { 250 1 uchar k; 251 1 while(t--) 252 1 { 253 2 for(k=0; k<125; k++) 254 2 { } 255 2 } 256 1 } 257 258 /********************************************************* 259 * * 260 * 延时函数 200us * 261 * * 262 *********************************************************/ 263 void delay_lcd(int ms) 264 { 265 1 uchar t; 266 1 while(ms--) 267 1 { 268 2 for(t=0; t<20; t++) ; 269 2 } 270 1 } 271 272 /********************************************************* 273 * * 274 * 发送一个字节 * 275 * * 276 *********************************************************/ 277 void sendbyte(uchar bbyte) 278 { 279 1 uchar i; 280 1 for(i=0;i<8;i++) 281 1 { 282 2 SID=bbyte&0x80; //取出最高位 283 2 SCLK=1; 284 2 _nop_(); 285 2 _nop_(); 286 2 SCLK=0; 287 2 bbyte<<=1; //左移 288 2 } 289 1 } 290 291 /********************************************************* 292 * * 293 * 写指令或数据函数 * 294 * * 295 *********************************************************/ 296 void write(bit start, uchar ddata) 297 { 298 1 uchar start_data,Hdata,Ldata; 299 1 300 1 if(start==0) //11111,(0),(0),0 301 1 start_data=0xf8; //写指令 302 1 else //11111,(0),(1),0 303 1 start_data=0xfa; //写数据 C51 COMPILER V7.06 12864LCD___ST7920__ 06/29/2017 12:59:57 PAGE 6 304 1 305 1 Hdata=ddata&0xf0; //取高四位 306 1 Ldata=(ddata<<4)&0xf0; //取低四位 307 1 sendbyte(start_data); //发送起始信号 308 1 delay_lcd(1); //延时 309 1 sendbyte(Hdata); //发送高四位 310 1 delay_lcd(1); //延时 311 1 sendbyte(Ldata); //发送低四位 312 1 delay_lcd(1); //延时 313 1 } 314 315 /********************************************************* 316 * * 317 * 初始化LCD * 318 * * 319 *********************************************************/ 320 void lcdinit() 321 { 322 1 delay_lcd(10); //延时等待LCM进入工作状态 323 1 PSB=0; ; //串口驱动模式 324 1 325 1 // RESET=0; 326 1 delay_lcd(5); 327 1 // RESET=1; //复位LCD 328 1 329 1 CS=1; //片选 高电平有效 330 1 331 1 write(0,0x30); //基本指令操作 332 1 write(0,0x0c); //显示打开,光标关,反白关 333 1 write(0,0x01); //清屏,将DDRAM的地址计数器归零 334 1 write(0,0x06); 335 1 } 336 337 /********************************************************* 338 * * 339 * 图形显示 * 340 * * 341 *********************************************************/ 342 void photodisplay(uchar *bmp) 343 { 344 1 uchar i,j; 345 1 write(0,0x34); //写数据时,关闭图形显示 346 1 for(i=0;i<32;i++) 347 1 { 348 2 write(0,0x80+i); //先写入水平坐标值 349 2 write(0,0x80); //写入垂直坐标值 350 2 for(j=0;j<16;j++) //再写入两个8位元的数据 351 2 write(1,*bmp++); 352 2 delay_lcd(1); 353 2 } 354 1 355 1 for(i=0;i<32;i++) 356 1 { 357 2 write(0,0x80+i); 358 2 write(0,0x88); 359 2 for(j=0;j<16;j++) 360 2 write(1,*bmp++); 361 2 delay_lcd(1); 362 2 } 363 1 write(0,0x36); //写完数据,开图形显示 364 1 } 365 C51 COMPILER V7.06 12864LCD___ST7920__ 06/29/2017 12:59:57 PAGE 7 366 367 /********************************************************* 368 * * 369 * 主函数 * 370 * * 371 *********************************************************/ 372 void main() 373 { 374 1 uchar i; 375 1 lcdinit(); //初始化LCD 376 1 377 1 while(1) 378 1 { 379 2 photodisplay(Photo1); //显示图片1 380 2 delay(2000); 381 2 382 2 write(0,0x30); //基本指令操作 383 2 write(0,0x01); //清屏 384 2 385 2 photodisplay(Photo2); //显示图片2 386 2 delay(2000); 387 2 388 2 write(0,0x30); //基本指令操作 389 2 write(0,0x01); //清屏 390 2 391 2 write(0,0x80); 392 2 for(i=0;i<16;i++) write(1,DIS1[i]); 393 2 write(0,0x90); 394 2 for(i=0;i<16;i++) write(1,DIS2[i]); 395 2 write(0,0x88); 396 2 for(i=0;i<16;i++) write(1,DIS3[i]); 397 2 write(0,0x98); 398 2 for(i=0;i<16;i++) write(1,DIS4[i]); 399 2 delay(2000); 400 2 write(0,0x01); //清屏 401 2 } 402 1 } 403 /*********************************************************/ MODULE INFORMATION: STATIC OVERLAYABLE CODE SIZE = 526 ---- CONSTANT SIZE = 2106 ---- XDATA SIZE = ---- ---- PDATA SIZE = ---- ---- DATA SIZE = ---- 7 IDATA SIZE = ---- ---- BIT SIZE = ---- 1 END OF MODULE INFORMATION. C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)