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

📄 ps2.lis

📁 AVRkaifashili.rar
💻 LIS
📖 第 1 页 / 共 4 页
字号:
 0030           ;              i -> R16
                        .even
 0030           _Set_CS1::
 0030                   .dbline -1
 0030                   .dbline 35
 0030           ; 
 0030           ; //sbit CS1=PB^3;
 0030           ; void Set_CS1(uchar i)
 0030           ; {if(i==1) PORTB=PORTB|0x08;
 0030                   .dbline 35
 0030 0130              cpi R16,1
 0032 11F4              brne L11
 0034                   .dbline 35
 0034 C39A              sbi 0x18,3
 0036 03C0              rjmp L12
 0038           L11:
 0038                   .dbline 36
 0038 88B3              in R24,0x18
 003A 877F              andi R24,247
 003C 88BB              out 0x18,R24
 003E           L12:
 003E                   .dbline -2
 003E                   .dbline 36
 003E           ;  else     PORTB=PORTB&0xf7;}
 003E           L10:
 003E                   .dbline 0 ; func end
 003E 0895              ret
 0040                   .dbsym r i 16 c
 0040                   .dbend
 0040                   .dbfunc e Set_CS2 _Set_CS2 fV
 0040           ;              i -> R16
                        .even
 0040           _Set_CS2::
 0040                   .dbline -1
 0040                   .dbline 40
 0040           ; 
 0040           ; //sbit CS2=PC^6;
 0040           ; void Set_CS2(uchar i)
 0040           ; {if(i==1) PORTC=PORTC|0x40;
 0040                   .dbline 40
 0040 0130              cpi R16,1
 0042 11F4              brne L14
 0044                   .dbline 40
 0044 AE9A              sbi 0x15,6
 0046 03C0              rjmp L15
 0048           L14:
 0048                   .dbline 41
 0048 85B3              in R24,0x15
 004A 8F7B              andi R24,191
 004C 85BB              out 0x15,R24
 004E           L15:
 004E                   .dbline -2
 004E                   .dbline 41
 004E           ;  else     PORTC=PORTC&0xbf;}
 004E           L13:
 004E                   .dbline 0 ; func end
 004E 0895              ret
 0050                   .dbsym r i 16 c
 0050                   .dbend
 0050                   .dbfunc e Set_RST _Set_RST fV
 0050           ;              i -> R16
                        .even
 0050           _Set_RST::
 0050                   .dbline -1
 0050                   .dbline 45
 0050           ; 
 0050           ; //sbit RST=PC^7;
 0050           ; void Set_RST(uchar i)
 0050           ; {if(i==1) PORTC=PORTC|0x80;
 0050                   .dbline 45
 0050 0130              cpi R16,1
 0052 11F4              brne L17
 0054                   .dbline 45
 0054 AF9A              sbi 0x15,7
 0056 03C0              rjmp L18
 0058           L17:
 0058                   .dbline 46
 0058 85B3              in R24,0x15
 005A 8F77              andi R24,127
 005C 85BB              out 0x15,R24
 005E           L18:
 005E                   .dbline -2
 005E                   .dbline 46
 005E           ;  else     PORTC=PORTC&0x7f;}
 005E           L16:
 005E                   .dbline 0 ; func end
 005E 0895              ret
 0060                   .dbsym r i 16 c
 0060                   .dbend
 0060                   .dbfunc e Delay _Delay fV
 0060           ;              j -> R20,R21
 0060           ;              i -> R16,R17
                        .even
 0060           _Delay::
 0060 00D0              rcall push_gset1
 0062                   .dbline -1
 0062                   .dbline 50
 0062           ; 
 0062           ; //延时//
 0062           ; void Delay(uint i)
 0062           ; {uint j;
 0062                   .dbline 51
 0062           ;  for(;i!=0;i--) 
 0062 0AC0              rjmp L23
 0064           L20:
 0064                   .dbline 52
 0064 48E8              ldi R20,5000
 0066 53E1              ldi R21,19
 0068 02C0              rjmp L27
 006A           L24:
 006A                   .dbline 52
 006A                   .dbline 52
 006A                   .dbline 52
 006A           L25:
 006A                   .dbline 52
 006A 4150              subi R20,1
 006C 5040              sbci R21,0
 006E           L27:
 006E                   .dbline 52
 006E 4030              cpi R20,0
 0070 4507              cpc R20,R21
 0072 D9F7              brne L24
 0074           X0:
 0074           L21:
 0074                   .dbline 51
 0074 0150              subi R16,1
 0076 1040              sbci R17,0
 0078           L23:
 0078                   .dbline 51
 0078 0030              cpi R16,0
 007A 0107              cpc R16,R17
 007C 99F7              brne L20
 007E           X1:
 007E                   .dbline -2
 007E                   .dbline 53
 007E           ;       for(j=5000;j!=0;j--) {;}
 007E           ; }
 007E           L19:
 007E 00D0              rcall pop_gset1
 0080                   .dbline 0 ; func end
 0080 0895              ret
 0082                   .dbsym r j 20 i
 0082                   .dbsym r i 16 i
 0082                   .dbend
 0082                   .dbfunc e nop _nop fV
 0082           ;              i -> R16
                        .even
 0082           _nop::
 0082                   .dbline -1
 0082                   .dbline 56
 0082           ; 
 0082           ; void nop(uchar i)
 0082           ; {for(;i!=0;i--) 
 0082                   .dbline 56
 0082 02C0              rjmp L32
 0084           L29:
 0084                   .dbline 57
 0084 0000              nop
 0086           L30:
 0086                   .dbline 56
 0086 0A95              dec R16
 0088           L32:
 0088                   .dbline 56
 0088 0023              tst R16
 008A E1F7              brne L29
 008C                   .dbline -2
 008C                   .dbline 58
 008C           ;     NOP();
 008C           ; }
 008C           L28:
 008C                   .dbline 0 ; func end
 008C 0895              ret
 008E                   .dbsym r i 16 c
 008E                   .dbend
 008E                   .dbfunc e DisplayOnOff _DisplayOnOff fV
 008E           ;              j -> <dead>
 008E           ;              i -> R20
                        .even
 008E           _DisplayOnOff::
 008E 00D0              rcall push_gset1
 0090 402F              mov R20,R16
 0092                   .dbline -1
 0092                   .dbline 63
 0092           ; 
 0092           ; 
 0092           ; // 显示开关控制命令,i=0开显示,i=1关显示//
 0092           ; void DisplayOnOff(uchar i)
 0092           ; {uchar j;
 0092                   .dbline 64
 0092           ;  Set_RW(0);// RW=0;
 0092 0027              clr R16
 0094 BDDF              rcall _Set_RW
 0096                   .dbline 65
 0096           ;  Set_DI(0);//DI=0;
 0096 0027              clr R16
 0098 B3DF              rcall _Set_DI
 009A                   .dbline 66
 009A           ;  Set_EN(0);//ENABLE=0;
 009A 0027              clr R16
 009C C1DF              rcall _Set_EN
 009E                   .dbline 67
 009E           ;  PORTA=62+i;//P0=0x3e+i;
 009E 842F              mov R24,R20
 00A0 825C              subi R24,194    ; addi 62
 00A2 8BBB              out 0x1b,R24
 00A4                   .dbline 68
 00A4           ;  nop(10);//_nop_();
 00A4 0AE0              ldi R16,10
 00A6 EDDF              rcall _nop
 00A8                   .dbline 69
 00A8           ;  Set_EN(1);//ENABLE=1;
 00A8 01E0              ldi R16,1
 00AA BADF              rcall _Set_EN
 00AC                   .dbline 70
 00AC           ;  nop(10);//_nop_();
 00AC 0AE0              ldi R16,10
 00AE E9DF              rcall _nop
 00B0                   .dbline 71
 00B0           ;  nop(10);//_nop_();
 00B0 0AE0              ldi R16,10
 00B2 E7DF              rcall _nop
 00B4                   .dbline 72
 00B4           ;  Set_EN(0);//ENABLE=0;
 00B4 0027              clr R16
 00B6 B4DF              rcall _Set_EN
 00B8                   .dbline -2
 00B8                   .dbline 74
 00B8           ; // Delay(1);
 00B8           ; }
 00B8           L33:
 00B8 00D0              rcall pop_gset1
 00BA                   .dbline 0 ; func end
 00BA 0895              ret
 00BC                   .dbsym l j 1 c
 00BC                   .dbsym r i 20 c
 00BC                   .dbend
 00BC                   .dbfunc e SetStartLine _SetStartLine fV
 00BC           ;              i -> R20
                        .even
 00BC           _SetStartLine::
 00BC 00D0              rcall push_gset1
 00BE 402F              mov R20,R16
 00C0                   .dbline -1
 00C0                   .dbline 78
 00C0           ; 
 00C0           ; //设置显示起始行,i=0~63//
 00C0           ; void SetStartLine(uchar i)
 00C0           ; {Set_RW(0);//RW=0;
 00C0                   .dbline 78
 00C0 0027              clr R16
 00C2 A6DF              rcall _Set_RW
 00C4                   .dbline 79
 00C4           ;  Set_DI(0);//DI=0;
 00C4 0027              clr R16
 00C6 9CDF              rcall _Set_DI
 00C8                   .dbline 80
 00C8           ;  Set_EN(0);//ENABLE=0;
 00C8 0027              clr R16
 00CA AADF              rcall _Set_EN
 00CC                   .dbline 81
 00CC           ;  PORTA=0xc0+i;//P0=0xc0+i;
 00CC 842F              mov R24,R20
 00CE 8054              subi R24,64    ; addi 192
 00D0 8BBB              out 0x1b,R24
 00D2                   .dbline 82
 00D2           ;  nop(10);//_nop_();
 00D2 0AE0              ldi R16,10
 00D4 D6DF              rcall _nop
 00D6                   .dbline 83
 00D6           ;  Set_EN(1);//ENABLE=1;
 00D6 01E0              ldi R16,1
 00D8 A3DF              rcall _Set_EN
 00DA                   .dbline 84
 00DA           ;  nop(10);//_nop_();
 00DA 0AE0              ldi R16,10
 00DC D2DF              rcall _nop
 00DE                   .dbline 85
 00DE           ;  nop(10);//_nop_();
 00DE 0AE0              ldi R16,10
 00E0 D0DF              rcall _nop
 00E2                   .dbline 86
 00E2           ;  Set_EN(0);//ENABLE=0;
 00E2 0027              clr R16
 00E4 9DDF              rcall _Set_EN
 00E6                   .dbline -2
 00E6                   .dbline 88
 00E6           ; // Delay(1);
 00E6           ; }
 00E6           L34:
 00E6 00D0              rcall pop_gset1
 00E8                   .dbline 0 ; func end
 00E8 0895              ret
 00EA                   .dbsym r i 20 c
 00EA                   .dbend
 00EA                   .dbfunc e SetX _SetX fV
 00EA           ;              i -> R20
                        .even
 00EA           _SetX::
 00EA 00D0              rcall push_gset1
 00EC 402F              mov R20,R16
 00EE                   .dbline -1
 00EE                   .dbline 92
 00EE           ; 
 00EE           ; //设置页(行)地址,i=0~7//
 00EE           ; void SetX(uchar i)
 00EE           ; {Set_RW(0);//RW=0;
 00EE                   .dbline 92
 00EE 0027              clr R16
 00F0 8FDF              rcall _Set_RW
 00F2                   .dbline 93
 00F2           ;  Set_DI(0);//DI=0;
 00F2 0027              clr R16
 00F4 85DF              rcall _Set_DI
 00F6                   .dbline 94
 00F6           ;  Set_EN(0);//ENABLE=0;
 00F6 0027              clr R16
 00F8 93DF              rcall _Set_EN
 00FA                   .dbline 95
 00FA           ;  PORTA=0xb8+i;//P0=0xb8+i;
 00FA 842F              mov R24,R20
 00FC 8854              subi R24,72    ; addi 184
 00FE 8BBB              out 0x1b,R24
 0100                   .dbline 96
 0100           ;  nop(10);//_nop_();
 0100 0AE0              ldi R16,10
 0102 BFDF              rcall _nop
 0104                   .dbline 97
 0104           ;  Set_EN(1);//ENABLE=1;
 0104 01E0              ldi R16,1
 0106 8CDF              rcall _Set_EN
 0108                   .dbline 98
 0108           ;  nop(100);// _nop_();
 0108 04E6              ldi R16,100
 010A BBDF              rcall _nop
 010C                   .dbline 99
 010C           ;  nop(100);//_nop_();
 010C 04E6              ldi R16,100
 010E B9DF              rcall _nop
 0110                   .dbline 100
 0110           ;  Set_EN(0);//ENABLE=0;
 0110 0027              clr R16
 0112 86DF              rcall _Set_EN
 0114                   .dbline -2
 0114                   .dbline 102
 0114           ; // Delay(1);
 0114           ; }
 0114           L35:
 0114 00D0              rcall pop_gset1
 0116                   .dbline 0 ; func end
 0116 0895              ret
 0118                   .dbsym r i 20 c
 0118                   .dbend
 0118                   .dbfunc e SetY _SetY fV
 0118           ;              i -> R20
                        .even
 0118           _SetY::
 0118 00D0              rcall push_gset1
 011A 402F              mov R20,R16
 011C                   .dbline -1
 011C                   .dbline 106
 011C           ; 
 011C           ; //设置Y(列)地址,i=0~127//
 011C           ; void SetY(uchar i)
 011C           ; {Set_RW(0);//RW=0;
 011C                   .dbline 106
 011C 0027              clr R16
 011E 78DF              rcall _Set_RW

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -