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

📄 ad_led.lst

📁 AVR系列单片机源代码例子,可在ICCAVR中直接使用
💻 LST
📖 第 1 页 / 共 2 页
字号:
(0070) void main(void)
(0071) {
(0072)  unsigned char i;
(0073)  port_init();
_main:
  i                    --> R20
    00D0 DF68      RCALL	_port_init
(0074)  MCUCR=0;
    00D1 2422      CLR	R2
    00D2 BE25      OUT	P35,R2
(0075)  ADMUX=0x00;//0通道
    00D3 B827      OUT	P07,R2
(0076)  ADCSR=(1<<ADEN)|(1<<ADSC)|(1<<ADIF)|(1<<ADIE)|0x06;
    00D4 ED8E      LDI	R24,0xDE
    00D5 B986      OUT	P06,R24
(0077)  SEI();
    00D6 9478      BSET	7
(0078)  for(i=0;i<6;i++)
    00D7 2744      CLR	R20
    00D8 C011      RJMP	0x00EA
(0079)     ledbuff[i]=tabel[0];
    00D9 E682      LDI	R24,0x62
    00DA E090      LDI	R25,0
    00DB 2FE4      MOV	R30,R20
    00DC 27FF      CLR	R31
    00DD 0FE8      ADD	R30,R24
    00DE 1FF9      ADC	R31,R25
    00DF E282      LDI	R24,0x22
    00E0 E090      LDI	R25,0
    00E1 93FA      ST	R31,-Y
    00E2 93EA      ST	R30,-Y
    00E3 2FE8      MOV	R30,R24
    00E4 2FF9      MOV	R31,R25
    00E5 95C8      LPM
    00E6 91E9      LD	R30,Y+
    00E7 91F9      LD	R31,Y+
    00E8 8200      STD	R0,0+Z
    00E9 9543      INC	R20
    00EA 3046      CPI	R20,6
    00EB F368      BCS	0x00D9
(0080)  i=0;
    00EC 2744      CLR	R20
    00ED C01F      RJMP	0x010D
(0081)  while(1)
(0082)     {
(0083)      if((i==127)|(i==0))
    00EE 374F      CPI	R20,0x7F
    00EF F429      BNE	0x00F5
    00F0 E081      LDI	R24,1
    00F1 E090      LDI	R25,0
    00F2 2EA8      MOV	R10,R24
    00F3 2EB9      MOV	R11,R25
    00F4 C002      RJMP	0x00F7
    00F5 24AA      CLR	R10
    00F6 24BB      CLR	R11
    00F7 2344      TST	R20
    00F8 F419      BNE	0x00FC
    00F9 E061      LDI	R22,1
    00FA E070      LDI	R23,0
    00FB C002      RJMP	0x00FE
    00FC 2766      CLR	R22
    00FD 2777      CLR	R23
    00FE 2C2A      MOV	R2,R10
    00FF 2C3B      MOV	R3,R11
    0100 2A26      OR	R2,R22
    0101 2A37      OR	R3,R23
    0102 2022      TST	R2
    0103 F411      BNE	0x0106
    0104 2033      TST	R3
    0105 F029      BEQ	0x010B
(0084) 	     adctovol(ad_con);//降低AD结果刷新速率
    0106 91000060  LDS	R16,_ad_con
    0108 91100061  LDS	R17,_ad_con+1
    010A DF52      RCALL	_adctovol
(0085) 	 display();			  //使末位闪烁不太明显
    010B DF34      RCALL	_display
(0086) 	 i++; 
    010C 9543      INC	R20
(0087)     }
    010D CFE0      RJMP	0x00EE
(0088)  }   
FILE: <library>
    010E 9508      RET
_delay_1ms:
    010F E001      LDI	R16,1
    0110 E010      LDI	R17,0
    0111 C002      RJMP	0x0114
    0112 5F0F      SUBI	R16,0xFF
    0113 4F1F      SBCI	R17,0xFF
    0114 3706      CPI	R16,0x76
    0115 E0E4      LDI	R30,4
    0116 071E      CPC	R17,R30
    0117 F3D0      BCS	0x0112
    0118 9508      RET
mod16u:
    0119 9468      BSET	6
    011A C001      RJMP	xdiv16u
div16u:
    011B 94E8      BCLR	6
xdiv16u:
    011C 92EA      ST	R14,-Y
    011D 92FA      ST	R15,-Y
    011E 938A      ST	R24,-Y
    011F 24EE      CLR	R14
    0120 24FF      CLR	R15
    0121 E180      LDI	R24,0x10
    0122 0F00      LSL	R16
    0123 1F11      ROL	R17
    0124 1CEE      ROL	R14
    0125 1CFF      ROL	R15
    0126 16E2      CP	R14,R18
    0127 06F3      CPC	R15,R19
    0128 F018      BCS	0x012C
    0129 1AE2      SUB	R14,R18
    012A 0AF3      SBC	R15,R19
    012B 9503      INC	R16
    012C 958A      DEC	R24
    012D F7A1      BNE	0x0122
    012E F416      BRTC	0x0131
    012F 2D0E      MOV	R16,R14
    0130 2D1F      MOV	R17,R15
    0131 9189      LD	R24,Y+
    0132 90F9      LD	R15,Y+
    0133 90E9      LD	R14,Y+
    0134 9508      RET
push_gset1:
    0135 935A      ST	R21,-Y
    0136 934A      ST	R20,-Y
    0137 9508      RET
pop_gset1:
    0138 E0E1      LDI	R30,1
pop:
    0139 9149      LD	R20,Y+
    013A 9159      LD	R21,Y+
    013B FDE0      SBRC	R30,0
    013C 9508      RET
    013D 9169      LD	R22,Y+
    013E 9179      LD	R23,Y+
    013F FDE1      SBRC	R30,1
    0140 9508      RET
    0141 90A9      LD	R10,Y+
    0142 90B9      LD	R11,Y+
    0143 FDE2      SBRC	R30,2
    0144 9508      RET
    0145 90C9      LD	R12,Y+
    0146 90D9      LD	R13,Y+
    0147 FDE3      SBRC	R30,3
    0148 9508      RET
    0149 90E9      LD	R14,Y+
    014A 90F9      LD	R15,Y+
    014B 9508      RET
push_gset2:
    014C 937A      ST	R23,-Y
    014D 936A      ST	R22,-Y
    014E CFE6      RJMP	push_gset1
push_gset3:
    014F 92BA      ST	R11,-Y
    0150 92AA      ST	R10,-Y
    0151 CFFA      RJMP	push_gset2
push_gset4:
    0152 92DA      ST	R13,-Y
    0153 92CA      ST	R12,-Y
    0154 CFFA      RJMP	push_gset3
pop_gset4:
    0155 E0E8      LDI	R30,0x8
    0156 CFE2      RJMP	pop
lsr32:
    0157 920F      PUSH	R0
    0158 9009      LD	R0,Y+
    0159 2000      TST	R0
    015A F031      BEQ	0x0161
    015B 9536      LSR	R19
    015C 9527      ROR	R18
    015D 9517      ROR	R17
    015E 9507      ROR	R16
    015F 940A      DEC	R0
    0160 CFF8      RJMP	0x0159
    0161 900F      POP	R0
    0162 9508      RET
lsl8:
    0163 2311      TST	R17
    0164 F019      BEQ	0x0168
    0165 0F00      LSL	R16
    0166 951A      DEC	R17
    0167 CFFB      RJMP	lsl8
    0168 9508      RET
long_prolog:
    0169 928A      ST	R8,-Y
    016A 929A      ST	R9,-Y
    016B 92AA      ST	R10,-Y
    016C 92BA      ST	R11,-Y
    016D 93EA      ST	R30,-Y
    016E 938A      ST	R24,-Y
    016F 939A      ST	R25,-Y
    0170 93AA      ST	R26,-Y
    0171 93BA      ST	R27,-Y
    0172 8589      LDD	R24,9+Y
    0173 859A      LDD	R25,10+Y
    0174 85AB      LDD	R26,11+Y
    0175 85BC      LDD	R27,12+Y
    0176 9508      RET
long_epilog:
    0177 91B9      LD	R27,Y+
    0178 91A9      LD	R26,Y+
    0179 9199      LD	R25,Y+
    017A 9189      LD	R24,Y+
    017B 91E9      LD	R30,Y+
    017C 90B9      LD	R11,Y+
    017D 90A9      LD	R10,Y+
    017E 9099      LD	R9,Y+
    017F 9089      LD	R8,Y+
    0180 9624      ADIW	R28,4
    0181 9508      RET
tstzero1:
    0182 27EE      CLR	R30
    0183 2BE0      OR	R30,R16
    0184 2BE1      OR	R30,R17
    0185 2BE2      OR	R30,R18
    0186 2BE3      OR	R30,R19
    0187 9508      RET
tstzero2:
    0188 27EE      CLR	R30
    0189 2BE8      OR	R30,R24
    018A 2BE9      OR	R30,R25
    018B 2BEA      OR	R30,R26
    018C 2BEB      OR	R30,R27
    018D 9508      RET
mpy32u:
mpy32s:
    018E DFDA      RCALL	long_prolog
    018F DFF2      RCALL	tstzero1
    0190 F0C9      BEQ	0x01AA
    0191 2488      CLR	R8
    0192 2499      CLR	R9
    0193 24AA      CLR	R10
    0194 24BB      CLR	R11
    0195 DFF2      RCALL	tstzero2
    0196 F079      BEQ	0x01A6
    0197 9536      LSR	R19
    0198 9527      ROR	R18
    0199 9517      ROR	R17
    019A 9507      ROR	R16
    019B F420      BCC	0x01A0
    019C 0E88      ADD	R8,R24
    019D 1E99      ADC	R9,R25
    019E 1EAA      ADC	R10,R26
    019F 1EBB      ADC	R11,R27
    01A0 0F88      LSL	R24
    01A1 1F99      ROL	R25
    01A2 1FAA      ROL	R26
    01A3 1FBB      ROL	R27
    01A4 DFDD      RCALL	tstzero1
    01A5 F789      BNE	0x0197
    01A6 2D08      MOV	R16,R8
    01A7 2D19      MOV	R17,R9
    01A8 2D2A      MOV	R18,R10
    01A9 2D3B      MOV	R19,R11
    01AA CFCC      RJMP	long_epilog

⌨️ 快捷键说明

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