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

📄 oki80second_1.lst

📁 IPOD 射频 发射器 主要将 音乐信号通过BH1418 发射给 收音机
💻 LST
📖 第 1 页 / 共 4 页
字号:
   503 00159 0C03          	JBC	STATUS,C       
   504 0015A 051C          	INCA	DATATEMP            
   505 0015B               LOOP_1:                       
   506 0015B 039E          	ADD	A,BCDTEMP_LOW	      
   507 0015C 0001          	DAA                    
   508 0015D 005E          	MOV      BCDTEMP_LOW,A 
   509                     ;---------------------------------------- 
   510 0015E 041D          	mov	a, BCDTEMP_HIGH       
   511 0015F 005C          	MOV	DATATEMP,a          
   512 00160 0C03          	JBC	STATUS,C        
   513 00161 051C          	INCA	DATATEMP             
   514 00162               LOOP_2:                       
   515 00162 039D          	ADD    A,BCDTEMP_HIGH            
   516 00163 0001          	DAA            
   517 00164 005D          	MOV      BCDTEMP_HIGH ,A          
   518 00165 05D0          	DJZ     MOVE_TIME
   519 00166 154B          	JMP	LOOP 
   520 00167 041D          	mov	a,BCDTEMP_HIGH
   521 00168 005C          	mov	datatemp,a
   522 00169 071C          	swapa	datatemp
   523 0016A 1A0F          	and	a,@0x0f
   524 0016B 0058          	mov	bcddata,a
   525 0016C 041D          	mov	a,BCDTEMP_HIGH
   526 0016D 1A0F          	and	a,@0x0f
   527 0016E 0059          	mov	bcddata1,a
   528 0016F 041E          	mov	a,BCDTEMP_low
   529 00170 005C          	mov	datatemp,a
   530 00171 071C          	swapa	datatemp
   531 00172 1A0F          	and	a,@0x0f
   532 00173 005A          	mov	bcddata2,a
   533 00174 041E          	mov	a,BCDTEMP_low
   534 00175 1A0F          	and	a,@0x0f
   535 00176 005B          	mov	bcddata3,a		
   536 00177 0012          	RET                
   537                     ;==================================================	I2C PROGRAM 
   538 00178               Read24c01:		; BACK I2CDATA_HIGH; I2CDATA_LO
   539 00178 11FD          	call	E_START
   540 00179 18A0          	MOV	A,@0XA0
   541 0017A 0063          	MOV	E_BUFFER,A
   542 0017B 11C3          	call	BYTE_WRITE
   543 0017C 1808          	MOV	A,@0x8
   544 0017D 0063          	MOV	E_BUFFER,A
   545 0017E 11C3          	call	BYTE_WRITE
   546 0017F 12E5          	call	dly
   547 00180 11FD          	call	E_START
   548 00181 18A1          	MOV	A,@0XA1
   549 00182 0063          	MOV	E_BUFFER,A
   550 00183 11C3          	call	BYTE_WRITE
   551 00184 11EA          	call	BYTE_READ
   552 00185 0423          	MOV	A,E_BUFFER
   553 00186 0055          	MOV	i2cdata_high,A
   554 00187 0B86          	BS	port6,SDA
   555 00188 0BC6          	BS	port6,SCL
   556                   M 	SDA_IN
       00189 184E     1     MOV A,@( 78 )
       0018A 0006     1     IOW  PROT_I2C ,
   557                      ;----------------------------------------
   558                      	;nop
   559 0018B 0000           	nop
   560 0018C 11FD          	call	E_START
   561 0018D 18A0          	MOV	A,@0XA0
   562 0018E 0063          	MOV	E_BUFFER,A
   563 0018F 11C3          	call	BYTE_WRITE
   564 00190 1809          	MOV	A,@0x09
   565 00191 0063          	MOV	E_BUFFER,A
   566 00192 11C3          	call	BYTE_WRITE
   567 00193 12E5          	call	dly
   568 00194 11FD          	call	E_START
   569 00195 18A1          	MOV	A,@0XA1
   570 00196 0063          	MOV	E_BUFFER,A
   571 00197 11C3          	call	BYTE_WRITE
   572 00198 11EA          	call	BYTE_READ
   573 00199 0423          	MOV	A,E_BUFFER
   574 0019A 0056          	MOV	i2cdata_low,A
   575 0019B 0B86          	BS	port6,SDA
   576 0019C 0000          	NOP
   577 0019D 0000          	NOP
   578 0019E 0BC6          	BS	port6,SCL
   579                   M 	SDA_IN	
       0019F 184E     1     MOV A,@( 78 )
       001A0 0006     1     IOW  PROT_I2C ,
   580                     	;call	dly
   581 001A1 0012          	RET    
   582                     ;-----------------------------write       
   583 001A2               E_W:      
   584 001A2 11FD          	call	E_START
   585 001A3 18A0          	MOV	A,@0XA0
   586 001A4 0063          	MOV	E_BUFFER,A
   587 001A5 11C3          	call	BYTE_WRITE
   588 001A6 1808          	MOV	A,@0x08
   589 001A7 0063          	MOV	E_BUFFER,A
   590 001A8 11C3          	call	BYTE_WRITE
   591 001A9 0415          	MOV	A,i2cdata_high
   592 001AA 0063          	MOV	E_BUFFER,A
   593 001AB 11C3          	call	BYTE_WRITE
   594 001AC 1206          	call	E_STOP 
   595 001AD 0B86          	BS	port6,SDA
   596 001AE 0BC6          	BS	port6,SCL
   597                   M 	SDA_IN
       001AF 184E     1     MOV A,@( 78 )
       001B0 0006     1     IOW  PROT_I2C ,
   598 001B1 1114          	call	DELAY10MS
   599                     ;----------------------------------------
   600 001B2 11FD          	call	E_START
   601 001B3 18A0          	MOV	A,@0XA0
   602 001B4 0063          	MOV	E_BUFFER,A
   603 001B5 11C3          	call	BYTE_WRITE
   604 001B6 1809          	MOV	A,@0x09
   605 001B7 0063          	MOV	E_BUFFER,A
   606 001B8 11C3          	call	BYTE_WRITE
   607 001B9 0416          	MOV	A,i2cdata_low
   608 001BA 0063          	MOV	E_BUFFER,A
   609 001BB 11C3          	call	BYTE_WRITE
   610 001BC 1206          	call	E_STOP 
   611 001BD 0B86          	BS	port6,SDA
   612 001BE 0BC6          	BS	port6,SCL
   613                   M 	SDA_in
       001BF 184E     1     MOV A,@( 78 )
       001C0 0006     1     IOW  PROT_I2C ,
   614 001C1 0000          	nop
   615 001C2 0012          	RET       
   616                     ;****************************
   617                     ;I2C操作子程序(时序)集合
   618                     ;****************************
   619 001C3               BYTE_WRITE:
   620                   M 		SDA_OUT
       001C3 180E     1     MOV A,@( 14 )
       001C4 0006     1     IOW  PROT_I2C ,
   621 001C5 12E5          	call	dly
   622 001C6 1808          	MOV	A,@0X08
   623 001C7 0064          	MOV	SLAVE,A           
   624 001C8               WRITE_LOOP:
   625 001C8 09C6          	BC	port6,SCL
   626 001C9 0000          	NOP	
   627 001CA 06E3          	RLC	E_BUFFER
   628 001CB 0C03          	JBC	status,C
   629 001CC 15CF          	JMP	$+3
   630 001CD 0986          	BC	port6,sda
   631 001CE 15D0          	JMP	$+2
   632 001CF 0B86          	BS	port6,sda
   633 001D0 15D1          	JMP	$+1
   634 001D1 0BC6          	BS	port6,scl
   635 001D2 12E5          	call	dly
   636                     	;BC	port6,SCL
   637 001D3 05E4          	DJZ	SLAVE
   638 001D4 15C8          	JMP	WRITE_LOOP
   639 001D5               WAIT_EP_ACK:
   640 001D5 09C6          	BC	port6,SCL
   641                   M 	SDA_IN
       001D6 184E     1     MOV A,@( 78 )
       001D7 0006     1     IOW  PROT_I2C ,
   642 001D8 12E5          	CALL	dly
   643 001D9 0BC6          	BS	port6,SCL
   644 001DA 12E5          	CALL	dly
   645 001DB 0D86          	JBC	port6,SDA
   646 001DC 15DF          	JMP	WAIT_EP_ACK2
   647 001DD 09C6          	BC	port6,SCL
   648 001DE 0012          	RET  
   649 001DF               WAIT_EP_ACK2:
   650 001DF 09C6          	BC	port6,SCL
   651                   M 	 SDA_IN
       001E0 184E     1     MOV A,@( 78 )
       001E1 0006     1     IOW  PROT_I2C ,
   652 001E2 12E5          	 CALL	 dly
   653 001E3 0B86          	 BS	port6,SDA
   654 001E4 12E5          	 CALL	dly
   655 001E5 0D86          	 JBC	port6,SDA
   656 001E6 15E9          	 JMP	EER
   657 001E7 09C6          	 BC	port6,SCL
   658 001E8 0012          	 RET
   659 001E9               EER:
   660 001E9 0012          	RET                    
   661                     ;-----------------------------------------------
   662 001EA               BYTE_READ:
   663                   M 	SDA_IN
       001EA 184E     1     MOV A,@( 78 )
       001EB 0006     1     IOW  PROT_I2C ,
   664 001EC 09C6          	BC	port6,SCL
   665 001ED 1808          	MOV	A,@0X08
   666 001EE 0064          	MOV	SLAVE,A
   667 001EF               READ_LOOP:
   668 001EF 0BC6          	BS	port6,scl
   669 001F0 12E5          	call	dly
   670 001F1 0823          	BC	E_BUFFER,0
   671 001F2 0D86          	JBC	port6,sda
   672 001F3 0A23          	BS	E_BUFFER,0
   673 001F4 0424          	MOV	A,SLAVE
   674 001F5 1D01          	SUB	A,@0X01
   675 001F6 0E83          	JBS	status,Z           
   676 001F7 06E3          	RLC	E_BUFFER
   677 001F8               READ_FINAL:     
   678 001F8 09C6          	BC	port6,SCL 
   679 001F9 12E5          	CALL	dly    
   680 001FA 05E4          	DJZ	SLAVE
   681 001FB 15EF          	JMP	READ_LOOP
   682 001FC 0012          	RET            
   683                     ;-------------------------------------------
   684 001FD               E_START:
   685 001FD 0B86          	BS	port6,SDA
   686 001FE 0BC6          	BS	port6,SCL
   687                   M 	SDA_OUT
       001FF 180E     1     MOV A,@( 14 )
       00200 0006     1     IOW  PROT_I2C ,
   688 00201 12E5          	call	dly
   689 00202 0986          	BC	port6,SDA
   690 00203 12E5          	call	dly
   691 00204 09C6          	BC	port6,SCL
   692 00205 0012          	RET            
   693 00206               E_STOP:
   694                   M 	SDA_OUT
       00206 180E     1     MOV A,@( 14 )
       00207 0006     1     IOW  PROT_I2C ,
   695 00208 0986          	BC	port6,SDA
   696 00209 09C6          	BC	port6,SCL
   697 0020A 12E5          	call	dly
   698 0020B 0BC6          	BS	port6,scl
   699 0020C 12E5          	call	dly
   700 0020D 0B86          	BS	port6,sda
   701 0020E 12E5          	call	dly
   702 0020F 0012          	RET   
   703                     ;****************************
   704                     ;宏定义                      
   705                     ;****************************
   706                     ;=================           
   707                     ;设置SCL,SDA为输出口         
   708                     ;=================           
   709                     SDA_OUT    MACRO               
   710                     	mov	a,@00001110b
   711                     	iow	PROT_I2C	      
   712                     ENDM                         
   713                     ;=================           
   714                     ;设置SCL为输出口,SDA为输入口 
   715                     ;=================           
   716                     SDA_IN    MACRO 
   717                     	mov	a,@01001110b
   718                     	iow	PROT_I2C	                 	
   719                     ENDM                                  
   720                     ;=========================================================================
   721 00210               LCDDISPLAY:
   722 00210 00E2           	CLR	LCD_MAP		 ;FIRST MAP ADD IS 0
   723 00211 0A85           	BS	port5,CK 		;/WR=1
   724 00212 12E5           	call	dly
   725 00213 0805           	BC	port5,CS 		;/CS=0
   726 00214 12E5           	call	dly                              
   727 00215 0AC5           	BS	port5,DA 		;DATA=1  
   728 00216 12E5           	call	dly
   729 00217 0885           	BC	port5,CK 		;/WR=0
   730 00218 12E5           	call	dly
   731 00219 0A85           	BS	port5,CK 		;/WR=1
   732                      ;----------------------------------------------
   733 0021A 12E5           	call	dly

⌨️ 快捷键说明

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