基于12864的單片機仿真直接可以用
運行界面.JPG (16.17 KB, 下載次數: 108)
下載附件
2015-9-12 16:54 上傳
歡迎界面.JPG (13.95 KB, 下載次數: 111)
下載附件
2015-9-12 16:54 上傳
- /*
-
- */
- //*P1.0 Y0: 正轉
- //*P1.1 Y1: 反轉
- //*P1.2 Y2: 運行
- //*P1.3 E: *P3.7
- //*P1.4 RW: *P3.6
- //*P1.5 DI: *P3.5
- //*P1.6 CS1: *P3.3
- //*P1.7 CS2: *P3.4
- //P2: 液晶數據線
- #include <AT89X52.H>
- #include <1210.H> //控制板輸入輸出定義
- #define TIMER0_COUNT 0xDC11
- static unsigned timer0_tick;
- unsigned int demp; //定時時間
- unsigned int deda1;
- /*繪圖型 LCD 指令 */
- #define GLCD_OFF 62 //顯示器關閉
- #define GLCD_ON 63 //顯示器打開
- #define GLCD_START_LINE_0 192 //設開始坐標
- #define SET_PAGE 184 //設頁數(X坐標)
- #define SET_Y_ADDRESS_0 64 //設X坐標
- #define CLEAR 0 //設頁數(X坐標)
- /*繪圖型 LCD 控制線 */
- #define ENABLE 1
- #define DISABLE 0
- #define READ 1
- #define WRITE 0
- #define COMMAND 0
- #define DATA 1
- #define GLCD_CS2 P3_3
- #define GLCD_CS1 P3_4
- #define GLCD_D_I P3_5
- #define GLCD_R_W P3_6
- #define GLCD_ENABLE P3_7
- /*********************************************************************/
- /********************字庫***********************************************/
- /*********************************************************************/
- unsigned char code digit[10][2][16]=
- {{{0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,0x00,0x00,0x00}},/*"0",9*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,0x00,0x00,0x00}},/*"1",0*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,0x00,0x00,0x00}},/*"2",1*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,0x00,0x00,0x00}},/*"3",2*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,0x00,0x00,0x00}},/*"4",3*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,0x00,0x00,0x00}},/*"5",4*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,0x00,0x00,0x00}},/*"6",5*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*"7",6*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,0x00,0x00,0x00}},/*"8",7*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00,0x00,0x00,0x00}}};/*"9",8*/
- //(:)
- unsigned char code comma[2][16]=
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00}};/*":",0*/
- unsigned char code space[2][16]=
- {{0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00},
- {0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00}};
- unsigned char code GUOLI[8][2][16]=
- {{{0x80,0x81,0x8E,0x04,0x00,0x10,0x50,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00},
- {0x40,0x20,0x1F,0x20,0x20,0x40,0x40,0x43,0x41,0x48,0x50,0x4F,0x40,0x40,0x40,0x00}},/*"過",0*/
- {{0x10,0x20,0x81,0x66,0x00,0xF8,0x48,0x48,0xFF,0x2A,0x2A,0x2A,0xAA,0x18,0x08,0x00},
- {0x04,0x7C,0x43,0x20,0x18,0x37,0x00,0x38,0x41,0x45,0x49,0x41,0x71,0x08,0x30,0x00}},/*"濾",1*/
- {{0x00,0xFC,0x44,0x44,0x44,0xFC,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00},
- {0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7F,0x00,0x00,0x00,0x00}},/*"時",2*/
- {{0x00,0xF8,0x01,0x06,0x00,0xF0,0x92,0x92,0x92,0x92,0xF2,0x02,0x02,0xFE,0x00,0x00},
- {0x00,0xFF,0x00,0x00,0x00,0x07,0x04,0x04,0x04,0x04,0x07,0x40,0x80,0x7F,0x00,0x00}}};/*"間",3*/
- unsigned char code XIAOSHI[8][2][16]=
- {
- {{0x00,0x00,0x00,0xC0,0x70,0x20,0x00,0xFF,0x00,0x10,0x20,0xC0,0x80,0x00,0x00,0x00},
- {0x04,0x02,0x01,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x01,0x07,0x02,0x00}},/*"小",8*/
- {{0x00,0xFC,0x44,0x44,0x44,0xFC,0x10,0x90,0x10,0x10,0x10,0xFF,0x10,0x10,0x10,0x00},
- {0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7F,0x00,0x00,0x00,0x00}}};/*"時",9*/
- unsigned char code QINGXIE[8][2][16]=
- /*****************************************************************/
- {{{0x10,0x61,0x06,0xE0,0x18,0x20,0xAA,0xAA,0xAA,0xBF,0xAA,0xAA,0xAA,0x2A,0x00,0x00},
- {0x04,0x04,0xFF,0x00,0x00,0x00,0xFF,0x0A,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x00}},/*"清",0*/
- {{0x10,0x61,0x06,0xF0,0xA0,0x98,0x8E,0x88,0x88,0xFF,0x88,0x88,0x88,0x80,0x80,0x00},
- {0x04,0x04,0xFF,0x00,0x40,0x20,0x18,0x07,0x00,0x00,0x3F,0x40,0x40,0x40,0x70,0x00}}};/*"洗",1*/
- unsigned char code MIAO[2][16]=
- {{0x12,0x12,0xD2,0xFE,0x91,0x11,0xC0,0x38,0x10,0x00,0xFF,0x00,0x08,0x10,0x60,0x00},
- {0x04,0x03,0x00,0xFF,0x00,0x83,0x80,0x40,0x40,0x20,0x23,0x10,0x08,0x04,0x03,0x00}};/*"秒",0*/
- unsigned char code ZHIDONG[8][2][16]=
- /*****************************************************************/
- {{{0x00,0x00,0x00,0xF8,0x48,0x48,0x4C,0x4B,0x4A,0x48,0x48,0x48,0xF8,0x00,0x00,0x00},
- {0x00,0x00,0x00,0xFF,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0xFF,0x00,0x00,0x00}},/*"自",0*/
- {{0x20,0x24,0x24,0xE4,0x24,0x24,0x24,0x20,0x10,0x10,0xFF,0x10,0x10,0xF0,0x00,0x00},
- {0x08,0x1C,0x0B,0x08,0x0C,0x05,0x4E,0x24,0x10,0x0C,0x03,0x20,0x40,0x3F,0x00,0x00}},/*"動",1*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*":",0*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",4*/
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*" ",5*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",6*/
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*" ",7*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",8*/
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*" ",9*/
- {{0x10,0x61,0x06,0xE0,0x18,0x20,0xAA,0xAA,0xAA,0xBF,0xAA,0xAA,0xAA,0x2A,0x00,0x00},
- {0x04,0x04,0xFF,0x00,0x00,0x00,0xFF,0x0A,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x00}},/*"清",10*/
- {{0x10,0x61,0x06,0xF0,0xA0,0x98,0x8E,0x88,0x88,0xFF,0x88,0x88,0x88,0x80,0x80,0x00},
- {0x04,0x04,0xFF,0x00,0x40,0x20,0x18,0x07,0x00,0x00,0x3F,0x40,0x40,0x40,0x70,0x00}}};/*"洗",11*/
- unsigned char code DANCHENG[2][2][16]=
- /*****************************************************************/
- {{{0x00,0x00,0xF8,0x28,0x29,0x2E,0x2A,0xF8,0x28,0x2C,0x2B,0x2A,0xF8,0x00,0x00,0x00},
- {0x08,0x08,0x0B,0x09,0x09,0x09,0x09,0xFF,0x09,0x09,0x09,0x09,0x0B,0x08,0x08,0x00}},/*"單",0*/
- {{0x10,0x12,0xD2,0xFE,0x91,0x11,0x80,0xBF,0xA1,0xA1,0xA1,0xA1,0xBF,0x80,0x00,0x00},
- {0x04,0x03,0x00,0xFF,0x00,0x41,0x44,0x44,0x44,0x7F,0x44,0x44,0x44,0x44,0x40,0x00}}};/*"程",1*/
- unsigned char code SHUANGCHENG[2][2][16]=
- /*****************************************************************/
- {{{0x00,0x12,0x22,0x42,0x82,0x62,0x1E,0x00,0x1E,0xE2,0x02,0x02,0xE2,0x1E,0x00,0x00},
- {0x20,0x10,0x08,0x06,0x01,0x03,0x4E,0x24,0x10,0x09,0x06,0x09,0x10,0x60,0x20,0x00}},/*"雙",0*/
- {{0x10,0x12,0xD2,0xFE,0x91,0x11,0x80,0xBF,0xA1,0xA1,0xA1,0xA1,0xBF,0x80,0x00,0x00},
- {0x04,0x03,0x00,0xFF,0x00,0x41,0x44,0x44,0x44,0x7F,0x44,0x44,0x44,0x44,0x40,0x00}}};/*"程",1*/
- unsigned char code LIANXI[2][2][16]=
- /*****************************************************************/
- {{{0x40,0x41,0x4E,0xC4,0x00,0x44,0xE4,0x5C,0x47,0xF4,0x44,0x44,0x44,0x04,0x00,0x00},
- {0x00,0x40,0x20,0x1F,0x22,0x42,0x42,0x42,0x42,0x5F,0x42,0x42,0x42,0x42,0x42,0x00}},/*"連",0*/
- {{0x20,0x30,0xA8,0x67,0x12,0x00,0x90,0x34,0xD4,0x1F,0xF4,0x14,0x54,0x34,0x10,0x00},
- {0x22,0x23,0x22,0x12,0x10,0x02,0x02,0x43,0x22,0x1A,0x07,0x0A,0x12,0x62,0x02,0x00}}};/*"續",1*/
- /******************************************************************/
- char code SHOUDONGHZ[4][2][16]=
- {{{0x00,0x24,0x24,0x24,0x24,0x24,0x24,0xFE,0xFE,0x22,0x22,0x22,0x22,0x22,0x20,0x00},
- {0x02,0x02,0x02,0x02,0x02,0x42,0xC2,0xFF,0x7F,0x02,0x02,0x02,0x02,0x02,0x02,0x02}},/*"手",0*/
- {{0x20,0x24,0x24,0xE4,0xE4,0x24,0x24,0x24,0x30,0x10,0xFF,0xFF,0x10,0xF0,0xF0,0x00},
- {0x08,0x1C,0x1F,0x0B,0x0C,0x0D,0x4F,0x6E,0x34,0x1C,0x0F,0x23,0x60,0x7F,0x3F,0x00}},/*"動",1*/
- {{0x08,0x38,0x30,0xFF,0xFF,0x20,0x20,0x20,0xFF,0xFF,0xE1,0xE7,0x2E,0x2C,0x20,0x20},
- {0x04,0x06,0x03,0xFF,0xFF,0x60,0x38,0x1F,0x07,0x00,0x03,0x0F,0x3C,0x70,0x60,0x20}},/*"狀",0*/
- {{0x00,0x04,0x04,0x04,0x84,0xC4,0x74,0x7F,0xDF,0xB4,0x64,0xC4,0x84,0x84,0x04,0x00},
- {0x00,0x60,0x79,0x39,0x01,0x3C,0x7C,0x42,0x4E,0x4C,0x40,0x70,0x74,0x0D,0x39,0x31}}};/*"態",1*/
- char code SHANG[4][2][16]=
- {{{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*" ",3*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00},
- {0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x7F,0x40,0x40,0x40,0x40,0x40,0x60,0x40,0x00}},/*"上",0*/
- {{0x00,0x40,0x44,0x44,0x44,0xFE,0x42,0x42,0x40,0x40,0xFE,0x40,0x40,0x60,0x40,0x00},
- {0x00,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00}},/*"升",0*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}};/*" ",3*/
- char code XIA[4][2][16]=
- {{{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*" ",3*/
- {{0x00,0x02,0x02,0x02,0x02,0x02,0x02,0xFE,0x22,0x62,0xC2,0x82,0x02,0x03,0x02,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00}},/*"下",1*/
- {{0x00,0xFE,0x22,0x5A,0x86,0x00,0x48,0x44,0x2B,0xD2,0x2A,0x26,0x42,0x40,0x40,0x00},
- {0x00,0xFF,0x02,0x04,0x03,0x00,0x0D,0x09,0x09,0xFF,0x09,0x09,0x09,0x08,0x00,0x00}},/*"降",0*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}};/*" ",3*/
- char code WU[2][16]=
- {{0x00,0x40,0x42,0x42,0x42,0x42,0x42,0xFE,0xC2,0x42,0x42,0x42,0x42,0x42,0x40,0x00},
- {0x40,0x40,0x20,0x10,0x08,0x04,0x03,0x00,0x3F,0x40,0x40,0x40,0x40,0x40,0x70,0x00}};/*"無",0*/
- unsigned char code QINGPIN[8][2][16]=
- /*****************************************************************/
- {{{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*1*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*2*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*3*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*4*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*5*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*6*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*7*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}};/*8*/
- /**************************************************************************************/
- unsigned char code KAIGUAN[6][2][16]=
- {{
- {0x08,0x88,0x68,0xFF,0x28,0x48,0x10,0x48,0x44,0x43,0x44,0x48,0x50,0x10,0x10,0x00},
- {0x02,0x01,0x00,0x7F,0x00,0x20,0x22,0x2C,0x21,0x2E,0x30,0x28,0x27,0x22,0x20,0x00}},/*"檢",2*/
- {{0x08,0x31,0x86,0x60,0x00,0xFE,0x02,0xF2,0x02,0xFE,0x00,0xF8,0x00,0x00,0xFF,0x00},
- {0x04,0xFC,0x03,0x00,0x80,0x47,0x30,0x0F,0x10,0x67,0x00,0x07,0x40,0x80,0x7F,0x00}},/*"測",3*/
- {{0xFE,0x02,0x32,0x4E,0x82,0x00,0xFE,0x4A,0xCA,0x4A,0x4A,0x4A,0x7E,0x00,0x00,0x00},
- {0xFF,0x00,0x02,0x04,0x03,0x00,0xFF,0x40,0x20,0x03,0x0C,0x12,0x21,0x60,0x20,0x00}},/*"限",4*/
- {{0x00,0xC0,0x30,0xEC,0x03,0x2A,0xC8,0x09,0x0A,0x0E,0x08,0xE8,0x48,0x08,0x00,0x00},
- {0x01,0x00,0x00,0x7F,0x20,0x20,0x20,0x27,0x20,0x30,0x2E,0x21,0x20,0x20,0x20,0x00}},/*"位",5*/
- {{0x00,0x40,0x20,0x18,0x16,0x10,0x10,0xFF,0x10,0x10,0x10,0x10,0x10,0x00,0x00,0x00},
- {0x00,0x01,0x81,0x41,0x21,0x11,0x0D,0x03,0x05,0x09,0x31,0x61,0xC1,0x41,0x01,0x00}},/*"失",6*/
- {{0x00,0x00,0xFE,0x02,0xF2,0x02,0xFE,0x20,0xF8,0x17,0x12,0x10,0xF0,0x10,0x10,0x00},
- {0x00,0x40,0x31,0x0C,0x03,0x04,0xB9,0x50,0x20,0x13,0x0C,0x13,0x60,0xC0,0x40,0x00}}};/*"敗",7*/
- unsigned char code QIANXUAN[4][2][16]=
- {{
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x40,0x40,0x40,0x40,0x40,0x00,0x00,0x00},
- {0x00,0x40,0x40,0x40,0x40,0x40,0x40,0x7F,0x40,0x40,0x40,0x40,0x40,0x60,0x40,0x00}},/*"上",0*/
- {{0x00,0x40,0x44,0x44,0x44,0xFE,0x42,0x42,0x40,0x40,0xFE,0x40,0x40,0x60,0x40,0x00},
- {0x00,0x40,0x20,0x10,0x0C,0x03,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00}},/*"升",1*/
- {{0xFE,0x02,0x32,0x4E,0x82,0x00,0xFE,0x4A,0xCA,0x4A,0x4A,0x4A,0x7E,0x00,0x00,0x00},
- {0xFF,0x00,0x02,0x04,0x03,0x00,0xFF,0x40,0x20,0x03,0x0C,0x12,0x21,0x60,0x20,0x00}},/*"限",0*/
- {{0x00,0xC0,0x30,0xEC,0x03,0x2A,0xC8,0x09,0x0A,0x0E,0x08,0xE8,0x48,0x08,0x00,0x00},
- {0x01,0x00,0x00,0x7F,0x20,0x20,0x20,0x27,0x20,0x30,0x2E,0x21,0x20,0x20,0x20,0x00}}};/*"位",1*/
- unsigned char code HOUXUAN[4][2][16]=
- {{
- {0x00,0x02,0x02,0x02,0x02,0x02,0x02,0xFE,0x22,0x62,0xC2,0x82,0x02,0x03,0x02,0x00},
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00}},/*"下",0*/
- {{0x00,0xFE,0x22,0x5A,0x86,0x00,0x48,0x44,0x2B,0xD2,0x2A,0x26,0x42,0x40,0x40,0x00},
- {0x00,0xFF,0x02,0x04,0x03,0x00,0x0D,0x09,0x09,0xFF,0x09,0x09,0x09,0x08,0x00,0x00}},/*"降",1*/
- {{0xFE,0x02,0x32,0x4E,0x82,0x00,0xFE,0x4A,0xCA,0x4A,0x4A,0x4A,0x7E,0x00,0x00,0x00},
- {0xFF,0x00,0x02,0x04,0x03,0x00,0xFF,0x40,0x20,0x03,0x0C,0x12,0x21,0x60,0x20,0x00}},/*"限",0*/
- {{0x00,0xC0,0x30,0xEC,0x03,0x2A,0xC8,0x09,0x0A,0x0E,0x08,0xE8,0x48,0x08,0x00,0x00},
- {0x01,0x00,0x00,0x7F,0x20,0x20,0x20,0x27,0x20,0x30,0x2E,0x21,0x20,0x20,0x20,0x00}}};/*"位",1*/
- unsigned char code CHUWU[4][2][16]=
- {{
- {0x00,0x02,0xE6,0x2A,0x32,0x22,0x3E,0x22,0x22,0x3E,0x22,0x32,0x2E,0x23,0x22,0x00},
- {0x40,0x30,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*"嚴",0*/
- {{0x08,0x08,0x0A,0xEA,0xAA,0xAA,0xAA,0xFF,0xA9,0xA9,0xA9,0xE9,0x08,0x08,0x08,0x00},
- {0x40,0x40,0x48,0x4B,0x4A,0x4A,0x4A,0x7F,0x4A,0x4A,0x4A,0x4B,0x48,0x40,0x40,0x00}},/*"重",1*/
- {{0x40,0x30,0x2C,0xE7,0x24,0x24,0x40,0x48,0x7F,0x48,0x48,0x7F,0x48,0x48,0x40,0x00},
- {0x01,0x01,0x01,0xFF,0x41,0x21,0x00,0xFF,0x49,0x49,0x49,0x49,0x49,0xFF,0x00,0x00}},/*"錯",2*/
- {{0x40,0x41,0xCE,0x04,0x00,0x40,0x5F,0x51,0x51,0xD1,0x51,0x51,0x5F,0x40,0x00,0x00},
- {0x00,0x00,0x3F,0x10,0x88,0x42,0x22,0x12,0x0A,0x07,0x0A,0x12,0x22,0xE2,0x42,0x00}}};/*"誤",3*/
- unsigned char code LIANLU[6][2][16]=
- {{
- {0x40,0x42,0x4C,0xC4,0x00,0x22,0xAA,0xAA,0xAA,0xBF,0xAA,0xAA,0xAA,0x22,0x20,0x00},
- {0x00,0x00,0x00,0x7F,0x20,0x10,0xFF,0x0A,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x00}},/*"請",0*/
- {{0x02,0xFE,0x92,0x92,0x92,0xFE,0x12,0x11,0x12,0x1C,0xF0,0x18,0x17,0x12,0x10,0x00},
- {0x08,0x1F,0x08,0x08,0x04,0xFF,0x05,0x81,0x41,0x31,0x0F,0x11,0x21,0xC1,0x41,0x00}},/*"聯",1*/
- {{0x20,0x38,0xA7,0x62,0x30,0x00,0x10,0x08,0x9F,0x64,0x64,0x94,0x0C,0x00,0x00,0x00},
- {0x22,0x23,0x12,0x12,0x12,0x04,0x02,0x7F,0x22,0x22,0x22,0x22,0x7F,0x03,0x02,0x00}},/*"絡",2*/
- {{0x40,0x20,0xF8,0x17,0x02,0x10,0x10,0xFE,0x10,0x10,0x10,0xFE,0x10,0x10,0x00,0x00},
- {0x00,0x00,0xFF,0x00,0x42,0x22,0x1A,0x0F,0x02,0x02,0x06,0x1B,0x72,0x22,0x02,0x00}},/*"供",3*/
- {{0x00,0x10,0x08,0xBC,0x87,0x82,0x88,0x88,0x9F,0xA4,0xA4,0xA4,0x22,0x32,0x00,0x00},
- {0x00,0x00,0x80,0x9F,0x40,0x20,0x10,0x0E,0x10,0x20,0x60,0xCF,0x40,0x00,0x00,0x00}},/*"貨",4*/
- {{0x00,0x04,0xE4,0x24,0x24,0xAC,0x74,0x25,0x26,0x74,0xAC,0x24,0xE4,0x04,0x00,0x00},
- {0x00,0x00,0xFF,0x01,0x01,0x3F,0x09,0x09,0x09,0x1F,0x41,0x80,0x7F,0x00,0x00,0x00}}};/*"商",5*/
- unsigned char code HUANYIN[4][2][16]=
- {{
- {0x14,0x24,0x44,0x84,0x64,0x1C,0x20,0x18,0x0F,0xE8,0x08,0x08,0x28,0x18,0x08,0x00},
- {0x20,0x10,0x4C,0x43,0x43,0x2C,0x20,0x10,0x0C,0x03,0x06,0x18,0x30,0x60,0x20,0x00}},/*"歡",0*/{
- {0x40,0x41,0xCE,0x04,0x00,0xFC,0x04,0x02,0x02,0xFC,0x04,0x04,0x04,0xFC,0x00,0x00},
- {0x40,0x20,0x1F,0x20,0x40,0x47,0x42,0x41,0x40,0x5F,0x40,0x42,0x44,0x43,0x40,0x00}},/*"迎",1*/{
- {0x40,0x20,0xF0,0x1C,0x07,0xF2,0x94,0x94,0x94,0xFF,0x94,0x94,0x94,0xF4,0x04,0x00},
- {0x00,0x00,0x7F,0x00,0x40,0x41,0x22,0x14,0x0C,0x13,0x10,0x30,0x20,0x61,0x20,0x00}},/*"使",2*/{
- {0x00,0x00,0x00,0xFE,0x22,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0xFE,0x00,0x00},
- {0x80,0x40,0x30,0x0F,0x02,0x02,0x02,0x02,0xFF,0x02,0x02,0x42,0x82,0x7F,0x00,0x00}}};/*"用",3*/
- unsigned char code HENFENG[6][2][16]=
- {{
- {0x00,0x00,0x00,0xF8,0x48,0x48,0x4C,0x4B,0x4A,0x48,0x48,0x48,0xF8,0x00,0x00,0x00},
- {0x00,0x00,0x00,0xFF,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0xFF,0x00,0x00,0x00}},/*"自",0*/
- {{0x20,0x24,0x24,0xE4,0x24,0x24,0x24,0x20,0x10,0x10,0xFF,0x10,0x10,0xF0,0x00,0x00},
- {0x08,0x1C,0x0B,0x08,0x0C,0x05,0x4E,0x24,0x10,0x0C,0x03,0x20,0x40,0x3F,0x00,0x00}},/*"動",1*/
- {{0x08,0x08,0x08,0xFF,0x88,0x48,0x00,0x98,0x48,0x28,0x0A,0x2C,0x48,0xD8,0x08,0x00},
- {0x02,0x42,0x81,0x7F,0x00,0x00,0x40,0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x40,0x00}},/*"控",2*/
- {{0x00,0x50,0x4F,0x4A,0x48,0xFF,0x48,0x48,0x48,0x00,0xFC,0x00,0x00,0xFF,0x00,0x00},
- {0x00,0x00,0x3F,0x01,0x01,0xFF,0x21,0x61,0x3F,0x00,0x0F,0x40,0x80,0x7F,0x00,0x00}},/*"制",3*/
- {{0x00,0x00,0x02,0x22,0xB2,0xAA,0x66,0x62,0x22,0x11,0x4D,0x81,0x01,0x01,0x00,0x00},
- {0x00,0x40,0x21,0x13,0x09,0x05,0x41,0x81,0x7F,0x01,0x05,0x09,0x13,0x62,0x00,0x00}},/*"系",4*/
- {{0x20,0x30,0x2C,0xA3,0x60,0x10,0x84,0xC4,0xA4,0x9D,0x86,0x84,0xA4,0xC4,0x84,0x00},
- {0x20,0x22,0x23,0x12,0x12,0x92,0x40,0x30,0x0F,0x00,0x00,0x3F,0x40,0x41,0x70,0x00}}};/*"統",5*/
- unsigned char code CHUSHI[8][2][16]=
- {{
- {0x00,0x08,0x88,0xC9,0x2E,0x98,0x48,0x00,0x08,0x08,0xF8,0x08,0x08,0xFC,0x08,0x00},
- {0x02,0x01,0x00,0x7F,0x01,0x02,0x44,0x20,0x10,0x0C,0x03,0x20,0x40,0x3F,0x00,0x00}},/*"初",0*/
- {{0x10,0x90,0x70,0x1F,0x12,0xF0,0x00,0x20,0x70,0x28,0x27,0x22,0x28,0x70,0x20,0x00},
- {0x40,0x21,0x12,0x0C,0x06,0x09,0x30,0x00,0x7F,0x21,0x21,0x21,0x21,0x7F,0x00,0x00}},/*"始",1*/
- {{0x80,0x40,0x20,0xF8,0x07,0x02,0x00,0x00,0xFF,0xC0,0x60,0x30,0x1C,0x08,0x00,0x00},
- {0x00,0x00,0x00,0x7F,0x00,0x04,0x02,0x01,0x3F,0x40,0x40,0x40,0x40,0x78,0x00,0x00}},/*"化",2*/
- {{0x00,0x00,0xFC,0x08,0x08,0x08,0x08,0xFF,0x08,0x08,0x08,0x08,0xFC,0x08,0x00,0x00},
- {0x00,0x00,0x07,0x02,0x02,0x02,0x02,0xFF,0x02,0x02,0x02,0x02,0x07,0x00,0x00,0x00}},/*"中",3*/
- {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*" ",0*/
- {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}},/*" ",1*/
- {{0x40,0x42,0x4C,0xC4,0x00,0x22,0xAA,0xAA,0xAA,0xBF,0xAA,0xAA,0xAA,0x22,0x20,0x00},
- {0x00,0x00,0x00,0x7F,0x20,0x10,0xFF,0x0A,0x0A,0x0A,0x4A,0x8A,0x7F,0x00,0x00,0x00}},/*"請",2*/
- {{0x00,0x12,0x92,0x72,0xFF,0x51,0x81,0xF2,0x9C,0x90,0x9F,0x90,0x98,0xF4,0x02,0x00},
- {0x08,0x06,0x01,0x00,0xFF,0x00,0x00,0xFF,0x04,0x04,0x04,0x44,0x84,0x7F,0x00,0x00}},/*"稍",3*/
- {{0x40,0x20,0xF8,0x07,0xF2,0x08,0x0A,0xFA,0x4A,0xCA,0x4A,0x4E,0x4A,0x48,0x08,0x00},
- {0x00,0x00,0x7F,0x00,0x0F,0x42,0x23,0x12,0x0E,0x03,0x06,0x1A,0x32,0x62,0x22,0x00}}};/*"候",4*/
- /*********************************************************************/
- /*********************************************************************/
- typedef struct {
- char hour;
- char minute;
- char second;
- } time;
- /*****************************/
- /*******************************/
- typedef struct {
- char year;
- char month;
- char day;
- } date;
- /******************************/
- time now={00,00,00},display;
- int Aminute;
- date today={17,04,22},tmpday;
- char ABC ;
- char ABCD;
- unsigned char gx,gy;
- void initFlag(void)
- {
- P0 = 0xFF; // 輸出端口初始化
- P2 = 0xFF; // 輸出端口初始化
- P1 = 0xFF; // 輸入端口初始化
- P3 = 0xFF; // 輸入端口初始化
- now.hour = 24;
- now.minute =00;
- now.second =00;
- }
- /**************************************************/
- /***************檢測忙****************************/
- /************************************************/
- void check_GLCD_busyflag(void)
- {
- unsigned char x;
- GLCD_R_W=1;
- GLCD_D_I=0;
- GLCD_ENABLE=1;
- P2=0x00;
- do
- {
- x=P2 && 128;
- } while(x);
- GLCD_ENABLE=0;
- GLCD_D_I=1;
- GLCD_R_W=1;
- }
- /********************寫命令**********************/
- void write_GLCD_command(unsigned command)
- {
- GLCD_R_W = 0;
- GLCD_D_I = 0;
- GLCD_ENABLE=1;
- P2=command;
- GLCD_ENABLE=0;
- GLCD_D_I=1;
- GLCD_R_W=1;
- check_GLCD_busyflag(); //檢測忙
- }
- /********************寫數據*********************/
- void write_GLCD_data(unsigned GLCDdata)
- {
- GLCD_R_W=0;
- GLCD_D_I=1;
- GLCD_ENABLE=1;
- P2=GLCDdata;
- GLCD_ENABLE=0;
- GLCD_D_I=0;
- GLCD_R_W=1;
- check_GLCD_busyflag(); //檢測忙
- }
- /*********************清屏**********************/
- void clear_GLCD()
- {
- int i,j;
- GLCD_CS1=1;
- GLCD_CS2=1;
- write_GLCD_command(GLCD_ON);
- write_GLCD_command(GLCD_START_LINE_0);
- for(i=0;i<8;i++)
- {
- write_GLCD_command(SET_PAGE+i);
- write_GLCD_command(SET_Y_ADDRESS_0);
- for(j=0;j<64;j++)
- write_GLCD_data(0);
- }
- }
- /*******************顯示一個圓形****************/
- void show_pattern(unsigned char page,unsigned char y,unsigned char *pattern,unsigned char len)
- {
- int i;
- write_GLCD_command(SET_PAGE+page);
- write_GLCD_command(SET_Y_ADDRESS_0+y);
- for(i=0;i<len;i++)
- {
- write_GLCD_data(*pattern);
- pattern++;
- }
- }
- /*********************顯示一個字****************/
- void display_GLCD_data(unsigned char *p)
- {
- if (gx<64)
- {
- GLCD_CS1=1;
- GLCD_CS2=0;
- show_pattern(gy,gx,p,8);
- show_pattern(gy,gx+8,p+8,8);
- show_pattern(gy+1,gx,p+16,8);
- show_pattern(gy+1,gx+8,p+24,8);
- }
- else
- {
- GLCD_CS1=0;
- GLCD_CS2=1;
- show_pattern(gy,gx-64,p,8);
- show_pattern(gy,gx-56,p+8,8);
- show_pattern(gy+1,gx-64,p+16,8);
- show_pattern(gy+1,gx-56,p+24,8);
- }
- gx=gx+16;
- }
- void display_GLCD_string(unsigned char *p,int len)
- {
- int i;
- for(i=0;i<len;i++)
- display_GLCD_data((p+32*i));
- }
- void display_GLCD_numberAB(char number)
- {
- int x,y;
- x=number/10;
- y=number%10;
- display_GLCD_data(*digit[x]);
- display_GLCD_data(*digit[y]);
- }
- void display_GLCD_numberB(char number)
- {
- unsigned int x,y,z,j;
- x=(number/1000)%10;
- y=(number/100)%10;
- z=(number/10)%10;
- j=number%10;
- display_GLCD_data(*digit[x]);
- display_GLCD_data(*digit[y]);
- display_GLCD_data(*digit[z]);
- display_GLCD_data(*digit[j]);
- }
- void gotoxy(unsigned x,unsigned y)
- {
- gy=y;
- gx=x;
- }
- void display_time(time dispaly_time)
- {
- gotoxy(0,4);
- display_GLCD_numberAB(dispaly_time.hour);
- display_GLCD_data(comma);
- display_GLCD_numberAB(dispaly_time.minute);
- display_GLCD_data(comma);
- display_GLCD_numberAB(dispaly_time.second);
- }
- void display_time1(int F)
- {
- gotoxy(48,6);
- display_GLCD_numberB(F);
- }
- /******************定時器0初始化*********************************************/
- void initTimer (void)
- {
- timer0_tick=0;
- EA=0;
- TMOD=0x11;
- TH0=-9460/256;
- TL0=-9460%256; //初始化計數器初值
- PT0=1;
- TR0=1;
- ET0=1;
-
- EA =1;
- }
- /******************定時器0中斷處理程序*********************************************/
- //用于時鐘
- void timer0 (void) interrupt 1
- {
- TR0=0;
- TH0=-9460/256;
- TL0=-9460%256; //初始化計數器初值
- TR0=1;
- timer0_tick++;
- if (timer0_tick==100)
- {
- timer0_tick=0;
- /***********************************************************/
- if(now.second==0)
- {
- now.second=59;
- if (now.minute==0)
- {
- now.minute=59;
- if (now.hour==0)
- {
- now.hour = 24;
- now.minute =00;
- now.second =00;
- }else now.hour--;
- }else now.minute--;
- }else now.second--;
-
- if(Aminute==10000)Aminute=0;
- else Aminute++;
-
- }
- }
- /******************************************************************/
- /***********************主程序*************************************/
- /******************************************************************/
- void MAIN (void)
- {
- unsigned int i,j;
- initFlag (); //端口初始化
- clear_GLCD(); //清屏
- gotoxy(0,0);
- display_GLCD_string(QINGPIN,8); //把不顯示的位置顯示空白
- gotoxy(0,2);
- display_GLCD_string(QINGPIN,8);
- gotoxy(0,4);
- display_GLCD_string(QINGPIN,8);
- gotoxy(0,6);
- display_GLCD_string(QINGPIN,8);
- gotoxy(32,0); //設光標
- display_GLCD_string(HUANYIN,4); //顯示"歡迎使用"字符串
- gotoxy(16,2); //設光標
- display_GLCD_string(HENFENG,6); //顯示"控制系統"字符串
- gotoxy(0,4); //設光標
- display_GLCD_string(CHUSHI,8); //顯示"初始化"字符串
-
- for (i=0;i<1000;i++) //延時
- for(j=0;j<200;j++);
- initTimer(); //開中斷
- WDTRST=0x1E; //打開看門狗
- WDTRST=0xE1;
- while(1)
- {
- WDTRST=0x1E; //打開看門狗
- WDTRST=0xE1;
- gotoxy(0,0); //設光標
- display_GLCD_string(CHUWU,4); //顯示"嚴重錯誤"字符串
- gotoxy(64,0);
- display_GLCD_string(XIA,4);
-
- gotoxy(0,2); //設光標
- display_GLCD_string(GUOLI,4); //顯示"過濾時間"字符串
- gotoxy(64,2);
- display_GLCD_numberAB(ABCD); //顯示00數字
- gotoxy(96,2); //設光標
- display_GLCD_string(XIAOSHI,2); //顯示"小時"字符串
- display_time(now); //顯示到計時時間
-
- gotoxy(0,6); //設光標
- display_GLCD_string(QINGXIE,2); //顯示"清洗:"字符串
- display_GLCD_string(comma,1); //顯示":"字符串
- display_time1(Aminute); // 顯示電機運行時間
- gotoxy(112,6); //設光標
- display_GLCD_string(MIAO,1); //顯示"秒"字符串
- WDTRST=0x1E; //喂狗
- WDTRST=0xE1;
- }
- }
- /*********************************************************************/
- /*******************END MAIN******************************************/
- /*********************************************************************/
復制代碼
|