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

📄 step 080314.lst

📁 微型电机的驱动
💻 LST
📖 第 1 页 / 共 2 页
字号:
文件:STEP 080314.c 盛群编译器版本 2.86 页次1



;  16: void isr_8(){} // timer/event 0
  16  0000              __acsr EQU [023H]
  16  0000              __adcr EQU [022H]
  16  0000              __adrh EQU [021H]
  16  0000              __adrl EQU [020H]
  16  0000              __pwm EQU [01aH]
  16  0000              __pdc EQU [019H]
  16  0000              __pd EQU [018H]
  16  0000              __pbc EQU [015H]
  16  0000              __pb EQU [014H]
  16  0000              __pac EQU [013H]
  16  0000              __pa EQU [012H]
  16  0000              __tmrc EQU [0eH]
  16  0000              __tmr EQU [0dH]
  16  0000              __intc EQU [0bH]
  16  0000              __status EQU [0aH]
  16  0000              __tblh EQU [08H]
  16  0000              __tblp EQU [07H]
  16  0000              __pcl EQU [06H]
  16  0000              __acc EQU [05H]
  16  0000              __mp1 EQU [03H]
  16  0000              __iar1 EQU [02H]
  16  0000              __mp0 EQU [01H]
  16  0000              __iar0 EQU [00H]
  16  0000              @@isr_8 .SECTION AT 08H 'CODE'
  16  0000  2800     R  JMP _isr_8
  16  0000              @isr_8 .SECTION 'CODE'
  16  0000              _isr_8 PROC
  16  0000  0080     E  MOV VA,A
  16  0001  070A        MOV A,[0AH]
  16  0002  0080     E  MOV VS,A
  16  0003              L1:
  16  0003  0700     E  MOV A,VS
  16  0004  008A        MOV [0AH],A
  16  0005  0700     E  MOV A,VA
  16  0006  0004        RETI
  16  0007              _isr_8 ENDP
  16  0000              @isr_8 .SECTION 'DATA'

;  18: void isr_14(){_nop();
  18  0000              @@isr_14 .SECTION AT 014H 'CODE'
  18  0000  2800     R  JMP _isr_14
  18  0000              @isr_14 .SECTION 'CODE'
  18  0000              _isr_14 PROC
  18  0000  0080     E  MOV VA,A
  18  0001  070A        MOV A,[0AH]
  18  0002  0080     E  MOV VS,A
  18  0003  0000        NOP

;  19:               _nop();
  19  0004  0000        NOP

;  20:               _nop();} 
  20  0005  0000        NOP
  20  0006              L2:
  20  0006  0700     E  MOV A,VS
  20  0007  008A        MOV [0AH],A
文件:STEP 080314.c 盛群编译器版本 2.86 页次2 

文件:STEP 080314.C 盛群编译器版本 2.86 页次2

  20  0008  0700     E  MOV A,VA
  20  0009  0004        RETI
  20  000A              _isr_14 ENDP
  20  0000              @isr_14 .SECTION 'DATA'

;  23: {
  23  0000              @@isr_4 .SECTION AT 04H 'CODE'
  23  0000  2800     R  JMP _isr_4
  23  0000              @isr_4 .SECTION 'CODE'
  23  0000              _isr_4 PROC
  23  0000  0080     E  MOV VA,A
  23  0001  070A        MOV A,[0AH]
  23  0002  0080     E  MOV VS,A
  23  0003              L3:
  23  0003  0700     E  MOV A,VS
  23  0004  008A        MOV [0AH],A
  23  0005  0700     E  MOV A,VA
  23  0006  0004        RETI
  23  0007              _isr_4 ENDP
  23  0000              @isr_4 .SECTION 'DATA'

;  27: {
  27  0000              @io_init .SECTION 'CODE'
  27  0000              PUBLIC _io_init
  27  0000              _io_init PROC

;  28:  _pac=0x00;  // "1"=input
  28  0000  1F13        CLR __pac

;  29:  _pa=0x00;
  29  0001  1F12        CLR __pa

;  30:  _pbc=0xff;
  30  0002  1F95        SET __pbc

;  31:  _pb=0x00;
  31  0003  1F14        CLR __pb
  31  0004              L4:
  31  0004  0003        RET
  31  0005              _io_init ENDP

;  35: { unsigned int i;
  35  0000              @wait .SECTION 'CODE'
  35  0000              PUBLIC _wait
  35  0000              _wait PROC

;  34: void wait(unsigned int t)
  34  0000              PUBLIC wait0
  34  0000  00          LOCAL wait0 DB ? ; t

;  36:   for(i=0;i<t;i++)
  36  0000  1F00     R  CLR CR1
  36  0001  2800     R  JMP L9
  36  0002              L6:

;  38:   _delay(5000);
  38  0002  0F04        MOV A,04H
  38  0003  0080     E  MOV RH,A
文件:STEP 080314.c 盛群编译器版本 2.86 页次3 

  38  0004  0FDE        MOV A,0deH
  38  0005  2000     E  CALL __DELAYY3
  38  0006              L7:

;  36:   for(i=0;i<t;i++)
文件:STEP 080314.C 盛群编译器版本 2.86 页次3

  36  0006  1480     R  INC CR1
  36  0007              L9:
  36  0007  0700     R  MOV A,CR1
  36  0008  0200     R  SUB A,wait0
  36  0009  380A        SNZ [0ah].0
  36  000A  2800     R  JMP L6
  36  000B              L5:
  36  000B  0003        RET

;  35: { unsigned int i;
  35  0001  00          LOCAL CR1 DB ? ; i
  35  000C              _wait ENDP

;  45: {
  45  0000              @left_1 .SECTION 'CODE'
  45  0000              PUBLIC _left_1
  45  0000              _left_1 PROC

;  44: char left_1(char left)
  44  0000              PUBLIC left_10
  44  0000  00          LOCAL left_10 DB ? ; left

;  48:   mid=(left<<1);
  48  0000  340A        CLR [0AH].0
  48  0001  1A00     R  RLCA left_10
  48  0002  0080     R  MOV CR3,A

;  49:    _acc=mid;	
  49  0003  0700     R  MOV A,CR3
  49  0004  0085        MOV __acc,A

;  50:    result=_acc;
  50  0005  0705        MOV A,__acc
  50  0006  0080     R  MOV CR2,A

;  51:   _pa=result;
  51  0007  0700     R  MOV A,CR2
  51  0008  0092        MOV __pa,A

;  52:   wait(1);
  52  0009  0F01        MOV A,01h
  52  000A  0080     R  MOV wait0,A
  52  000B  2000     R  CALL _wait

;  53:   _pa=0x00;
  53  000C  1F12        CLR __pa

;  54:   wait(1);
  54  000D  0F01        MOV A,01h
  54  000E  0080     R  MOV wait0,A
  54  000F  2000     R  CALL _wait

;  55:  return result;
文件:STEP 080314.c 盛群编译器版本 2.86 页次4 

  55  0010  0700     R  MOV A,CR2
  55  0011              L10:
  55  0011  0003        RET

;  46:   char result;
  46  0001  00          LOCAL CR2 DB ? ; result

;  47:   char mid;
  47  0002  00          LOCAL CR3 DB ? ; mid
  47  0012              _left_1 ENDP

;  59: {
  59  0000              @right_1 .SECTION 'CODE'
  59  0000              PUBLIC _right_1
文件:STEP 080314.C 盛群编译器版本 2.86 页次4

  59  0000              _right_1 PROC

;  58: char right_1(char right)
  58  0000              PUBLIC right_10
  58  0000  00          LOCAL right_10 DB ? ; right

;  61:   char mid=right;
  61  0000  0700     R  MOV A,right_10
  61  0001  0080     R  MOV CR5,A

;  62:    _acc=mid;	
  62  0002  0700     R  MOV A,CR5
  62  0003  0085        MOV __acc,A

;  63:    result=_acc;
  63  0004  0705        MOV A,__acc
  63  0005  0080     R  MOV CR4,A

;  64:   _pa=result;
  64  0006  0700     R  MOV A,CR4
  64  0007  0092        MOV __pa,A

;  65:   result=(right>>1);
  65  0008  1A00     R  RLCA right_10
  65  0009  1B00     R  RRCA right_10
  65  000A  0080     R  MOV CR4,A

;  66:   result=(result&0x07f);
  66  000B  3400     R  CLR CR4.7

;  67:  _acc=result;
  67  000C  0700     R  MOV A,CR4
  67  000D  0085        MOV __acc,A

;  68:   wait(1);
  68  000E  0F01        MOV A,01h
  68  000F  0080     R  MOV wait0,A
  68  0010  2000     R  CALL _wait

;  69:   _pa=0x00;
  69  0011  1F12        CLR __pa

;  70:  wait(1);
  70  0012  0F01        MOV A,01h
文件:STEP 080314.c 盛群编译器版本 2.86 页次5 

  70  0013  0080     R  MOV wait0,A
  70  0014  2000     R  CALL _wait

;  72:  return result;
  72  0015  0700     R  MOV A,CR4
  72  0016              L11:
  72  0016  0003        RET

;  60:   char result;
  60  0001  00          LOCAL CR4 DB ? ; result

;  61:   char mid=right;
  61  0002  00          LOCAL CR5 DB ? ; mid
  61  0017              _right_1 ENDP

;  76: {

⌨️ 快捷键说明

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