📄 rd_useled_flash_ctr.lis
字号:
00A4 .dbline 133
00A4 ; else
00A4 ; {
00A4 .dbline 134
00A4 ; LED_PORT &= ~BIT(LED_PORT_START+n);
00A4 10910000 lds R17,L7
00A8 1E5F subi R17,254 ; addi 2
00AA 01E0 ldi R16,1
00AC 00D0 rcall lsl8
00AE 202E mov R2,R16
00B0 2094 com R2
00B2 38B0 in R3,0x8
00B4 3220 and R3,R2
00B6 38B8 out 0x8,R3
00B8 .dbline 135
00B8 ; }
00B8 .dbline 136
00B8 ; break;
00B8 81C0 rjmp L9
00BA L15:
00BA .dbline 138
00BA ; case LED_FLASH_SLOW:
00BA ; if ((SYS_TIMER_MS_ADD_UNTILL_OVF & 0x03ff) > 0x01ff)
00BA 8FEF ldi R24,511
00BC 91E0 ldi R25,1
00BE E0910000 lds R30,_g_wSystemTimer
00C2 F0910100 lds R31,_g_wSystemTimer+1
00C6 F370 andi R31,3
00C8 8E17 cp R24,R30
00CA 9F07 cpc R25,R31
00CC 48F4 brsh L16
00CE X9:
00CE .dbline 139
00CE ; {
00CE .dbline 140
00CE ; LED_PORT |= BIT(LED_PORT_START+n);
00CE 10910000 lds R17,L7
00D2 1E5F subi R17,254 ; addi 2
00D4 01E0 ldi R16,1
00D6 00D0 rcall lsl8
00D8 28B0 in R2,0x8
00DA 202A or R2,R16
00DC 28B8 out 0x8,R2
00DE .dbline 141
00DE ; }
00DE 6EC0 rjmp L9
00E0 L16:
00E0 .dbline 143
00E0 ; else
00E0 ; {
00E0 .dbline 144
00E0 ; LED_PORT &= ~BIT(LED_PORT_START+n);
00E0 10910000 lds R17,L7
00E4 1E5F subi R17,254 ; addi 2
00E6 01E0 ldi R16,1
00E8 00D0 rcall lsl8
00EA 202E mov R2,R16
00EC 2094 com R2
00EE 38B0 in R3,0x8
00F0 3220 and R3,R2
00F2 38B8 out 0x8,R3
00F4 .dbline 145
00F4 ; }
00F4 .dbline 146
00F4 ; break;
00F4 63C0 rjmp L9
00F6 L18:
00F6 .dbline 148
00F6 ; case LED_FLASH:
00F6 ; if ((SYS_TIMER_MS_ADD_UNTILL_OVF & 0x01ff) > 0x00ff)
00F6 8FEF ldi R24,255
00F8 90E0 ldi R25,0
00FA E0910000 lds R30,_g_wSystemTimer
00FE F0910100 lds R31,_g_wSystemTimer+1
0102 F170 andi R31,1
0104 8E17 cp R24,R30
0106 9F07 cpc R25,R31
0108 48F4 brsh L19
010A X10:
010A .dbline 149
010A ; {
010A .dbline 150
010A ; LED_PORT |= BIT(LED_PORT_START+n);
010A 10910000 lds R17,L7
010E 1E5F subi R17,254 ; addi 2
0110 01E0 ldi R16,1
0112 00D0 rcall lsl8
0114 28B0 in R2,0x8
0116 202A or R2,R16
0118 28B8 out 0x8,R2
011A .dbline 151
011A ; }
011A 50C0 rjmp L9
011C L19:
011C .dbline 153
011C ; else
011C ; {
011C .dbline 154
011C ; LED_PORT &= ~BIT(LED_PORT_START+n);
011C 10910000 lds R17,L7
0120 1E5F subi R17,254 ; addi 2
0122 01E0 ldi R16,1
0124 00D0 rcall lsl8
0126 202E mov R2,R16
0128 2094 com R2
012A 38B0 in R3,0x8
012C 3220 and R3,R2
012E 38B8 out 0x8,R3
0130 .dbline 155
0130 ; }
0130 .dbline 156
0130 ; break;
0130 45C0 rjmp L9
0132 L21:
0132 .dbline 158
0132 ; case LED_FLASH_FAST:
0132 ; if ((SYS_TIMER_MS_ADD_UNTILL_OVF & 0x00ff) > 0x007f)
0132 8FE7 ldi R24,127
0134 90E0 ldi R25,0
0136 E0910000 lds R30,_g_wSystemTimer
013A F0910100 lds R31,_g_wSystemTimer+1
013E F070 andi R31,0
0140 8E17 cp R24,R30
0142 9F07 cpc R25,R31
0144 48F4 brsh L22
0146 X11:
0146 .dbline 159
0146 ; {
0146 .dbline 160
0146 ; LED_PORT |= BIT(LED_PORT_START+n);
0146 10910000 lds R17,L7
014A 1E5F subi R17,254 ; addi 2
014C 01E0 ldi R16,1
014E 00D0 rcall lsl8
0150 28B0 in R2,0x8
0152 202A or R2,R16
0154 28B8 out 0x8,R2
0156 .dbline 161
0156 ; }
0156 32C0 rjmp L9
0158 L22:
0158 .dbline 163
0158 ; else
0158 ; {
0158 .dbline 164
0158 ; LED_PORT &= ~BIT(LED_PORT_START+n);
0158 10910000 lds R17,L7
015C 1E5F subi R17,254 ; addi 2
015E 01E0 ldi R16,1
0160 00D0 rcall lsl8
0162 202E mov R2,R16
0164 2094 com R2
0166 38B0 in R3,0x8
0168 3220 and R3,R2
016A 38B8 out 0x8,R3
016C .dbline 165
016C ; }
016C .dbline 166
016C ; break;
016C 27C0 rjmp L9
016E L24:
016E .dbline 168
016E ; case LED_FLASH_VERY_FAST:
016E ; if ((SYS_TIMER_MS_ADD_UNTILL_OVF & 0x003f) > 0x001f)
016E 8FE1 ldi R24,31
0170 90E0 ldi R25,0
0172 E0910000 lds R30,_g_wSystemTimer
0176 F0910100 lds R31,_g_wSystemTimer+1
017A EF73 andi R30,63
017C F070 andi R31,0
017E 8E17 cp R24,R30
0180 9F07 cpc R25,R31
0182 48F4 brsh L25
0184 X12:
0184 .dbline 169
0184 ; {
0184 .dbline 170
0184 ; LED_PORT |= BIT(LED_PORT_START+n);
0184 10910000 lds R17,L7
0188 1E5F subi R17,254 ; addi 2
018A 01E0 ldi R16,1
018C 00D0 rcall lsl8
018E 28B0 in R2,0x8
0190 202A or R2,R16
0192 28B8 out 0x8,R2
0194 .dbline 171
0194 ; }
0194 13C0 rjmp L9
0196 L25:
0196 .dbline 173
0196 ; else
0196 ; {
0196 .dbline 174
0196 ; LED_PORT &= ~BIT(LED_PORT_START+n);
0196 10910000 lds R17,L7
019A 1E5F subi R17,254 ; addi 2
019C 01E0 ldi R16,1
019E 00D0 rcall lsl8
01A0 202E mov R2,R16
01A2 2094 com R2
01A4 38B0 in R3,0x8
01A6 3220 and R3,R2
01A8 38B8 out 0x8,R3
01AA .dbline 175
01AA ; }
01AA .dbline 176
01AA ; break;
01AA 08C0 rjmp L9
01AC L27:
01AC L8:
01AC .dbline 182
01AC ; case LED_OFF:
01AC ; default:
01AC ; #ifdef _LED_FLASH_CTR_ANODE
01AC ; LED_PORT &= ~BIT(LED_PORT_START+n);
01AC ; #else
01AC ; LED_PORT |= BIT(LED_PORT_START+n);
01AC 10910000 lds R17,L7
01B0 1E5F subi R17,254 ; addi 2
01B2 01E0 ldi R16,1
01B4 00D0 rcall lsl8
01B6 28B0 in R2,0x8
01B8 202A or R2,R16
01BA 28B8 out 0x8,R2
01BC .dbline 184
01BC ; #endif
01BC ; break;
01BC L9:
01BC .dbline 187
01BC ; }
01BC ;
01BC ; n++;
01BC 80910000 lds R24,L7
01C0 8F5F subi R24,255 ; addi 1
01C2 80930000 sts L7,R24
01C6 .dbline 188
01C6 ; if (n == LED_FCTR_LED_COUNT)
01C6 8230 cpi R24,2
01C8 29F4 brne L28
01CA X13:
01CA .dbline 189
01CA ; {
01CA .dbline 190
01CA ; n = 0;
01CA 2224 clr R2
01CC 20920000 sts L7,R2
01D0 .dbline 191
01D0 ; return FALSE;
01D0 0027 clr R16
01D2 01C0 rjmp L6
01D4 L28:
01D4 .dbline 194
01D4 ; }
01D4 ;
01D4 ; return TRUE;
01D4 01E0 ldi R16,1
01D6 .dbline -2
01D6 L6:
01D6 .dbline 0 ; func end
01D6 4991 ld R20,y+
01D8 0895 ret
01DA .dbend
.area bss(ram, con, rel)
0000 .dbfile E:\单片机\ROOBCO~1\全向定位系统\坐标转换模块\相对定位模块应用版\Relative_Locate_Module\RD_UseLED_Flash_CTR.c
0000 _g_cLEDs::
0000 .blkb 2
0002 .dbsym e g_cLEDs _g_cLEDs A[2:2]c
0002 ; }
0002 ;
0002 ;
0002 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -