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

📄 diy0206_4.lis

📁 双龙的积木式智能机器人C源程序
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 0076           ;     0x46,0x25,0x36,0x18,0x2a,0x28,0x49,0x49,0x49,0x20,0x25,0x4a,
 0076 8CE3              ldi R24,60
 0078 8BBB              out 0x1b,R24
 007A                   .dbline -2
 007A                   .dbline 137
 007A           ;     0x39,0x18,0x26,0x25,0x45,0x26,0x46,0x25,0x46,0x2a,0x29,0x49,
 007A           L14:
 007A                   .dbline 0 ; func end
 007A 0895              ret
 007C                   .dbend
 007C                   .dbfunc e forward _forward fV
                        .even
 007C           _forward::
 007C                   .dbline -1
 007C                   .dbline 140
 007C           ;     0x49,0x49,0x49,0x4a,0x39,0x18,0x26,0x25,0x45,0x48,0x26,0x25,
 007C           ;     0x23,0x22,0x41,0x40,0x22,0x23,0x45,0x45,0x45,0x45,0x40,0x25,
 007C           ;       0x26,0x48,0x48,0x48,
 007C                   .dbline 141
 007C           ;       0x00,0x00
 007C 80EA              ldi R24,160
 007E 82BB              out 0x12,R24
 0080                   .dbline 142
 0080           ; };
 0080 83EC              ldi R24,195
 0082 8BBB              out 0x1b,R24
 0084                   .dbline -2
 0084                   .dbline 143
 0084           ; const unsigned char music_22[]=
 0084           L15:
 0084                   .dbline 0 ; func end
 0084 0895              ret
 0086                   .dbend
 0086                   .dbfunc e stop _stop fV
                        .even
 0086           _stop::
 0086                   .dbline -1
 0086                   .dbline 146
 0086           ; {//走进新时代
 0086           ; 0x68,0x26,0x25,0x23,0x22,0x13,0x12,0x41,0x41,0x41,0x23,0x25,
 0086           ; 0x28,0x48,0x28,0x29,0x2a,0x29,0x26,0x45,0x45,0x45,0x45,0x68,
 0086                   .dbline 147
 0086           ; 0x29,0x29,0x28,0x26,0x25,0x46,0x46,0x46,0x25,0x26,
 0086 8FEF              ldi R24,255
 0088 82BB              out 0x12,R24
 008A                   .dbline 148
 008A           ; 0x29,0x43,0x25,0x22,0x23,0x22,0x21,0x42,0x42,0x42,0x42,0x63,
 008A 8BBB              out 0x1b,R24
 008C                   .dbline -2
 008C                   .dbline 149
 008C           ; 0x25,0x26,0x25,0x26,0x25,0x23,0x22,0x13,0x12,0x41,0x23,0x25,
 008C           L16:
 008C                   .dbline 0 ; func end
 008C 0895              ret
 008E                   .dbend
 008E                   .dbfunc e sw_touch _sw_touch fV
 008E           ;          sw_in -> R20
 008E           ;      remote_in -> R22
                        .even
 008E           _sw_touch::
 008E 00D0              rcall push_gset2
 0090                   .dbline -1
 0090                   .dbline 165
 0090           ; 0x28,0x28,0x28,0x28,0x29,0x2a,0x2a,0x29,0x46,0x46,0x46,0x46,
 0090           ; 0x46,0x29,0x2a,0x28,0x28,0x26,0x25,0x26,0x26,0x25,0x43,0x43,
 0090           ; 0x22,0x42,0x26,0x25,0x23,0x22,0x13,0x12,0x41,0x41,0x41,0x41,
 0090           ; 0x00,0x00
 0090           ; };
 0090           ; const unsigned char music_33[]=
 0090           ; {
 0090           ; //星语心愿
 0090           ; 0x36,0x18,0x27,0x26,0x25,0x26,0x43,0x43,0x43,0x26,0x25,0x36,0x18,0x27,0x18,0x17,
 0090           ; 0x26,0x27,0x48,0x48,0x48,0x28,0x29,0x2a,0x2a,0x2a,0x2a,0x49,0x49,0x28,0x27,0x26,
 0090           ; 0x27,0x45,0x45,0x46,0x48,0x47,0x26,0x25,0x46,0x46,0x46,0x40,0x40,0x40,0x40,0x40,
 0090           ; 0x36,0x18,0x27,0x26,0x25,0x26,0x26,0x26,0x46,0x46,0x26,0x25,0x36,0x18,0x27,0x18,
 0090           ; 0x17,0x26,0x27,0x48,0x48,0x48,0x28,0x29,0x2a,0x2a,0x2a,0x2a,0x49,0x49,0x28,0x27,
 0090           ; 0x26,0x27,0x45,0x45,0x46,0x26,0x28,0x47,0x45,0x40,0x26,0x28,0x47,0x45,0x46,0x46,
 0090           ; 0x46,0x46,0x46,0x46,0x46,0x23,0x25,0x46,0x4a,0x39,0x18,0x27,0x28,0x48,0x48,0x48,
 0090           ; 0x28,0x27,0x36,0x16,0x45,0x47,0x46,0x46,0x46,0x23,0x25,0x46,0x4a,0x39,0x18,0x27,
 0090                   .dbline 167
 0090           ; 0x28,0x48,0x48,0x28,0x27,0x36,0x16,0x45,0x27,0x26,0x46,0x46,0x46,0x46,0x46,0x46,
 0090           ; 0x00,0x00
 0090 43B3              in R20,0x13
 0092 4071              andi R20,16
 0094                   .dbline 168
 0094           ; };
 0094 C9F4              brne L18
 0096                   .dbline 169
 0096           ; const unsigned char music_44[]=
 0096                   .dbline 170
 0096           ; {
 0096 EDDF              rcall _backward
 0098                   .dbline 171
 0098           ; //上海滩
 0098 0AEF              ldi R16,250
 009A 10E0              ldi R17,0
 009C C8DF              rcall _delay_ms
 009E                   .dbline 173
 009E           ; 0x2a,0x2c,0x4d,0x4d,0x4d,0x2a,0x2c,0x49,0x49,0x49,0x2a,0x2c,
 009E           ; 0x2d,0x4f,0x2d,0x4c,0x1d,0x18,0x2a,0x49,0x49,0x49,0x29,0x2a,
 009E 80911900          lds R24,_work_status
 00A2 8037              cpi R24,112
 00A4 69F4              brne L20
 00A6                   .dbline 174
 00A6           ; 0x4c,0x4c,0x4c,0x29,0x2a,0x29,0x26,0x4d,0x4d,0x4d,0x26,0x28,
 00A6                   .dbline 175
 00A6           ; 0x39,0x1a,0x29,0x27,0x26,0x28,0x45,0x45,0x45,0x2a,0x2c,0x4d,
 00A6 EFDF              rcall _stop
 00A8 0AC0              rjmp L23
 00AA           L22:
 00AA                   .dbline 177
 00AA                   .dbline 178
 00AA 85E5              ldi R24,85
 00AC 8BBB              out 0x1b,R24
 00AE                   .dbline 179
 00AE 0AEF              ldi R16,250
 00B0 10E0              ldi R17,0
 00B2 BDDF              rcall _delay_ms
 00B4                   .dbline 180
 00B4 8AEA              ldi R24,170
 00B6 8BBB              out 0x1b,R24
 00B8                   .dbline 181
 00B8 0AEF              ldi R16,250
 00BA 10E0              ldi R17,0
 00BC B8DF              rcall _delay_ms
 00BE                   .dbline 182
 00BE           L23:
 00BE                   .dbline 176
 00BE           ; 0x4d,0x4d,0x2a,0x2c,0x49,0x49,0x49,0x2a,0x2c,0x2d,0x4f,0x2d,
 00BE F5CF              rjmp L22
 00C0           X1:
 00C0                   .dbline 183
 00C0           ; 0x4c,0x1d,0x18,0x2a,0x49,0x49,0x49,0x29,0x2a,0x4c,0x4c,0x4c,
 00C0           ; 0x29,0x2a,0x29,0x26,0x4d,0x4d,0x4d,0x26,0x28,0x39,0x1a,0x29,
 00C0           ; 0x27,0x26,0x25,0x48,0x48,0x20,0x2f,0x2f,0x2d,0x4f,0x4f,0x20,
 00C0           ; 0x2d,0x2f,0x2d,0x4c,0x4c,0x4c,0x2c,0x2a,0x6d,0x2c,0x48,0x19,
 00C0           ; 0x18,0x28,0x4a,0x4a,0x20,0x2a,0x2a,0x29,0x4a,0x4a,0x20,0x2f,
 00C0           ; 0x2f,0x2e,0x4d,0x4d,0x4d,0x2a,0x2a,0x69,0x2a,0x2f,0x2e,0x2d,
 00C0           ; 0x2a,0x4c,0x4c,0x4c,
 00C0           L20:
 00C0                   .dbline 185
 00C0           ; 0x00,0x00
 00C0           ; };
 00C0 C9DF              rcall _turn_left
 00C2                   .dbline 186
 00C2           ; const unsigned char sound_none[]={0x28,0x27,0x36,0x16,0x45,0x47,0x46,0x46,0x46,0x23,0x25,0x46,0x4a,0x39,0x18,0x27,
 00C2 0AEF              ldi R16,250
 00C4 10E0              ldi R17,0
 00C6 B3DF              rcall _delay_ms
 00C8                   .dbline 187
 00C8           ;                          0x28,0x48,0x48,0x28,0x27,0x36,0x16,0x45,0x27,0x26,0x46,0x46,0x46,0x46,0x46,0x46,0x00,0x00};
 00C8           L18:
 00C8                   .dbline 189
 00C8           ; const unsigned char sound_right[]={0x23,0x25,0x46,0x4a,0x39,0x18,0x27,0x28,0x48,0x48,0x48,
 00C8           ;                          0x28,0x27,0x36,0x16,0x45,0x47,0x46,0x46,0x46,0x00,0x00};
 00C8 46B3              in R20,0x16
 00CA 4B70              andi R20,11
 00CC                   .dbline 190
 00CC           ; const unsigned char sound_back[]={0x2a,0x2c,0x4d,0x4d,0x4d,0x2a,0x2c,0x49,0x49,0x49,0x2a,0x2c,0x2d,0x4f,
 00CC 4930              cpi R20,9
 00CE 41F4              brne L25
 00D0                   .dbline 191
 00D0           ;                          0x2d,0x4c,0x1d,0x18,0x2a,0x49,0x49,0x49,0x00,0x00};
 00D0                   .dbline 192
 00D0           ; const unsigned char sound_stop[]={0x23,0x24,0x25,0x44,0x45,0x24,0x23,0x22,0x42,0x40,0x40,0x23,0x22,0x21,0x41,0x28,
 00D0 D5DF              rcall _forward
 00D2                   .dbline 193
 00D2           ;                          0x48,0x23,0x25,0x45,0x40,0x40,0x00,0x00};
 00D2 0AEF              ldi R16,250
 00D4 10E0              ldi R17,0
 00D6 ABDF              rcall _delay_ms
 00D8                   .dbline 195
 00D8           ; const unsigned char sound_left[]={0x68,0x26,0x25,0x23,0x22,0x13,0x12,0x41,0x41,0x41,0x23,0x25,
 00D8           ;                          0x28,0x48,0x28,0x29,0x2a,0x29,0x26,0x45,0x45,0x45,0x00,0x00};
 00D8 BDDF              rcall _turn_left
 00DA                   .dbline 196
 00DA           ; 
 00DA 0AEF              ldi R16,250
 00DC 10E0              ldi R17,0
 00DE A7DF              rcall _delay_ms
 00E0                   .dbline 197
 00E0           ; //Watchdog initialisation
 00E0           L25:
 00E0                   .dbline 198
 00E0           ; // prescale: 1024K cycles
 00E0 4A30              cpi R20,10
 00E2 41F4              brne L27
 00E4                   .dbline 199
 00E4           ; void watchdog_init(void)
 00E4                   .dbline 200
 00E4           ; {
 00E4 C6DF              rcall _backward
 00E6                   .dbline 201
 00E6           ;  WDR(); //this prevents a timout on enabling
 00E6 0AEF              ldi R16,250
 00E8 10E0              ldi R17,0
 00EA A1DF              rcall _delay_ms
 00EC                   .dbline 203
 00EC           ;  WDTCR = 0x0E; //WATCHDOG ENABLED - dont forget WDR
 00EC           ; }
 00EC B3DF              rcall _turn_left
 00EE                   .dbline 204
 00EE           ; 
 00EE 0AEF              ldi R16,250
 00F0 10E0              ldi R17,0
 00F2 9DDF              rcall _delay_ms
 00F4                   .dbline 205
 00F4           ; //TIMER0 initialisation - prescale:1024
 00F4           L27:
 00F4                   .dbline 206
 00F4           ; // desired value: 25mSec
 00F4 4330              cpi R20,3
 00F6 41F4              brne L29
 00F8                   .dbline 207
 00F8           ; // actual value: 24.960mSec (0.2%)
 00F8                   .dbline 208
 00F8           ; void timer0_init(void)
 00F8 BCDF              rcall _backward
 00FA                   .dbline 209
 00FA           ; {
 00FA 0AEF              ldi R16,250
 00FC 10E0              ldi R17,0
 00FE 97DF              rcall _delay_ms
 0100                   .dbline 211
 0100           ;  TCCR0 = 0x00; //stop timer
 0100           ;  TCNT0 = 0x3D; //set count value
 0100 A9DF              rcall _turn_left
 0102                   .dbline 212
 0102           ;  TCCR0 = 0x05; //start timer
 0102 0AEF              ldi R16,250
 0104 10E0              ldi R17,0
 0106 93DF              rcall _delay_ms
 0108                   .dbline 213
 0108           ; }
 0108           L29:
 0108                   .dbline 214
 0108           ; 
 0108 4230              cpi R20,2
 010A F9F4              brne L31
 010C                   .dbline 215
 010C           ; #pragma interrupt_handler timer0_ovf_isr:iv_TIMER0_OVF
 010C                   .dbline 216
 010C           ; void timer0_ovf_isr(void)
 010C BCDF              rcall _stop
 010E                   .dbline 217
 010E           ; {
 010E 08EE              ldi R16,1000
 0110 13E0              ldi R17,3
 0112 8DDF              rcall _delay_ms
 0114 19C0              rjmp L34
 0116           L33:
 0116                   .dbline 219
 0116           ;  TCNT0 = 0x3D; //reload counter value
 0116           ;  t0_times++;
 0116                   .dbline 220
 0116           ;          remote_in = PINB & 0xF0;
 0116 43B3              in R20,0x13
 0118 4071              andi R20,16
 011A                   .dbline 221
 011A           ;          switch (remote_in)
 011A 09F4              brne L36
 011C                   .dbline 222
 011C           ;                {//检测遥控器是否有键按下
 011C                   .dbline 222
 011C 16C0              rjmp L35
 011E           L36:
 011E                   .dbline 223
 011E           ;           case 0x00:  // none
 011E 85E5              ldi R24,85
 0120 8BBB              out 0x1b,R24
 0122                   .dbline 224
 0122           ;                         rst_time=0;
 0122 0AEF              ldi R16,250
 0124 10E0              ldi R17,0
 0126 83DF              rcall _delay_ms
 0128                   .dbline 225
 0128           ;                   break;
 0128 8AEA              ldi R24,170
 012A 8BBB              out 0x1b,R24
 012C                   .dbline 226
 012C           ;           case 0x20:  // < A >
 012C 0AEF              ldi R16,250
 012E 10E0              ldi R17,0
 0130 7EDF              rcall _delay_ms
 0132                   .dbline 227
 0132           ;                         rst_time=0;
 0132 66B3              in R22,0x16
 0134 607F              andi R22,240
 0136                   .dbline 228
 0136           ;                   break;
 0136 6031              cpi R22,16
 0138 31F0              breq L42
 013A 6032              cpi R22,32
 013C 21F0              breq L42
 013E 6034              cpi R22,64
 0140 11F0              breq L42
 0142 6038              cpi R22,128
 0144 09F4              brne L38
 0146           L42:
 0146                   .dbline 229
 0146           ;           case 0x40:  // < B >
 0146                   .dbline 229
 0146 01C0              rjmp L35
 0148           L38:
 0148                   .dbline 230
 0148           L34:
 0148                   .dbline 218
 0148 E6CF              rjmp L33

⌨️ 快捷键说明

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