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

📄 slavuart.lst

📁 aduc842原程序代码 ad公司芯片应用笔记
💻 LST
📖 第 1 页 / 共 2 页
字号:
00B6 C0F0            161            PUSH    B
00B8 E4              162            CLR     A
00B9 F5F0            163            MOV     B,A
00BB E5F0            164    IO0010: MOV     A,B
00BD 05F0            165            INC     B
00BF 93              166            MOVC    A,@A+DPTR
00C0 6005            167            JZ      IO0020
00C2 1200CC          168            CALL    SENDCHAR
00C5 80F4            169            JMP     IO0010
00C7 D0F0            170    IO0020: POP     B
00C9 D0E0            171            POP     ACC
                     172    
00CB 22              173            RET
                     174    
SLAVUART                                                                                                      PAGE 4

                     175    ;____________________________________________________________________
                     176                                                               ; SENDCHAR
                     177    
00CC                 178    SENDCHAR:       ; sends ASCII value contained in A to UART
                     179    
00CC 3099FD          180            JNB     TI,$            ; wait til present char gone
00CF C299            181            CLR     TI              ; must clear TI
00D1 F599            182            MOV     SBUF,A
                     183    
00D3 22              184            RET
                     185    
                     186    ;____________________________________________________________________
                     187                                                                ; SENDVAL
                     188    
00D4                 189    SENDVAL:        ; converts the hex value of A into two ASCII chars,
                     190                    ; and then spits these two characters up the UART.
                     191                    ; does not change the value of A.
                     192    
00D4 C0E0            193            PUSH    ACC
00D6 C4              194            SWAP    A
00D7 1200E8          195            CALL    HEX2ASCII
00DA 11CC            196            CALL    SENDCHAR        ; send high nibble
00DC D0E0            197            POP     ACC
00DE C0E0            198            PUSH    ACC
00E0 1200E8          199            CALL    HEX2ASCII
00E3 11CC            200            CALL    SENDCHAR        ; send low nibble
00E5 D0E0            201            POP     ACC
                     202    
00E7 22              203            RET
                     204    
                     205    
                     206    ;____________________________________________________________________
                     207                                                              ; HEX2ASCII
                     208    
00E8                 209    HEX2ASCII:      ; converts A into the hex character representing the
                     210                    ; value of A's least significant nibble
                     211    
00E8 540F            212            ANL     A,#00Fh
00EA B40A00          213            CJNE    A,#00Ah,$+3
00ED 4002            214            JC      IO0030
00EF 2407            215            ADD     A,#007h
00F1 2430            216    IO0030: ADD     A,#'0'
                     217    
00F3 22              218            RET
                     219    
                     220    ;____________________________________________________________________
                     221                                                                  ; DELAY
                     222    
00F4                 223    DELAY:                    ; Delays by 10ms * A
                     224                              ; 
                     225                                            
                     226    
00F4 FA              227              MOV   R2,A       ; Acc holds delay variable
00F5 7B1B            228     DLY0:    MOV   R3,#01Bh   ; Set up delay loop0
00F7 7CFF            229     DLY1:    MOV   R4,#0FFh   ; Set up delay loop1
00F9 DCFE            230              DJNZ  R4,$       ; Dec R4 & Jump here until R4 is 0
                     231                               ; 
00FB DBFA            232              DJNZ  R3,DLY1    ; Dec R3 & Jump DLY1 until R3 is 0
SLAVUART                                                                                                      PAGE 5

                     233                               ; 
00FD DAF6            234              DJNZ  R2,DLY0    ; Dec R2 & Jump DLY0 until R2 is 0
                     235                               ; wait for ACC*100ms
00FF 22              236              RET              ; Return from subroutine
                     237    
                     238    
                     239    ;____________________________________________________________________
                     240    
                     241    
0100 0A0A0D5F        242    TITLE:    DB 10,10,13,'____________________________________',10,13
0104 5F5F5F5F   
0108 5F5F5F5F   
010C 5F5F5F5F   
0110 5F5F5F5F   
0114 5F5F5F5F   
0118 5F5F5F5F   
011C 5F5F5F5F   
0120 5F5F5F5F   
0124 5F5F5F0A   
0128 0D         
0129 416E616C        243              DB 'Analog Devices MicroConverter ADuC832',10,13
012D 6F672044   
0131 65766963   
0135 6573204D   
0139 6963726F   
013D 436F6E76   
0141 65727465   
0145 72204144   
0149 75433833   
014D 320A0D     
0150 20202020        244              DB '        SPI SLAVE Demo Routine',10,13
0154 20202020   
0158 53504920   
015C 534C4156   
0160 45204465   
0164 6D6F2052   
0168 6F757469   
016C 6E650A0D   
0170 20204461        245              DB '  Data Stored in Memory in Hex Form',10,13,0
0174 74612053   
0178 746F7265   
017C 6420696E   
0180 204D656D   
0184 6F727920   
0188 696E2048   
018C 65782046   
0190 6F726D0A   
0194 0D00       
                     246    
                     247    ;____________________________________________________________________
                     248    
                     249    
                     250    END

VERSION 1.2h ASSEMBLY COMPLETE, 0 ERRORS FOUND
SLAVUART                                                                                                      PAGE 6

ACC. . . . . . . . . . . . . . .  D ADDR  00E0H  PREDEFINED  
B. . . . . . . . . . . . . . . .  D ADDR  00F0H  PREDEFINED  
CONT . . . . . . . . . . . . . .  C ADDR  0046H  
DELAY. . . . . . . . . . . . . .  C ADDR  00F4H  
DLY0 . . . . . . . . . . . . . .  C ADDR  00F5H  
DLY1 . . . . . . . . . . . . . .  C ADDR  00F7H  
EA . . . . . . . . . . . . . . .  B ADDR  00AFH  PREDEFINED  
FLAG . . . . . . . . . . . . . .  B ADDR  0000H  
HEX2ASCII. . . . . . . . . . . .  C ADDR  00E8H  
IEIP2. . . . . . . . . . . . . .  D ADDR  00A9H  PREDEFINED  
IO0010 . . . . . . . . . . . . .  C ADDR  00BBH  
IO0020 . . . . . . . . . . . . .  C ADDR  00C7H  
IO0030 . . . . . . . . . . . . .  C ADDR  00F1H  
LED. . . . . . . . . . . . . . .    NUMB  00B4H  
MAIN . . . . . . . . . . . . . .  C ADDR  0060H  
NEXT . . . . . . . . . . . . . .  C ADDR  0094H  
P3 . . . . . . . . . . . . . . .  D ADDR  00B0H  PREDEFINED  
PLLCON . . . . . . . . . . . . .  D ADDR  00D7H  PREDEFINED  
SBUF . . . . . . . . . . . . . .  D ADDR  0099H  PREDEFINED  
SCON . . . . . . . . . . . . . .  D ADDR  0098H  PREDEFINED  
SENDCHAR . . . . . . . . . . . .  C ADDR  00CCH  
SENDSTRING . . . . . . . . . . .  C ADDR  00B4H  
SENDVAL. . . . . . . . . . . . .  C ADDR  00D4H  
SNDUART. . . . . . . . . . . . .  C ADDR  0088H  
SPICON . . . . . . . . . . . . .  D ADDR  00F8H  PREDEFINED  
SPIDAT . . . . . . . . . . . . .  D ADDR  00F7H  PREDEFINED  
T3CON. . . . . . . . . . . . . .  D ADDR  009EH  PREDEFINED  
T3FD . . . . . . . . . . . . . .  D ADDR  009DH  PREDEFINED  
TI . . . . . . . . . . . . . . .  B ADDR  0099H  PREDEFINED  
TITLE. . . . . . . . . . . . . .  C ADDR  0100H  
TRNSMT . . . . . . . . . . . . .  C ADDR  0078H  
WAIT1S . . . . . . . . . . . . .  C ADDR  00ACH  

⌨️ 快捷键说明

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