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

📄 hd_support.lis

📁 一个直流电机的闭环控制源代码程序
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 00EA 0990              ld R0,y+
 00EC 0FBE              out 0x3f,R0
 00EE B991              ld R27,y+
 00F0 A991              ld R26,y+
 00F2 9991              ld R25,y+
 00F4 8991              ld R24,y+
 00F6 3991              ld R19,y+
 00F8 2991              ld R18,y+
 00FA 1991              ld R17,y+
 00FC 0991              ld R16,y+
 00FE 5990              ld R5,y+
 0100 4990              ld R4,y+
 0102 3990              ld R3,y+
 0104 2990              ld R2,y+
 0106 1990              ld R1,y+
 0108 0990              ld R0,y+
 010A 1895              reti
 010C                   .dbend
 010C                   .dbfunc e INT1_ISR _INT1_ISR fV
                        .even
 010C           _INT1_ISR::
 010C 0A92              st -y,R0
 010E 1A92              st -y,R1
 0110 2A92              st -y,R2
 0112 3A92              st -y,R3
 0114 4A92              st -y,R4
 0116 5A92              st -y,R5
 0118 0A93              st -y,R16
 011A 1A93              st -y,R17
 011C 2A93              st -y,R18
 011E 3A93              st -y,R19
 0120 8A93              st -y,R24
 0122 9A93              st -y,R25
 0124 AA93              st -y,R26
 0126 BA93              st -y,R27
 0128 0FB6              in R0,0x3f
 012A 0A92              st -y,R0
 012C                   .dbline -1
 012C                   .dbline 147
 012C           ; }
 012C           ; 
 012C           ; /***********************************************************
 012C           ; *   函数说明:外中断1中断处理函数                          *
 012C           ; *   输入:    无                                           *
 012C           ; *   输出:    无                                           *
 012C           ; *   调用函数:INSERT_INT0_ISR_CODE                         *
 012C           ; ***********************************************************/
 012C           ; void INT1_ISR(void)
 012C           ; {
 012C                   .dbline 148
 012C           ;     INSERT_INT1_ISR_CODE
 012C                   .dbline 148
 012C 80B3              in R24,0x10
 012E 8695              lsr R24
 0130 8695              lsr R24
 0132 8170              andi R24,1
 0134 90B3              in R25,0x10
 0136 9695              lsr R25
 0138 9695              lsr R25
 013A 9695              lsr R25
 013C 9170              andi R25,1
 013E 9817              cp R25,R24
 0140 C9F4              brne L9
 0142           X2:
 0142 81E0              ldi R24,1
 0144 90E0              ldi R25,0
 0146 A0E0              ldi R26,0
 0148 B0E0              ldi R27,0
 014A 40900200          lds R4,_g_dNowMotorPosition+2
 014E 50900300          lds R5,_g_dNowMotorPosition+2+1
 0152 20900000          lds R2,_g_dNowMotorPosition
 0156 30900100          lds R3,_g_dNowMotorPosition+1
 015A 280E              add R2,R24
 015C 391E              adc R3,R25
 015E 4A1E              adc R4,R26
 0160 5B1E              adc R5,R27
 0162 30920100          sts _g_dNowMotorPosition+1,R3
 0166 20920000          sts _g_dNowMotorPosition,R2
 016A 50920300          sts _g_dNowMotorPosition+2+1,R5
 016E 40920200          sts _g_dNowMotorPosition+2,R4
 0172 18C0              rjmp L10
 0174           L9:
 0174 81E0              ldi R24,1
 0176 90E0              ldi R25,0
 0178 A0E0              ldi R26,0
 017A B0E0              ldi R27,0
 017C 40900200          lds R4,_g_dNowMotorPosition+2
 0180 50900300          lds R5,_g_dNowMotorPosition+2+1
 0184 20900000          lds R2,_g_dNowMotorPosition
 0188 30900100          lds R3,_g_dNowMotorPosition+1
 018C 281A              sub R2,R24
 018E 390A              sbc R3,R25
 0190 4A0A              sbc R4,R26
 0192 5B0A              sbc R5,R27
 0194 30920100          sts _g_dNowMotorPosition+1,R3
 0198 20920000          sts _g_dNowMotorPosition,R2
 019C 50920300          sts _g_dNowMotorPosition+2+1,R5
 01A0 40920200          sts _g_dNowMotorPosition+2,R4
 01A4           L10:
 01A4                   .dbline 148
 01A4 85B7              in R24,0x35
 01A6 8C70              andi R24,12
 01A8 8C30              cpi R24,12
 01AA 39F4              brne L11
 01AC           X3:
 01AC                   .dbline 148
 01AC                   .dbline 148
 01AC 85B7              in R24,0x35
 01AE 837F              andi R24,243
 01B0 85BF              out 0x35,R24
 01B2                   .dbline 148
 01B2 85B7              in R24,0x35
 01B4 8860              ori R24,8
 01B6 85BF              out 0x35,R24
 01B8                   .dbline 148
 01B8 06C0              rjmp L12
 01BA           L11:
 01BA                   .dbline 148
 01BA                   .dbline 148
 01BA 85B7              in R24,0x35
 01BC 837F              andi R24,243
 01BE 85BF              out 0x35,R24
 01C0                   .dbline 148
 01C0 85B7              in R24,0x35
 01C2 8C60              ori R24,12
 01C4 85BF              out 0x35,R24
 01C6                   .dbline 148
 01C6           L12:
 01C6                   .dbline 148
 01C6                   .dbline -2
 01C6           L8:
 01C6                   .dbline 0 ; func end
 01C6 0990              ld R0,y+
 01C8 0FBE              out 0x3f,R0
 01CA B991              ld R27,y+
 01CC A991              ld R26,y+
 01CE 9991              ld R25,y+
 01D0 8991              ld R24,y+
 01D2 3991              ld R19,y+
 01D4 2991              ld R18,y+
 01D6 1991              ld R17,y+
 01D8 0991              ld R16,y+
 01DA 5990              ld R5,y+
 01DC 4990              ld R4,y+
 01DE 3990              ld R3,y+
 01E0 2990              ld R2,y+
 01E2 1990              ld R1,y+
 01E4 0990              ld R0,y+
 01E6 1895              reti
 01E8                   .dbend
 01E8                   .dbfunc s Port_INIT _Port_INIT fV
                        .even
 01E8           _Port_INIT:
 01E8                   .dbline -1
 01E8                   .dbline 158
 01E8           ; }
 01E8           ; 
 01E8           ; /***********************************************************
 01E8           ; *   函数说明:系统端口初始化函数                           *
 01E8           ; *   输入:    无                                           *
 01E8           ; *   输出:    无                                           *
 01E8           ; *   调用函数:无                                           *
 01E8           ; ***********************************************************/
 01E8           ; static void Port_INIT(void)
 01E8           ; {
 01E8                   .dbline 160
 01E8           ;     //LED
 01E8           ;     DDR_PC0 = PDIR_OUT;_PC0 = LOW;
 01E8 84B3              in R24,0x14
 01EA 8160              ori R24,1
 01EC 84BB              out 0x14,R24
 01EE                   .dbline 160
 01EE 85B3              in R24,0x15
 01F0 8E7F              andi R24,254
 01F2 85BB              out 0x15,R24
 01F4                   .dbline 163
 01F4           ;     
 01F4           ;     //SP027
 01F4           ;     DDR_PC5 = PDIR_OUT;_PC5 = HIGH;
 01F4 84B3              in R24,0x14
 01F6 8062              ori R24,32
 01F8 84BB              out 0x14,R24
 01FA                   .dbline 163
 01FA 85B3              in R24,0x15
 01FC 8062              ori R24,32
 01FE 85BB              out 0x15,R24
 0200                   .dbline 164
 0200           ;     DDR_PC4 = PDIR_OUT;_PC4 = HIGH;
 0200 84B3              in R24,0x14
 0202 8061              ori R24,16
 0204 84BB              out 0x14,R24
 0206                   .dbline 164
 0206 85B3              in R24,0x15
 0208 8061              ori R24,16
 020A 85BB              out 0x15,R24
 020C                   .dbline 167
 020C           ;     
 020C           ;     //外中断
 020C           ;     DDR_PD2 = PDIR_IN; _PD2 = HIGH;
 020C 81B3              in R24,0x11
 020E 8B7F              andi R24,251
 0210 81BB              out 0x11,R24
 0212                   .dbline 167
 0212 82B3              in R24,0x12
 0214 8460              ori R24,4
 0216 82BB              out 0x12,R24
 0218                   .dbline 168
 0218           ;     DDR_PD3 = PDIR_IN; _PD3 = HIGH;
 0218 81B3              in R24,0x11
 021A 877F              andi R24,247
 021C 81BB              out 0x11,R24
 021E                   .dbline 168
 021E 82B3              in R24,0x12
 0220 8860              ori R24,8
 0222 82BB              out 0x12,R24
 0224                   .dbline 171
 0224           ;     
 0224           ;     //SPI
 0224           ;     DDR_PB2 = PDIR_IN; _PB2 = LOW;
 0224 87B3              in R24,0x17
 0226 8B7F              andi R24,251
 0228 87BB              out 0x17,R24
 022A                   .dbline 171
 022A 88B3              in R24,0x18
 022C 8B7F              andi R24,251
 022E 88BB              out 0x18,R24
 0230                   .dbline 172
 0230           ;     DDR_PB3 = PDIR_IN; _PB3 = LOW;
 0230 87B3              in R24,0x17
 0232 877F              andi R24,247
 0234 87BB              out 0x17,R24
 0236                   .dbline 172
 0236 88B3              in R24,0x18
 0238 877F              andi R24,247
 023A 88BB              out 0x18,R24
 023C                   .dbline 173
 023C           ;     DDR_PB4 = PDIR_IN; _PB4 = LOW;
 023C 87B3              in R24,0x17
 023E 8F7E              andi R24,239
 0240 87BB              out 0x17,R24
 0242                   .dbline 173
 0242 88B3              in R24,0x18
 0244 8F7E              andi R24,239
 0246 88BB              out 0x18,R24
 0248                   .dbline 174
 0248           ;     DDR_PB5 = PDIR_IN; _PB5 = LOW;
 0248 87B3              in R24,0x17
 024A 8F7D              andi R24,223
 024C 87BB              out 0x17,R24
 024E                   .dbline 174
 024E 88B3              in R24,0x18
 0250 8F7D              andi R24,223
 0252 88BB              out 0x18,R24
 0254                   .dbline 177
 0254           ;     
 0254           ;     //串口
 0254           ;     DDR_PD0 = PDIR_IN; _PD0 = HIGH;
 0254 81B3              in R24,0x11
 0256 8E7F              andi R24,254
 0258 81BB              out 0x11,R24
 025A                   .dbline 177
 025A 82B3              in R24,0x12
 025C 8160              ori R24,1
 025E 82BB              out 0x12,R24
 0260                   .dbline 180
 0260           ;     
 0260           ;     //PWM输出
 0260           ;     DDR_PB1 = PDIR_OUT;
 0260 87B3              in R24,0x17
 0262 8260              ori R24,2
 0264 87BB              out 0x17,R24
 0266                   .dbline 182
 0266           ;     //电机控制
 0266           ;     DDR_PD6 = PDIR_OUT; _PD6 = HIGH;
 0266 81B3              in R24,0x11
 0268 8064              ori R24,64
 026A 81BB              out 0x11,R24
 026C                   .dbline 182
 026C 82B3              in R24,0x12
 026E 8064              ori R24,64
 0270 82BB              out 0x12,R24
 0272                   .dbline 183
 0272           ;     DDR_PD7 = PDIR_OUT; _PD7 = HIGH;
 0272 81B3              in R24,0x11
 0274 8068              ori R24,128
 0276 81BB              out 0x11,R24
 0278                   .dbline 183
 0278 82B3              in R24,0x12
 027A 8068              ori R24,128
 027C 82BB              out 0x12,R24
 027E                   .dbline 186
 027E           ;     
 027E           ;     //读写控制
 027E           ;     DDR_PD4 = PDIR_IN;  _PD4 = HIGH;
 027E 81B3              in R24,0x11
 0280 8F7E              andi R24,239
 0282 81BB              out 0x11,R24
 0284                   .dbline 186
 0284 82B3              in R24,0x12
 0286 8061              ori R24,16
 0288 82BB              out 0x12,R24
 028A                   .dbline -2
 028A           L13:
 028A                   .dbline 0 ; func end
 028A 0895              ret
 028C                   .dbend
 028C                   .dbfunc s Timer1_INIT _Timer1_INIT fV
                        .even
 028C           _Timer1_INIT:
 028C                   .dbline -1
 028C                   .dbline 196
 028C           ; }
 028C           ; 
 028C           ; /***********************************************************
 028C           ; *   函数声明:定时器1初始化函数                            *
 028C           ; *   输入:    无                                           *
 028C           ; *   输出:    无                                           *
 028C           ; *   调用函数:无                                           *
 028C           ; ***********************************************************/
 028C           ; static void Timer1_INIT(void)
 028C           ; {

⌨️ 快捷键说明

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