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

📄 c8051f020.inc

📁 c8051f020源代码39个 使用Silicon Labs IDE 调试器
💻 INC
字号:
 LCALL  DEL65S       ;连续放音65秒
005A 1200EC          264                LCALL  STOP          ;停止放音。
                     265     
005D 015D            266                AJMP   $
                     267     
                     268     ;⑵主机向ISD4004连续发送茸纸谥噶畹淖映绦駽OMM:
                     269     ;操作指令(单字节)在COM中,起始地址的高8位在ADDRH中,低8位在ADDRL中。
005F C291            270     COMM:      CLR    CS
0061 E522            271                MOV    A,ADDRL
0063 1200FE          272                LCALL  TRANSFER
0066 E520            273                MOV    A,ADDRH
0068 1200FE          274                LCALL  TRANSFER
006B E523            275                MOV    A,COM
006D 1200FE          276                LCALL  TRANSFER
0070 D291            277                SETB   CS
0072 22              278                RET
                     279     ;实验30  16分种语音录放芯片ISD4004实验
                     280     ;⒀延时25毫秒的子程序DEL25MS:
0073 7F19            281     DEL25MS:   MOV    R7,#25    ;延时25毫秒的子程序(假设主机晶振为6MHZ)
0075 7E00            282     PPP:        MOV    R6,#00
0077 DEFE            283                 DJNZ   R6,$
0079 DFFA            284                 DJNZ   R7 ,PPP
007B 22              285                 RET
                     286     ;⒁延时65秒的子程序DEL65S:
007C 7F00            287     DEL65S:     MOV    R7,#0H       ;延时65秒(假设主机晶振为6MHZ)
007E 7E00            288     PP   :      MOV    R6,#0
0080 7D00            289     PK :        MOV    R5,#00
0082 DDFE            290                 DJNZ   R5,$
0084 DEFA            291                 DJNZ   R6 ,PK
0086 DFF6            292                 DJNZ   R7, PP
0088 22              293                 RET  
                     294     ;⒂延时10秒的子程序DEL10S:
0089 7F28            295     DEL10S:    MOV    R7 , #40      ;延时10秒(假设主机晶振为6MHZ)
008B 017E            296                AJMP    PP
                     297                ;实验30  16分种语音录放芯片ISD4004实验
                     298     ;⑼送快进指令的子程序MC:
                     299              
008D 74F8            300     MC:      MOV    A  ,#0F8H     ; 单字节指令:F8H   
008F C291            301              CLR    CS
0091 11FE            302              ACALL  TRANSFER
0093 D291            303              SETB   CS
0095 22              304              RET
                     305     ;实验30  16分种语音录放芯片ISD4004实验
                     306     ;⑺送连续录音指令的子程序:
                     307             
0096 74F0            308     PLAY:    MOV    A  ,#0F0H      ;送单字节指令:F0H   
0098 C291            309               CLR    CS
009A 11FE            310              ACALL  TRANSFER
009C D291            311              SETB   CS
009E 22              312              RET
                     313     ;实验30  16分种语音录放芯片ISD4004实验
                     314     ;⑶送上电指令(20H)的子程序POWERUP:
                     315              
009F 7420            316     POWERUP:  MOV    A,#20H     ; 发送上电指令
00A1 C291            317               CLR    CS
00A3 11FE            318               ACALL  TRANSFER
00A5 1173            319               ACALL  DEL25MS      ;延时25毫秒
00A7 D291            320               SETB   CS
00A9 22              321                RET
A51 MACRO ASSEMBLER  ISD4004PLAY                                                          11/08/2005 16:12:09 PAGE     6

                     322     ;
                     323     ;实验30  16分种语音录放芯片ISD4004实验
                     324     ;⑸送连续录音指令的子程序:
                     325                
00AA 74B0            326     REC:       MOV    A,#0B0H     ;送单字节指令:B0H   
00AC C291            327                CLR    CS
00AE 11FE            328                ACALL  TRANSFER
00B0 D291            329                SETB   CS
00B2 22              330                RET
                     331     
                     332     ;实验30  16分种语音录放芯片ISD4004实验
                     333     ;⑿送读状态位指令的子程序RINT:
                     334            
00B3 7430            335     RINT:    MOV    A  ,#30H        ; 单字节指令:30H      
00B5 C291            336              CLR     CS
00B7 11FE            337              ACALL  TRANSFER
00B9 D291            338              SETB    CS
00BB 22              339              RET 
                     340     
                     341     ;实验30  16分种语音耂TER FOR PCA 0 MODULE 2PCA0CPM3 DATA  0DDH   ; CONTROL REGISTER FOR PCA 0 MODULE 3PCA0CPM4 DATA  0DEH   ; CONTROL REGISTER FOR PCA 0 MODULE 4ACC      DATA  0E0H   ; ACCUMULATORXBR0     DATA  0E1H   ; DIGITAL CROSSBAR CONFIGURATION REGISTER 0XBR1     DATA  0E2H   ; DIGITAL CROSSBAR CONFIGURATION REGISTER 1XBR2     DATA  0E3H   ; DIGITAL CROSSBAR CONFIGURATION REGISTER 2RCAP4L   DATA  0E4H   ; TIMER 4 CAPTURE REGISTER - LOW BYTERCAP4H   DATA  0E5H   ; TIMER 4 CAPTURE REGISTER - HIGH BYTEEIE1     DATA  0E6H   ; EXTERNAL INTERRUPT ENABLE 1EIE2     DATA  0E7H   ; EXTERNAL INTERRUPT ENABLE 2ADC0CN   DATA  0E8H   ; ADC 0 CONTROLPCA0L    DATA  0E9H   ; PCA 0 TIMER - LOW BYTEPCA0CPL0 DATA  0EAH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 0 - LOW BYTEPCA0CPL1 DATA  0EBH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 1 - LOW BYTEPCA0CPL2 DATA  0ECH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 2 - LOW BYTEPCA0CPL3 DATA  0EDH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 3 - LOW BYTEPCA0CPL4 DATA  0EEH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 4 - LOW BYTERSTSRC   DATA  0EFH   ; RESET SOURCE B        DATA  0F0H   ; B REGISTERSCON1    DATA  0F1H   ; SERIAL PORT 1 CONTROLSBUF1    DATA  0F2H   ; SERAIL PORT 1 DATASADDR1   DATA  0F3H   ; SERAIL PORT 1 TL4      DATA  0F4H   ; TIMER 4 DATA - LOW BYTETH4      DATA  0F5H   ; TIMER 4 DATA - HIGH BYTEEIP1     DATA  0F6H   ; EXTERNAL INTERRUPT PRIORITY REGISTER 1EIP2     DATA  0F7H   ; EXTERNAL INTERRUPT PRIORITY REGISTER 2SPI0CN   DATA  0F8H   ; SERIAL PERIPHERAL INTERFACE 0 CONTROL PCA0H    DATA  0F9H   ; PCA 0 TIMER - HIGH BYTEPCA0CPH0 DATA  0FAH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 0 - HIGH BYTEPCA0CPH1 DATA  0FBH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 1 - HIGH BYTEPCA0CPH2 DATA  0FCH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 2 - HIGH BYTEPCA0CPH3 DATA  0FDH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 3 - HIGH BYTEPCA0CPH4 DATA  0FEH   ; CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 4 - HIGH BYTEWDTCN    DATA  0FFH   ; WATCHDOG TIMER CONTROL ;;------------------------------------------------------------------------------;BIT DEFINITIONS;; TCON 88HIT0      BIT   TCON.0 ; EXT. INTERRUPT 0 TYPEIE0      BIT   TCON.1 ; EXT. INTERRUPT 0 EDGE FLAGIT1      BIT   TCON.2 ; EXT. INTERRUPT 1 TYPEIE1      BIT   TCON.3 ; EXT. INTERRUPT 1 EDGE FLAGTR0      BIT   TCON.4 ; TIMER 0 ON/OFF CONTROLTF0      BIT   TCON.5 ; TIMER 0 OVERFLOW FLAGTR1      BIT   TCON.6 ; TIMER 1 ON/OFF CONTROLTF1      BIT   TCON.7 ; TIMER 1 OVERFLOW FLAG;; SCON0 98HRI       BIT   SCON0.0 ; RECEIVE INTERRUPT FLAGTI       BIT   SCON0.1 ; TRANSMIT INTERRUPT FLAGRB8      BIT   SCON0.2 ; RECEIVE BIT 8TB8      BIT   SCON0.3 ; TRANSMIT BIT 8REN      BIT   SCON0.4 ; RECEIVE ENABLESM2      BIT   SCON0.5 ; MULTIPROCESSOR COMMUNICATION ENABLESM1      BIT   SCON0.6 ; SERIAL MODE CONTROL BIT 1SM0      BIT   SCON0.7 ; SERIAL MODE CONTROL BIT 0; ; IE A8HEX0      BIT   IE.0   ; EXTERNAL INTERRUPT 0 ENABLEET0      BIT   IE.1   ; TIMER 0 INTERRUPT ENABLEEX1      BIT   IE.2   ; EXTERNAL INTERRUPT 1 ENABLEET1      BIT   IE.3   ; TIMER 1 INTERRUPT ENABLEES       BIT   IE.4   ; SERIAL PORT INTERRUPT ENABLEET2      BIT   IE.5   ; TIMER 2 INTERRUPT ENABLEEA       BIT   IE.7   ; GLOBAL INTERRUPT ENABLE;; IP B8HPX0      BIT   IP.0   ; EXTERNAL INTERRUPT 0 PRIORITYPT0      BIT   IP.1   ; TIMER 0 PRIORITYPX1      BIT   IP.2   ; EXTERNAL INTERRUPT 1 PRIORITYPT1      BIT   IP.3   ; TIMER 1 PRIORITYPS       BIT   IP.4   ; SERIAL PORT PRIORITYPT2      BIT   IP.5   ; TIMER 2 PRIORITY;; SMB0CN C0HSMBTOE   BIT   SMB0CN.0 ; SMBUS 0 TIMEOUT ENABLESMBFTE   BIT   SMB0CN.1 ; SMBUS 0 FREE TIMER ENABLEAA       BIT   SMB0CN.2 ; SMBUS 0 ASSERT/ACKNOWLEDGE FLAGSI       BIT   SMB0CN.3 ; SMBUS 0 INTERRUPT PENDING FLAGSTO      BIT   SMB0CN.4 ; SMBUS 0 STOP FLAGSTA      BIT   SMB0CN.5 ; SMBUS 0 START FLAGENSMB    BIT   SMB0CN.6 ; SMBUS 0 ENABLE ;; T2CON C8HCPRL2    BIT   T2CON.0 ; CAPTURE OR RELOAD SELECTCT2      BIT   T2CON.1 ; TIMER OR COUNTER SELECTTR2      BIT   T2CON.2 ; TIMER 2 ON/OFF CONTROLEXEN2    BIT   T2CON.3 ; TIMER 2 EXTERNAL ENABLE FLAGTCLK     BIT   T2CON.4 ; TRANSMIT CLOCK FLAGRCLK     BIT   T2CON.5 ; RECEIVE CLOCK FLAGEXF2     BIT   T2CON.6 ; EXTERNAL FLAGTF2      BIT   T2CON.7 ; TIMER 2 OVERFLOW FLAG;; PSW D0HP        BIT   PSW.0  ; ACCUMULATOR PARITY FLAGF1       BIT   PSW.1  ; USER FLAG 1OV       BIT   PSW.2  ; OVERFLOW FLAGRS0      BIT   PSW.3  ; REGISTER BANK SELECT 0RS1      BIT   PSW.4  ; REGISTER BANK SELECT 1F0       BIT   PSW.5  ; USER FLAG 0AC       BIT   PSW.6  ; AUXILIARY CARRY FLAGCY       BIT   PSW.7  ; CARRY FLAG;; PCA0CN D8HCCF0     BIT   PCA0CN.0 ; PCA 0 MODULE 0 INTERRUPT FLAGCCF1     BIT   PCA0CN.1 ; PCA 0 MODULE 1 INTERRUPT FLAGCCF2     BIT   PCA0CN.2 ; PCA 0 MODULE 2 INTERRUPT FLAGCCF3     BIT   PCA0CN.3 ; PCA 0 MODULE 3 INTERRUPT FLAGCCF4     BIT   PCA0CN.4 ; PCA 0 MODULE 4 INTERRUPT FLAGCR       BIT   PCA0CN.6 ; PCA 0 COUNTER RUN CONTROL BITCF       BIT   PCA0CN.7 ; PCA 0 COUNTER OVERFLOW FLAG;; ADC0CN E8HAD0LJST  BIT   ADC0CN.0 ; ADC 0 RIGHT JUSTIFY DATA BITAD0WINT  BIT   ADC0CN.1 ; ADC 0 WINDOW COMPARE INTERRUPT FLAGAD0STM0  BIT   ADC0CN.2 ; ADC 0 START OF CONVERSION MODE BIT 0AD0STM1  BIT   ADC0CN.3 ; ADC 0 START OF CONVERSION MODE BIT 1AD0BUSY  BIT   ADC0CN.4 ; ADC 0 BUSY FLAGAD0INT   BIT   ADC0CN.5 ; ADC 0 CONVERISION COMPLETE INTERRUPT FLAG AD0TM    BIT   ADC0CN.6 ; ADC 0 TRACK MODEAD0EN    BIT   ADC0CN.7 ; ADC 0 ENABLE;; SPI0CN F8HSPIEN    BIT   SPI0CN.0 ; SPI 0 SPI ENABLEMSTEN    BIT   SPI0CN.1 ; SPI 0 MASTER ENABLESLVSEL   BIT   SPI0CN.2 ; SPI 0 SLAVE SELECTTXBSY    BIT   SPI0CN.3 ; SPI 0 TX BUSY FLAGRXOVRN   BIT   SPI0CN.4 ; SPI 0 RX OVERRUN FLAGMODF     BIT   SPI0CN.5 ; SPI 0 MODE FAULT FLAGWCOL     BIT   SPI0CN.6 ; SPI 0 WRITE COLLISION FLAGSPIF     BIT   SPI0CN.7 ; SPI 0 INTERRUPT FLAG

⌨️ 快捷键说明

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