📄 tc_clock.lst
字号:
__start:
__text_start:
0382 EFCF LDI R28,0xFF
0383 E1D0 LDI R29,0x10
0384 BFCD OUT 0x3D,R28
0385 BFDE OUT 0x3E,R29
0386 51C0 SUBI R28,0x10
0387 40D0 SBCI R29,0
0388 EA0A LDI R16,0xAA
0389 8308 STD Y+0,R16
038A 2400 CLR R0
038B E0E7 LDI R30,7
038C E0F1 LDI R31,1
038D E011 LDI R17,1
038E 30E7 CPI R30,7
038F 07F1 CPC R31,R17
0390 F011 BEQ 0x0393
0391 9201 ST R0,Z+
0392 CFFB RJMP 0x038E
0393 8300 STD Z+0,R16
0394 EFEC LDI R30,0xFC
0395 E0F6 LDI R31,6
0396 E0A0 LDI R26,0
0397 E0B1 LDI R27,1
0398 E017 LDI R17,7
0399 30E3 CPI R30,3
039A 07F1 CPC R31,R17
039B F021 BEQ 0x03A0
039C 95C8 LPM
039D 9631 ADIW R30,1
039E 920D ST R0,X+
039F CFF9 RJMP 0x0399
03A0 940E06BA CALL _main
_exit:
03A2 CFFF RJMP _exit
_delayUS:
i --> R20
us --> R22
03A3 940E0713 CALL push_gset2
03A5 01B8 MOVW R22,R16
FILE: D:\MYDOCU~1\AVR单片机程序\TC_Clock\TC_Clock.c
(0001) /*******************************************
(0002) *文件名:TC_Clock.c
(0003) *功 能:用定时器/计数器实现模拟时钟
(0004) * 在12864液晶上显示
(0005) *晶振频率:18.432MHz
(0006) *******************************************/
(0007) #include<iom128.h>
(0008) #include<macros.h>
(0009) //#include<stdio.h>
(0010) //#include "LCD12864.c"
(0011) #define uchar unsigned char
(0012) #define uint unsigned int
(0013)
(0014)
(0015) #define LCD_DAT PORTC
(0016) #define LCDENH PORTD=PORTD|(1<<6)
(0017) #define LCDENL PORTD=PORTD&(~(1<<6))
(0018) #define LCDDIH PORTD=PORTD|(1<<7)
(0019) #define LCDDIL PORTD=PORTD&(~(1<<7))
(0020) #define LCDCS1H PORTD=PORTD|(1<<5)
(0021) #define LCDCS1L PORTD=PORTD&(~(1<<5))
(0022) #define LCDCS2H PORTD=PORTD|(1<<4)
(0023) #define LCDCS2L PORTD=PORTD&(~(1<<4))
(0024)
(0025)
(0026) #pragma interrupt_handler Timer1_int:15
(0027) uchar sec=20,min=59,hour=23,year=9,mon=3,date=31,day=7;
(0028) #pragma data:code
(0029) const uchar table[17][16]=
(0030) {
(0031) 0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00,//0 0
(0032) 0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,//1 1
(0033) 0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,//2 2
(0034) 0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,//3 3
(0035) 0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,//4 4
(0036) 0x00,0xF8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,//5 5
(0037) 0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,//6 6
(0038) 0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,//7 7
(0039) 0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,//8 8
(0040) 0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00,//9 9
(0041) 0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,//: 10
(0042) 0x00,0x40,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x0E,0x11,0x20,0x20,0x20,0x11,0x00,//c 11
(0043) 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//空 12
(0044) 0x00,0x04,0xFF,0x94,0x94,0xFF,0x04,0x00,0x22,0x12,0x0B,0x06,0x02,0x07,0x2A,0x10,//其13
(0045) 0xFE,0x12,0x12,0x12,0xFF,0x02,0x00,0x00,0x0F,0x01,0x11,0x21,0x1F,0x00,0x00,0x00,//月 14
(0046)
(0047) };
(0048)
(0049) const uchar Tab_Chinesepoem[][16]=
(0050) {
(0051) {0x40,0x20,0x10,0x0C,0xE3,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0x02,0x00,0x00},
(0052) {0x04,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x04,0x00},/*"年",0*/
(0053)
(0054) {0x00,0x00,0x00,0x00,0x00,0xFF,0x11,0x11,0x11,0x11,0x11,0xFF,0x00,0x00,0x00,0x00},
(0055) {0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x01,0x01,0x21,0x41,0x3F,0x00,0x00,0x00,0x00},/*"月",1*/
(0056)
(0057)
(0058)
(0059) {0x00,0x00,0x00,0xBE,0x2A,0x2A,0x2A,0xEA,0x2A,0x2A,0x2A,0x2A,0x3E,0x00,0x00,0x00},
(0060) {0x00,0x48,0x46,0x41,0x49,0x49,0x49,0x7F,0x49,0x49,0x49,0x49,0x49,0x41,0x40,0x00},/*"星",3*/
(0061)
(0062) {0x00,0x04,0xFF,0x54,0x54,0x54,0xFF,0x04,0x00,0xFE,0x22,0x22,0x22,0xFE,0x00,0x00},
(0063) {0x42,0x22,0x1B,0x02,0x02,0x0A,0x33,0x62,0x18,0x07,0x02,0x22,0x42,0x3F,0x00,0x00},/*"期",4*/
(0064)
(0065) {0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xC0,0x80,0x00},
(0066) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"一",5*/
(0067)
(0068) {0x00,0x00,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x04,0x06,0x04,0x00,0x00,0x00},
(0069) {0x00,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x18,0x10,0x00},/*"二",6*/
(0070)
(0071) {0x00,0x04,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x84,0x04,0x00,0x00},
(0072) {0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00},/*"三",7*/
(0073)
(0074) {0x00,0xFE,0x02,0x02,0x02,0xFE,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0xFE,0x00,0x00},
(0075) {0x00,0x7F,0x28,0x24,0x23,0x20,0x20,0x20,0x21,0x22,0x22,0x22,0x22,0x7F,0x00,0x00},/*"四",8*/
(0076)
(0077) {0x00,0x02,0x82,0x82,0x82,0x82,0xFE,0x82,0x82,0x82,0xC2,0x82,0x02,0x00,0x00,0x00},
(0078) {0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x30,0x20,0x00},/*"五",9*/
(0079)
(0080) {0x10,0x10,0x10,0x10,0x10,0x91,0x12,0x1E,0x94,0x10,0x10,0x10,0x10,0x10,0x10,0x00},
(0081) {0x00,0x40,0x20,0x10,0x0C,0x03,0x01,0x00,0x00,0x01,0x02,0x0C,0x78,0x30,0x00,0x00},/*"六",10*/
(0082)
(0083) {0x00,0x00,0x00,0xFE,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xFE,0x00,0x00,0x00,0x00},
(0084) {0x00,0x00,0x00,0x3F,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3F,0x00,0x00,0x00,0x00},/*"日",2*/
(0085) };
(0086)
(0087)
(0088) const uchar Tab_pic2[][16] = {
(0089)
(0090) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0091) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0092) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0093) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0094) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0095) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0096) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0097) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0098) {0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE},
(0099) {0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFC,0xFE,0xFC},
(0100) {0xFE,0xFC,0xFC,0xFE,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC},
(0101) {0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC},
(0102) {0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xF8,0xF4,0xF8,0xF4,0xF8,0xFC,0xFC,0xFC},
(0103) {0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC},
(0104) {0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC,0xFC},
(0105) {0x54,0x88,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0106) {0xBE,0xFF,0x7F,0x3F,0x9F,0x4F,0x27,0x27,0x13,0xCB,0x09,0x01,0x65,0x64,0x65,0x64},
(0107) {0x65,0x64,0x25,0x09,0x89,0x03,0x13,0x27,0x2F,0xCF,0x1F,0x3F,0xFF,0xFF,0xFF,0xFF},
(0108) {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x3F,0x0F,0xF7},
(0109) {0xEF,0x0F,0x3F,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
(0110) {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0x9F,0xC7,0xF7,0x67,0x4F,0xA7,0x97,0x37,0x87},
(0111) {0xF9,0xFF,0xFB,0xFF,0xFB,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F},
(0112) {0x3F,0xFF,0x3F,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
(0113) {0xFF,0xFE,0x7D,0x9A,0xBC,0x16,0x20,0x80,0xC0,0x60,0x38,0x90,0x80,0x80,0x90,0x60},
(0114) {0x02,0xC1,0x1C,0x82,0x91,0x1C,0x0E,0xC4,0xF0,0xF8,0x7C,0x3E,0x9E,0x4F,0x0F,0x1E},
(0115) {0x0F,0x4F,0x9E,0x3E,0xFC,0xF8,0xF2,0x87,0x1E,0x18,0x81,0x86,0x58,0x81,0x0F,0xFF},
(0116) {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0x3F,0x07,0x89,0xCD,0xCC,0xFE,0xBF},
(0117) {0xD3,0x12,0x09,0xE9,0x19,0x03,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
(0118) {0xFF,0x7F,0x7F,0x3F,0x97,0xCB,0x59,0x2C,0x0E,0xF7,0xFF,0x9E,0x83,0x49,0xED,0xE4},
(0119) {0xFA,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0x2F,0x27,0xA0},
(0120) {0xF0,0x3F,0x19,0xCC,0xE5,0xFB,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
(0121) {0xFF,0xFF,0xC0,0x0C,0x5D,0x5F,0x6D,0x6F,0xEF,0xFF,0x7F,0x3D,0x07,0xC3,0xF9,0xFE},
(0122) {0x80,0x0E,0x30,0xC0,0x08,0x09,0x00,0x07,0x1F,0x3F,0x60,0x80,0x01,0x08,0xFF,0xFF},
(0123) {0xFF,0x00,0x81,0xC0,0x60,0x3F,0x1F,0x03,0x40,0x01,0x01,0xC0,0x38,0x02,0x00,0x0B},
(0124) {0x3F,0x7F,0x7F,0x7F,0x7F,0x7F,0x3F,0x05,0x00,0x3F,0x1F,0x40,0x40,0xDA,0x3F,0x97},
(0125) {0x40,0x18,0x38,0x9F,0x60,0x7A,0x7F,0x7F,0x7F,0xFF,0x7F,0xFF,0x7F,0xFF,0xFF,0x7F},
(0126) {0xFF,0xFC,0x7B,0xFB,0x79,0x78,0xF2,0x46,0x93,0x3F,0x7F,0x01,0x80,0xFE,0xFF,0xFF},
(0127) {0xFF,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xF5,0x76,0xF6,0xF1},
(0128) {0xF9,0xF2,0x6E,0xEC,0x71,0xFF,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
(0129) {0xF7,0xE9,0x4D,0x0C,0x66,0x46,0x42,0xFF,0x77,0x03,0xF3,0xFB,0xFC,0xFF,0xFF,0xFF},
(0130) {0xAA,0xFF,0xFC,0xF8,0xF3,0xE4,0xC8,0xC8,0x90,0x90,0x20,0x20,0x20,0x40,0x08,0x41},
(0131) {0x40,0x20,0x20,0x20,0x00,0x90,0x90,0xC8,0xE4,0xE2,0xC1,0xA8,0xF0,0x00,0x00,0x00},
(0132) {0x00,0x0B,0x06,0x2A,0x34,0x00,0x00,0x00,0x00,0x1E,0x10,0x1E,0x00,0x1E,0x8C,0x1E},
(0133) {0x80,0x9E,0x80,0xCE,0x9C,0xC2,0xCA,0x9E,0xD6,0x80,0x9E,0x4E,0xCE,0x90,0x02,0x96},
(0134) {0x1E,0x80,0x1E,0x00,0x02,0x1E,0xE0,0xC2,0xDC,0xE6,0xE1,0xFE,0xE1,0xCE,0xD2,0xD2},
(0135) {0xCC,0xC0,0xDE,0xE4,0xE0,0xFB,0xE1,0xC2,0xD6,0xDE,0xC0,0xCC,0xD2,0xD2,0xCC,0xC0},
(0136) {0xDE,0xD0,0xCE,0xC0,0xDA,0xD6,0xC0,0xDE,0xC4,0xCC,0xD2,0xE1,0xF1,0xCC,0xDA,0xD2},
(0137) {0xC0,0xC0,0xDC,0xC4,0xDE,0xC0,0xDE,0xC2,0xCE,0xDC,0xCE,0xD0,0xCE,0xCE,0xD8,0xE3},
(0138) {0x2A,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3E},
(0139) {0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3D,0x3A},
(0140) {0x38,0x38,0x3C,0x38,0x34,0x38,0x30,0x20,0x30,0x28,0x28,0x34,0x38,0x3F,0x3E,0x3F},
(0141) {0x3E,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3C,0x3F},
(0142) {0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x03,0x03,0x0F,0x2F},
(0143) {0x3F,0x3F,0x3F,0x1F,0x1F,0x2F,0x1F,0x1F,0x03,0x0F,0x0B,0x1F,0x3F,0x0F,0x3F,0x2F},
(0144) {0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F},
(0145) {0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F},
(0146) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0147) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0148) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0149) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0150) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0151) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0152) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0153) {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
(0154)
(0155)
(0156) };
(0157) /*****************************************
(0158) *函数名称: delayUS(us)
(0159) *函数功能 实现1us的延时
(0160) *入口参数 :us
(0161) *出口参数:无
(0162) ****************************************/
(0163) void delayUS(uint us)
(0164) {
(0165) uint i;
(0166) us=us*3;
03A6 E003 LDI R16,3
03A7 E010 LDI R17,0
03A8 019B MOVW R18,R22
03A9 940E06F4 CALL empy16s
03AB 01B8 MOVW R22,R16
(0167) for(i=0;i<us;i++);
03AC 2744 CLR R20
03AD 2755 CLR R21
03AE C002 RJMP 0x03B1
03AF 5F4F SUBI R20,0xFF
03B0 4F5F SBCI R21,0xFF
03B1 1746 CP R20,R22
03B2 0757 CPC R21,R23
03B3 F3D8 BCS 0x03AF
03B4 940E0704 CALL pop_gset2
03B6 9508 RET
_delayMS:
i --> R20
j --> R22
ms --> R16
03B7 940E0713 CALL push_gset2
(0168) }
(0169) /****************************************
(0170) *函数名称: delayMS(ms)
(0171) *函数功能 实现1ms的延时
(0172) *入口参数 :ms
(0173) *出口参数:无
(0174)
(0175) ***************************************/
(0176) void delayMS(uint ms)
(0177) {
(0178) uint i,j;
(0179) for(i=0;i<1541;i++)
03B9 2744 CLR R20
03BA 2755 CLR R21
03BB C00A RJMP 0x03C6
(0180) for(j=0;j<ms;j++);
03BC 2766 CLR R22
03BD 2777 CLR R23
03BE C002 RJMP 0x03C1
03BF 5F6F SUBI R22,0xFF
03C0 4F7F SBCI R23,0xFF
03C1 1760 CP R22,R16
03C2 0771 CPC R23,R17
03C3 F3D8 BCS 0x03BF
03C4 5F4F SUBI R20,0xFF
03C5 4F5F SBCI R21,0xFF
03C6 3045 CPI R20,5
03C7 E0E6 LDI R30,6
03C8 075E CPC R21,R30
03C9 F390 BCS 0x03BC
03CA 940E0704 CALL pop_gset2
03CC 9508 RET
_LCD_WRITE_DAT:
dat --> R20
03CD 940E0715 CALL push_gset1
03CF 2F40 MOV R20,R16
(0181) }
(0182) /****************************************
(0183)
(0184)
(0185) /**************************************
(0186) *函数名称:LCD——WRITEDAT(dat)
(0187) *函数功能:向LCD写入数据
(0188) *入口参数:dat
(0189) *出口参数:无
(0190) *************************************/
(0191) void LCD_WRITE_DAT(uchar dat)
(0192) {
(0193) LCDENL;
03D0 9896 CBI 0x12,6
(0194) delayUS(2);
03D1 E002 LDI R16,2
03D2 E010 LDI R17,0
03D3 DFCF RCALL _delayUS
(0195) LCDDIH; //选择为输入数据
03D4 9A97 SBI 0x12,7
(0196) delayUS(2);
03D5 E002 LDI R16,2
03D6 E010 LDI R17,0
03D7 DFCB RCALL _delayUS
(0197) LCDENH;
03D8 9A96 SBI 0x12,6
(0198) delayUS(2);
03D9 E002 LDI R16,2
03DA E010 LDI R17,0
03DB DFC7 RCALL _delayUS
(0199) PORTC=dat;
03DC BB45 OUT 0x15,R20
(0200) delayUS(2);
03DD E002 LDI R16,2
03DE E010 LDI R17,0
03DF DFC3 RCALL _delayUS
(0201) LCDENL;
03E0 9896 CBI 0x12,6
03E1 940E0718 CALL pop_gset1
03E3 9508 RET
_LCD_WRITE_COM:
com --> R20
03E4 940E0715 CALL push_gset1
03E6 2F40 MOV R20,R16
(0202) }
(0203) /******************************************
(0204) *函数名称:LCD_WRITE_COM(com)
(0205) *函数功能:向LCD写入命令
(0206) *入口参数:com
(0207) *出口参数:无
(0208) ***********************************************/
(0209) void LCD_WRITE_COM(uchar com)
(0210) {
(0211) LCDENL;
03E7 9896 CBI 0x12,6
(0212) delayUS(2);
03E8 E002 LDI R16,2
03E9 E010 LDI R17,0
03EA DFB8 RCALL _delayUS
(0213) LCDDIL;
03EB 9897 CBI 0x12,7
(0214) delayUS(2);
03EC E002 LDI R16,2
03ED E010 LDI R17,0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -