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

📄 dvcpu.ls1

📁 一个调整ADC gain offset 的程序
💻 LS1
📖 第 1 页 / 共 4 页
字号:
                     511                             ; SOURCE LINE # 122
0016 A3              512             INC     DPTR
0017 74B2            513             MOV     A,#0B2H
0019 F0              514             MOVX    @DPTR,A
                     515     ; EINT1PEN = 0x00;
                     516                             ; SOURCE LINE # 123
001A E4              517             CLR     A
001B A3              518             INC     DPTR
001C F0              519             MOVX    @DPTR,A
A51 MACRO ASSEMBLER  DVCPU                                                                07/14/2006 09:47:05 PAGE     9

                     520     ; SCON = 0x50;     //serial port work mode 1,enable serial port receive.
                     521                             ; SOURCE LINE # 124
001D 759850          522             MOV     SCON,#050H
                     523     ; ETCTR|= 1<<2;    // TR2 = 1
                     524                             ; SOURCE LINE # 125
0020 7430            525             MOV     A,#030H
0022 4404            526             ORL     A,#04H
0024 900F88          527             MOV     DPTR,#ETCTR
0027 F0              528             MOVX    @DPTR,A
                     529     ; }
                     530                             ; SOURCE LINE # 126
0028 22              531             RET     
                     532     ; END OF initSerialPort
                     533     
                     534     ; 
                     535     ; 
                     536     ; code void initTimer0(void) 
                     537     
----                 538             RSEG  ?PR?initTimer0?DVCPU
0000                 539     initTimer0:
                     540                             ; SOURCE LINE # 129
                     541     ; {  
                     542                             ; SOURCE LINE # 130
                     543     ;  // Set Time Base=2ms 
                     544     ;   TH0=(65536-2000)/256;
                     545                             ; SOURCE LINE # 132
0000 758CF8          546             MOV     TH0,#0F8H
                     547     ;   TL0=(65536-2000)%256;
                     548                             ; SOURCE LINE # 133
0003 758A30          549             MOV     TL0,#030H
                     550     ; }
                     551                             ; SOURCE LINE # 134
0006 22              552             RET     
                     553     ; END OF initTimer0
                     554     
                     555     ; 
                     556     ; code void initIIC(void)
                     557     
----                 558             RSEG  ?PR?initIIC?DVCPU
0000                 559     initIIC:
                     560                             ; SOURCE LINE # 136
                     561     ; {  
                     562                             ; SOURCE LINE # 137
                     563     ;  IICCTR = 0x00;
                     564                             ; SOURCE LINE # 138
0000 E4              565             CLR     A
0001 900F00          566             MOV     DPTR,#IICCTR
0004 F0              567             MOVX    @DPTR,A
                     568     ; }
                     569                             ; SOURCE LINE # 139
0005 22              570             RET     
                     571     ; END OF initIIC
                     572     
                     573     ; 
                     574     ; code void initWatchDog(void)
                     575     
----                 576             RSEG  ?PR?initWatchDog?DVCPU
0000                 577     initWatchDog:
                     578                             ; SOURCE LINE # 141
                     579     ; {   
                     580                             ; SOURCE LINE # 142
                     581     ;   WDT = 0x00; //disable the watchdog 
                     582                             ; SOURCE LINE # 143
0000 E4              583             CLR     A
0001 900F18          584             MOV     DPTR,#WDT
0004 F0              585             MOVX    @DPTR,A
A51 MACRO ASSEMBLER  DVCPU                                                                07/14/2006 09:47:05 PAGE    10

                     586     ; }
                     587                             ; SOURCE LINE # 144
0005 22              588             RET     
                     589     ; END OF initWatchDog
                     590     
                     591     ; 
                     592     ; code void dvCPUInit(void)
                     593     
----                 594             RSEG  ?PR?dvCPUInit?DVCPU
0000                 595     dvCPUInit:
                     596                             ; SOURCE LINE # 146
                     597     ; {
                     598                             ; SOURCE LINE # 147
                     599     ; 
                     600     ; DisableInterrupt();
                     601                             ; SOURCE LINE # 149
0000 C2AF            602             CLR     EA
                     603     ; PADMOD50 = 0x00; 
                     604                             ; SOURCE LINE # 150
0002 E4              605             CLR     A
0003 900F50          606             MOV     DPTR,#PADMOD50
0006 F0              607             MOVX    @DPTR,A
                     608     ; PADMOD51 = 0x00;
                     609                             ; SOURCE LINE # 151
0007 A3              610             INC     DPTR
0008 F0              611             MOVX    @DPTR,A
                     612     ; PADMOD52 = 0x04;
                     613                             ; SOURCE LINE # 152
0009 A3              614             INC     DPTR
000A 7404            615             MOV     A,#04H
000C F0              616             MOVX    @DPTR,A
                     617     ; PADMOD54 = 0x00;
                     618                             ; SOURCE LINE # 153
000D E4              619             CLR     A
000E 900F54          620             MOV     DPTR,#PADMOD54
0011 F0              621             MOVX    @DPTR,A
                     622     ; PADMOD55 = 0x81;
                     623                             ; SOURCE LINE # 154
0012 A3              624             INC     DPTR
0013 7481            625             MOV     A,#081H
0015 F0              626             MOVX    @DPTR,A
                     627     ; OPTION56 = 0x03;
                     628                             ; SOURCE LINE # 155
0016 A3              629             INC     DPTR
0017 7403            630             MOV     A,#03H
0019 F0              631             MOVX    @DPTR,A
                     632     ; PADMOD57 = 0x00;
                     633                             ; SOURCE LINE # 156
001A E4              634             CLR     A
001B A3              635             INC     DPTR
001C F0              636             MOVX    @DPTR,A
                     637     ; PADMOD5D = 0xFF;
                     638                             ; SOURCE LINE # 157
001D 900F5D          639             MOV     DPTR,#PADMOD5D
0020 74FF            640             MOV     A,#0FFH
0022 F0              641             MOVX    @DPTR,A
                     642     ; 
                     643     ; TMOD = 0x01;  //Timer0 16bit timer.
                     644                             ; SOURCE LINE # 159
0023 758901          645             MOV     TMOD,#01H
                     646     ; initSerialPort();
                     647                             ; SOURCE LINE # 160
0026 120000   F      648             LCALL   initSerialPort
                     649     ; initTimer0();
                     650                             ; SOURCE LINE # 161
0029 120000   F      651             LCALL   initTimer0
A51 MACRO ASSEMBLER  DVCPU                                                                07/14/2006 09:47:05 PAGE    11

                     652     ; initIIC();
                     653                             ; SOURCE LINE # 162
002C 120000   F      654             LCALL   initIIC
                     655     ; initWatchDog();
                     656                             ; SOURCE LINE # 163
002F 120000   F      657             LCALL   initWatchDog
                     658     ; //enable timer0 run
                     659     ; TR0 = 1;
                     660                             ; SOURCE LINE # 165
0032 D28C            661             SETB    TR0
                     662     ; //enable timer0 interrupt
                     663     ; ET0 = 1;
                     664                             ; SOURCE LINE # 167
0034 D2A9            665             SETB    ET0
                     666     ; //enable extern interrupt 0
                     667     ; EX0 = 0;
                     668                             ; SOURCE LINE # 169
0036 C2A8            669             CLR     EX0
                     670     ; //enable all interrupt
                     671     ; EnableInterrupt();
                     672                             ; SOURCE LINE # 171
0038 D2AF            673             SETB    EA
                     674     ; }
                     675                             ; SOURCE LINE # 172
003A 22              676             RET     
                     677     ; END OF dvCPUInit
                     678     
----                 679     CSEG    AT      0000BH
000B 020000   F      680             LJMP    Timer0
                     681     
                     682     ; 
                     683     ; 
                     684     ; 
                     685     ; code void Timer0(void) interrupt 1
                     686     
----                 687             RSEG  ?PR?Timer0?DVCPU
                     688             USING   0
0000                 689     Timer0:
0000 C0E0            690             PUSH    ACC
0002 C0F0            691             PUSH    B
0004 C083            692             PUSH    DPH
0006 C082            693             PUSH    DPL
0008 C0D0            694             PUSH    PSW
000A 75D000          695             MOV     PSW,#00H
000D C000            696             PUSH    AR0
000F C001            697             PUSH    AR1
0011 C002            698             PUSH    AR2
0013 C003            699             PUSH    AR3
0015 C004            700             PUSH    AR4
0017 C005            701             PUSH    AR5
0019 C006            702             PUSH    AR6
001B C007            703             PUSH    AR7
                     704             USING   0
                     705                             ; SOURCE LINE # 176
                     706     ; {
                     707     ;  TR0 = 0;
                     708                             ; SOURCE LINE # 178
001D C28C            709             CLR     TR0
                     710     ;  initTimer0();
                     711                             ; SOURCE LINE # 179
001F 120000   F      712             LCALL   initTimer0
                     713     ;  if(m_Timer != 0)
                     714                             ; SOURCE LINE # 180
0022 E500     F      715             MOV     A,m_Timer+01H
0024 4500     F      716             ORL     A,m_Timer
0026 6008            717             JZ      ?C0006
A51 MACRO ASSEMBLER  DVCPU                                                                07/14/2006 09:47:05 PAGE    12

                     718     ;  m_Timer--;
                     719                             ; SOURCE LINE # 181
0028 E500     F      720             MOV     A,m_Timer+01H
002A 1500     F      721             DEC     m_Timer+01H
002C 7002            722             JNZ     ?C0016
002E 1500     F      723             DEC     m_Timer
0030                 724     ?C0016:
0030                 725     ?C0006:
                     726     ;  IICTimerProcess();
                     727                             ; SOURCE LINE # 182
0030 120000   F      728             LCALL   IICTimerProcess
                     729     ;  CalibrationTimerProcess();
                     730                             ; SOURCE LINE # 183
0033 120000   F      731             LCALL   CalibrationTimerProcess
                     732     ;  TR0 = 1;
                     733                             ; SOURCE LINE # 184
0036 D28C            734             SETB    TR0
                     735     ; }
                     736                             ; SOURCE LINE # 185
0038 D007            737             POP     AR7
003A D006            738             POP     AR6
003C D005            739             POP     AR5
003E D004            740             POP     AR4
0040 D003            741             POP     AR3
0042 D002            742             POP     AR2
0044 D001            743             POP     AR1
0046 D000            744             POP     AR0
0048 D0D0            745             POP     PSW
004A D082            746             POP     DPL
004C D083            747             POP     DPH
004E D0F0            748             POP     B
0050 D0E0            749             POP     ACC
0052 32              750             RETI    
                     751     ; END OF Timer0
                     752     
                     753     ; 
                     754     ; 
                     755     ; code void SendChar(BYTE ch )
                     756     
----                 757             RSEG  ?PR?_SendChar?DVCPU
0000                 758     _SendChar:
                     759                             ; SOURCE LINE # 188
                     760     ;---- Variable 'ch?640' assigned to Register 'R7' ----
                     761     ; {
                     762                             ; SOURCE LINE # 189
                     763     ;   
                     764     ;      SBUF = ch;
                     765                             ; SOURCE LINE # 191
0000 8F99            766             MOV     SBUF,R7
0002                 767     ?C0008:
                     768     ;      while(1)
                     769                             ; SOURCE LINE # 192

⌨️ 快捷键说明

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