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

📄 wave50%.lst

📁 利用ATmega16单片机的T2定时器产生方波的控制程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
    00F0 BE25      OUT	0x35,R2
(0074)  GICR  = 0x00;
    00F1 BE2B      OUT	0x3B,R2
(0075)  TIMSK = 0x01; //timer interrupt sources
    00F2 E081      LDI	R24,1
    00F3 BF89      OUT	0x39,R24
(0076)  SEI(); //re-enable interrupts
    00F4 9478      BSET	7
(0077)  //all peripherals are now initialised
(0078) }
    00F5 9508      RET
(0079) 
(0080) void main()
(0081) {
(0082)      init_devices(); 
_main:
    00F6 DFF4      RCALL	_init_devices
(0083) 	 Ddummy = 0;                     //临时变量,赋初值
    00F7 E040      LDI	R20,0
    00F8 E050      LDI	R21,0
    00F9 E060      LDI	R22,0
    00FA E070      LDI	R23,0
    00FB 93500063  STS	_Ddummy+1,R21
    00FD 93400062  STS	_Ddummy,R20
    00FF 93700065  STS	_Ddummy+3,R23
    0101 93600064  STS	_Ddummy+2,R22
(0084) 	 Settings_PerDotGroupNum =10;    //每10个墨滴选一个进行打印
    0103 E08A      LDI	R24,0xA
    0104 93800061  STS	_Settings_PerDotGroupNum,R24
(0085) 	 Settings_PrintPhase =10;	 
    0106 93800060  STS	_Settings_PrintPhase,R24
(0086) } 
FILE: <library>
    0108 9508      RET
div32u:
    0109 94E8      BCLR	6
    010A C001      RJMP	0x010C
mod32u:
    010B 9468      BSET	6
    010C D02F      RCALL	long_div_prolog
    010D 24CC      CLR	R12
    010E C008      RJMP	0x0117
div32s:
    010F 94E8      BCLR	6
    0110 C001      RJMP	0x0112
mod32s:
    0111 9468      BSET	6
    0112 D029      RCALL	long_div_prolog
    0113 FD37      SBRC	R19,7
    0114 D053      RCALL	neg_R16_R19
    0115 FDB7      SBRC	R27,7
    0116 D05A      RCALL	neg_R24_R27
    0117 2477      CLR	R7
    0118 2488      CLR	R8
    0119 2499      CLR	R9
    011A 24AA      CLR	R10
    011B 24BB      CLR	R11
    011C D041      RCALL	tst_R16_R19
    011D F0C1      BEQ	0x0136
    011E D044      RCALL	tst_R24_R27
    011F F0B1      BEQ	0x0136
    0120 E2E8      LDI	R30,0x28
    0121 0F00      LSL	R16
    0122 1F11      ROL	R17
    0123 1F22      ROL	R18
    0124 1F33      ROL	R19
    0125 1C77      ROL	R7
    0126 1C88      ROL	R8
    0127 1C99      ROL	R9
    0128 1CAA      ROL	R10
    0129 1CBB      ROL	R11
    012A 1688      CP	R8,R24
    012B 0699      CPC	R9,R25
    012C 06AA      CPC	R10,R26
    012D 06BB      CPC	R11,R27
    012E F028      BCS	0x0134
    012F 1A88      SUB	R8,R24
    0130 0A99      SBC	R9,R25
    0131 0AAA      SBC	R10,R26
    0132 0ABB      SBC	R11,R27
    0133 9503      INC	R16
    0134 95EA      DEC	R30
    0135 F759      BNE	0x0121
    0136 F426      BRTC	0x013B
    0137 2D08      MOV	R16,R8
    0138 2D19      MOV	R17,R9
    0139 2D2A      MOV	R18,R10
    013A 2D3B      MOV	R19,R11
    013B C013      RJMP	long_div_epilog
long_div_prolog:
    013C 927A      ST	R7,-Y
    013D 928A      ST	R8,-Y
    013E 929A      ST	R9,-Y
    013F 92AA      ST	R10,-Y
    0140 92BA      ST	R11,-Y
    0141 92CA      ST	R12,-Y
    0142 93EA      ST	R30,-Y
    0143 938A      ST	R24,-Y
    0144 939A      ST	R25,-Y
    0145 93AA      ST	R26,-Y
    0146 93BA      ST	R27,-Y
    0147 858B      LDD	R24,Y+11
    0148 859C      LDD	R25,Y+12
    0149 85AD      LDD	R26,Y+13
    014A 85BE      LDD	R27,Y+14
    014B 2EC3      MOV	R12,R19
    014C F00E      BRTS	0x014E
    014D 26CB      EOR	R12,R27
    014E 9508      RET
long_div_epilog:
    014F FCC7      SBRC	R12,7
    0150 D017      RCALL	neg_R16_R19
    0151 91B9      LD	R27,Y+
    0152 91A9      LD	R26,Y+
    0153 9199      LD	R25,Y+
    0154 9189      LD	R24,Y+
    0155 91E9      LD	R30,Y+
    0156 90C9      LD	R12,Y+
    0157 90B9      LD	R11,Y+
    0158 90A9      LD	R10,Y+
    0159 9099      LD	R9,Y+
    015A 9089      LD	R8,Y+
    015B 9079      LD	R7,Y+
    015C 9624      ADIW	R28,4
    015D 9508      RET
tst_R16_R19:
    015E 2FE0      MOV	R30,R16
    015F 2BE1      OR	R30,R17
    0160 2BE2      OR	R30,R18
    0161 2BE3      OR	R30,R19
    0162 9508      RET
tst_R24_R27:
    0163 2FE8      MOV	R30,R24
    0164 2BE9      OR	R30,R25
    0165 2BEA      OR	R30,R26
    0166 2BEB      OR	R30,R27
    0167 9508      RET
neg_R16_R19:
    0168 9500      COM	R16
    0169 9510      COM	R17
    016A 9520      COM	R18
    016B 9530      COM	R19
    016C 5F0F      SUBI	R16,0xFF
    016D 4F1F      SBCI	R17,0xFF
    016E 4F2F      SBCI	R18,0xFF
    016F 4F3F      SBCI	R19,0xFF
    0170 9508      RET
neg_R24_R27:
    0171 9580      COM	R24
    0172 9590      COM	R25
    0173 95A0      COM	R26
    0174 95B0      COM	R27
    0175 5F8F      SUBI	R24,0xFF
    0176 4F9F      SBCI	R25,0xFF
    0177 4FAF      SBCI	R26,0xFF
    0178 4FBF      SBCI	R27,0xFF
    0179 9508      RET
empy32u:
empy32s:
    017A D047      RCALL	long_prolog
    017B 927F      PUSH	R7
    017C D05E      RCALL	tstzero1
    017D F131      BEQ	0x01A4
    017E 2477      CLR	R7
    017F D061      RCALL	tstzero2
    0180 F419      BNE	0x0184
    0181 018C      MOVW	R16,R24
    0182 019D      MOVW	R18,R26
    0183 C020      RJMP	0x01A4
    0184 9F08      MUL	R16,R24
    0185 2CB0      MOV	R11,R0
    0186 2CA1      MOV	R10,R1
    0187 9F28      MUL	R18,R24
    0188 2C90      MOV	R9,R0
    0189 2C81      MOV	R8,R1
    018A 9F18      MUL	R17,R24
    018B 0CA0      ADD	R10,R0
    018C 1C91      ADC	R9,R1
    018D 1C87      ADC	R8,R7
    018E 9F09      MUL	R16,R25
    018F 0CA0      ADD	R10,R0
    0190 1C91      ADC	R9,R1
    0191 1C87      ADC	R8,R7
    0192 9F19      MUL	R17,R25
    0193 0C90      ADD	R9,R0
    0194 1C81      ADC	R8,R1
    0195 9F0A      MUL	R16,R26
    0196 0C90      ADD	R9,R0
    0197 1C81      ADC	R8,R1
    0198 9F38      MUL	R19,R24
    0199 0C80      ADD	R8,R0
    019A 9F29      MUL	R18,R25
    019B 0C80      ADD	R8,R0
    019C 9F1A      MUL	R17,R26
    019D 0C80      ADD	R8,R0
    019E 9F0B      MUL	R16,R27
    019F 0C80      ADD	R8,R0
    01A0 2D0B      MOV	R16,R11
    01A1 2D1A      MOV	R17,R10
    01A2 2D29      MOV	R18,R9
    01A3 2D38      MOV	R19,R8
    01A4 907F      POP	R7
    01A5 C02A      RJMP	long_epilog
pop_gset2:
    01A6 E0E2      LDI	R30,2
    01A7 C004      RJMP	pop
push_gset1:
    01A8 935A      ST	R21,-Y
    01A9 934A      ST	R20,-Y
    01AA 9508      RET
pop_gset1:
    01AB E0E1      LDI	R30,1
pop:
    01AC 9149      LD	R20,Y+
    01AD 9159      LD	R21,Y+
    01AE FDE0      SBRC	R30,0
    01AF 9508      RET
    01B0 9169      LD	R22,Y+
    01B1 9179      LD	R23,Y+
    01B2 FDE1      SBRC	R30,1
    01B3 9508      RET
    01B4 90A9      LD	R10,Y+
    01B5 90B9      LD	R11,Y+
    01B6 FDE2      SBRC	R30,2
    01B7 9508      RET
    01B8 90C9      LD	R12,Y+
    01B9 90D9      LD	R13,Y+
    01BA FDE3      SBRC	R30,3
    01BB 9508      RET
    01BC 90E9      LD	R14,Y+
    01BD 90F9      LD	R15,Y+
    01BE 9508      RET
push_gset2:
    01BF 937A      ST	R23,-Y
    01C0 936A      ST	R22,-Y
    01C1 CFE6      RJMP	push_gset1
long_prolog:
    01C2 928A      ST	R8,-Y
    01C3 929A      ST	R9,-Y
    01C4 92AA      ST	R10,-Y
    01C5 92BA      ST	R11,-Y
    01C6 93EA      ST	R30,-Y
    01C7 938A      ST	R24,-Y
    01C8 939A      ST	R25,-Y
    01C9 93AA      ST	R26,-Y
    01CA 93BA      ST	R27,-Y
    01CB 8589      LDD	R24,Y+9
    01CC 859A      LDD	R25,Y+10
    01CD 85AB      LDD	R26,Y+11
    01CE 85BC      LDD	R27,Y+12
    01CF 9508      RET
long_epilog:
    01D0 91B9      LD	R27,Y+
    01D1 91A9      LD	R26,Y+
    01D2 9199      LD	R25,Y+
    01D3 9189      LD	R24,Y+
    01D4 91E9      LD	R30,Y+
    01D5 90B9      LD	R11,Y+
    01D6 90A9      LD	R10,Y+
    01D7 9099      LD	R9,Y+
    01D8 9089      LD	R8,Y+
    01D9 9624      ADIW	R28,4
    01DA 9508      RET
tstzero1:
    01DB 27EE      CLR	R30
    01DC 2BE0      OR	R30,R16
    01DD 2BE1      OR	R30,R17
    01DE 2BE2      OR	R30,R18
    01DF 2BE3      OR	R30,R19
    01E0 9508      RET
tstzero2:
    01E1 27EE      CLR	R30
    01E2 2BE8      OR	R30,R24
    01E3 2BE9      OR	R30,R25
    01E4 2BEA      OR	R30,R26
    01E5 2BEB      OR	R30,R27
    01E6 9508      RET

⌨️ 快捷键说明

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