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

📄 zz.lis

📁 avr基础程序大全
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 00B2 AE9A              sbi 0x15,6
 00B4                   .dbline -2
 00B4           L22:
 00B4                   .dbline 0 ; func end
 00B4 4991              ld R20,y+
 00B6 A990              ld R10,y+
 00B8 0895              ret
 00BA                   .dbsym r b 20 c
 00BA                   .dbsym r a 10 c
 00BA                   .dbend
 00BA                   .dbfunc e lcd12864_init _lcd12864_init fV
                        .even
 00BA           _lcd12864_init::
 00BA                   .dbline -1
 00BA                   .dbline 73
 00BA           ; }
 00BA           ; void lcd12864_init()
 00BA           ; {
 00BA                   .dbline 74
 00BA           ;       write_shuju(0,0x30);                    //设置数据方式:8位
 00BA 20E3              ldi R18,48
 00BC 0027              clr R16
 00BE D4DF              xcall _write_shuju
 00C0                   .dbline 75
 00C0           ;       delay_us(200);
 00C0 08EC              ldi R16,200
 00C2 10E0              ldi R17,0
 00C4 A0DF              xcall _delay_us
 00C6                   .dbline 76
 00C6           ;       write_shuju(0,0x30);                    //设置数据方式:8位
 00C6 20E3              ldi R18,48
 00C8 0027              clr R16
 00CA CEDF              xcall _write_shuju
 00CC                   .dbline 77
 00CC           ;       delay_us(80);
 00CC 00E5              ldi R16,80
 00CE 10E0              ldi R17,0
 00D0 9ADF              xcall _delay_us
 00D2                   .dbline 78
 00D2           ;       write_shuju(0,0x0C);                    //开显示
 00D2 2CE0              ldi R18,12
 00D4 0027              clr R16
 00D6 C8DF              xcall _write_shuju
 00D8                   .dbline 79
 00D8           ;       delay_us(80);
 00D8 00E5              ldi R16,80
 00DA 10E0              ldi R17,0
 00DC 94DF              xcall _delay_us
 00DE                   .dbline 80
 00DE           ;       write_shuju(0,0x40);                    //开显示
 00DE 20E4              ldi R18,64
 00E0 0027              clr R16
 00E2 C2DF              xcall _write_shuju
 00E4                   .dbline 81
 00E4           ;       delay_us(200);
 00E4 08EC              ldi R16,200
 00E6 10E0              ldi R17,0
 00E8 8EDF              xcall _delay_us
 00EA                   .dbline 82
 00EA           ;       write_shuju(0,0x01);                    //清屏
 00EA 21E0              ldi R18,1
 00EC 0027              clr R16
 00EE BCDF              xcall _write_shuju
 00F0                   .dbline 83
 00F0           ;       delay_ms(100);
 00F0 04E6              ldi R16,100
 00F2 10E0              ldi R17,0
 00F4                   .dbline -2
 00F4           L25:
 00F4                   .dbline 0 ; func end
 00F4 90CF              xjmp _delay_ms
 00F6                   .dbend
 00F6                   .dbfunc e write_hz _write_hz fV
 00F6           ;              s -> R20,R21
                        .even
 00F6           _write_hz::
 00F6 4A93              st -y,R20
 00F8 5A93              st -y,R21
 00FA A801              movw R20,R16
 00FC                   .dbline -1
 00FC                   .dbline 87
 00FC           ; 
 00FC           ; }
 00FC           ; void write_hz(char *s)
 00FC           ;    {
 00FC 06C0              xjmp L28
 00FE           L27:
 00FE                   .dbline 89
 00FE           ;       while(*s)
 00FE           ;           {
 00FE                   .dbline 90
 00FE           ;               write_shuju(1,*s);
 00FE FA01              movw R30,R20
 0100 2081              ldd R18,z+0
 0102 01E0              ldi R16,1
 0104 B1DF              xcall _write_shuju
 0106                   .dbline 91
 0106           ;               s++;
 0106 4F5F              subi R20,255  ; offset = 1
 0108 5F4F              sbci R21,255
 010A                   .dbline 92
 010A           ;               }
 010A           L28:
 010A                   .dbline 88
 010A FA01              movw R30,R20
 010C 2080              ldd R2,z+0
 010E 2220              tst R2
 0110 B1F7              brne L27
 0112           X6:
 0112                   .dbline -2
 0112           L26:
 0112                   .dbline 0 ; func end
 0112 5991              ld R21,y+
 0114 4991              ld R20,y+
 0116 0895              ret
 0118                   .dbsym r s 20 pc
 0118                   .dbend
 0118                   .dbfunc e locate _locate fV
 0118           ;              y -> R20
 0118           ;              x -> R10
                        .even
 0118           _locate::
 0118 0E940000          xcall push_xgsetF00C
 011C 422F              mov R20,R18
 011E A02E              mov R10,R16
 0120                   .dbline -1
 0120                   .dbline 95
 0120           ; }
 0120           ; void locate(uchar x,uchar y)
 0120           ; {
 0120                   .dbline 96
 0120           ;       switch(x)
 0120 6A2D              mov R22,R10
 0122 7727              clr R23
 0124 6130              cpi R22,1
 0126 E0E0              ldi R30,0
 0128 7E07              cpc R23,R30
 012A 69F0              breq L34
 012C           X7:
 012C 6230              cpi R22,2
 012E E0E0              ldi R30,0
 0130 7E07              cpc R23,R30
 0132 79F0              breq L35
 0134           X8:
 0134 6330              cpi R22,3
 0136 E0E0              ldi R30,0
 0138 7E07              cpc R23,R30
 013A 89F0              breq L36
 013C           X9:
 013C 6430              cpi R22,4
 013E E0E0              ldi R30,0
 0140 7E07              cpc R23,R30
 0142 99F0              breq L37
 0144           X10:
 0144 17C0              xjmp L32
 0146           L34:
 0146                   .dbline 98
 0146           ;               {
 0146           ;               case 1:write_shuju(0,(0x80+y-1)); break;
 0146 242F              mov R18,R20
 0148 2058              subi R18,128    ; addi 128
 014A 2150              subi R18,1
 014C 0027              clr R16
 014E 8CDF              xcall _write_shuju
 0150                   .dbline 98
 0150 11C0              xjmp L32
 0152           L35:
 0152                   .dbline 99
 0152           ;               case 2:write_shuju(0,(0x90+y-1));break;
 0152 242F              mov R18,R20
 0154 2057              subi R18,112    ; addi 144
 0156 2150              subi R18,1
 0158 0027              clr R16
 015A 86DF              xcall _write_shuju
 015C                   .dbline 99
 015C 0BC0              xjmp L32
 015E           L36:
 015E                   .dbline 100
 015E           ;               case 3:write_shuju(0,(0x88+y-1));break; 
 015E 242F              mov R18,R20
 0160 2857              subi R18,120    ; addi 136
 0162 2150              subi R18,1
 0164 0027              clr R16
 0166 80DF              xcall _write_shuju
 0168                   .dbline 100
 0168 05C0              xjmp L32
 016A           L37:
 016A                   .dbline 101
 016A           ;               case 4:write_shuju(0,(0x98+y-1));break;
 016A 242F              mov R18,R20
 016C 2856              subi R18,104    ; addi 152
 016E 2150              subi R18,1
 0170 0027              clr R16
 0172 7ADF              xcall _write_shuju
 0174                   .dbline 101
 0174                   .dbline 102
 0174           ;               default:break;           
 0174           L32:
 0174                   .dbline -2
 0174           L30:
 0174                   .dbline 0 ; func end
 0174 0C940000          xjmp pop_xgsetF00C
 0178                   .dbsym r y 20 c
 0178                   .dbsym r x 10 c
 0178                   .dbend
 0178                   .dbfunc e cls _cls fV
                        .even
 0178           _cls::
 0178                   .dbline -1
 0178                   .dbline 106
 0178           ;               }
 0178           ; }
 0178           ; void cls()
 0178           ; {
 0178                   .dbline 107
 0178           ;       delay_us(200);
 0178 08EC              ldi R16,200
 017A 10E0              ldi R17,0
 017C 44DF              xcall _delay_us
 017E                   .dbline 108
 017E           ;       write_shuju(0,0x01);                    //清屏
 017E 21E0              ldi R18,1
 0180 0027              clr R16
 0182 72DF              xcall _write_shuju
 0184                   .dbline 109
 0184           ;       delay_ms(20);
 0184 04E1              ldi R16,20
 0186 10E0              ldi R17,0
 0188                   .dbline -2
 0188           L38:
 0188                   .dbline 0 ; func end
 0188 46CF              xjmp _delay_ms
 018A                   .dbend
 018A                   .dbfile F:\新学习板程序\avr程序\181286~1\12864_~1\adc.h
 018A                   .dbfunc e mega16_adc _mega16_adc fi
 018A           ;         addata -> R10,R11
                        .even
 018A           _mega16_adc::
 018A AA92              st -y,R10
 018C BA92              st -y,R11
 018E                   .dbline -1
 018E                   .dbline 6
 018E           ; #include <iom16v.h>
 018E           ; #include <macros.h>
 018E           ; #define  uchar unsigned char
 018E           ; #define  uint  unsigned int
 018E           ; uint mega16_adc()
 018E           ; {
 018E                   .dbline 8
 018E           ;      uint addata;
 018E           ;        DDRA&=~BIT(0);
 018E D098              cbi 0x1a,0
 0190                   .dbline 9
 0190           ;        PORTA&=~BIT(0);
 0190 D898              cbi 0x1b,0
 0192                   .dbline 10
 0192           ;        ADMUX=0x40;
 0192 80E4              ldi R24,64
 0194 87B9              out 0x7,R24
 0196                   .dbline 11
 0196           ;        ADCSR=0X80;
 0196 80E8              ldi R24,128
 0198 86B9              out 0x6,R24
 019A                   .dbline 12
 019A           ;        ADCSR|=BIT(6);
 019A 369A              sbi 0x6,6
 019C           L40:
 019C                   .dbline 13
 019C           ;        while(!(ADCSR&(BIT(4))));
 019C           L41:
 019C                   .dbline 13
 019C 349B              sbis 0x6,4
 019E FECF              rjmp L40
 01A0           X11:
 01A0                   .dbline 14
 01A0           ;      addata=ADCL;
 01A0 A4B0              in R10,0x4
 01A2 BB24              clr R11
 01A4                   .dbline 15
 01A4           ;        addata=addata+ADCH*256;
 01A4 25B1              in R18,0x5

⌨️ 快捷键说明

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