⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tc_clock.lst

📁 在ICCAVR环境下做的ATMEGA128单片机实现模拟时钟
💻 LST
📖 第 1 页 / 共 3 页
字号:
__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 + -