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

📄 ca745.lst

📁 EM447开发的带发射的代码 CA745
💻 LST
📖 第 1 页 / 共 3 页
字号:
   479 0119 09C6          	BC    		P6,_sda
   480 011A 1808          	MOV		A,@0x08
   481 011B 0050          	MOV  		count,a
   482 011C 1816          	MOV             A,@device_addr
   483 011D 0040                  MOV  	        INDF,A
   484 011E               write_bit_cyc:
   485 011E 0986          	BC    		P6,_scl
   486 011F 11CA          	call		delay_4us
   487 0120 06C0          	RLC		INDF
   488 0121 0C03          	JBC   		STATUS,C
   489 0122 0BC6          	BS    		P6,_sda
   490 0123 0E03          	JBS   		STATUS,C
   491 0124 09C6          	BC    		P6,_sda
   492 0125 11CA          	call		delay_4us
   493 0126 0B86          	BS    		P6,_scl
   494 0127 11C6          	call		delay_6us
   495 0128 05D0          	DJZ		count
   496 0129 151E          	JMP		write_bit_cyc
   497 012A               write_byte_ack:
   498 012A 0986          	BC    		P6,_scl
   499                  M 	SDA_I
       012B 0016     1     IOR  P6 ,
       012C 1980     1     OR A,@( 128 )
       012D 0006     1     IOW  P6 ,
   500 012E 11C6          	call		delay_6us
   501 012F 0B86          	BS    		P6,_scl
   502 0130 11CC          	call		delay_3us
   503 0131 0DC6          	JBC   		P6,_sda
   504 0132 1509          	JMP		_I2C_Write		;write_eeprom
   505 0133 11CA          	call		delay_4us
   506 0134               write_byte_end:
   507 0134 0544          	INC		FSR
   508 0135 05D1          	DJZ		count1
   509 0136 1515          	JMP		write_byte_cyc	
   510 0137               write_eeprom_end:
   511 0137 0986          	BC    		P6,_scl
   512                  M 	SDA_O
       0138 0016     1     IOR  P6 ,
       0139 1A7F     1     AND A,@( 127 )
       013A 0006     1     IOW  P6 ,
   513 013B 09C6          	BC    		P6,_sda
   514 013C 11C6          	call		delay_6us
   515 013D 0B86          	BS    		P6,_scl
   516 013E 11C2          	call		delay_10us		;6us
   517 013F 0BC6          	BS    		P6,_sda
   518 0140 11C2          	call		delay_10us
   519 0141 0012          	ret
   520                    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
   521                    ;read and write the eeprom program
   522                    ;write by ProBoy
   523                    ;2003-7-28
   524                    ;*****************************************************************************
   525 0142               _I2C_Read:               
   526                  M 	SDA_O                                   ;START
       0142 0016     1     IOR  P6 ,
       0143 1A7F     1     AND A,@( 127 )
       0144 0006     1     IOW  P6 ,
   527 0145 0BC6          	BS    		P6,_sda
   528 0146 11C2          	call		delay_10us		
   529 0147 0B86          	BS    		P6,_scl
   530 0148 11C2          	call		delay_10us
   531 0149 09C6          	BC    		P6,_sda
   532 014A 11C2          	call		delay_10us
   533                    
   534 014B 1802          	MOV		A,@0x02
   535 014C 0051          	MOV  		count1,a
   536 014D               write_byte_cyc1:
   537 014D 0986          	BC    		P6,_scl
   538                  M 	SDA_O
       014E 0016     1     IOR  P6 ,
       014F 1A7F     1     AND A,@( 127 )
       0150 0006     1     IOW  P6 ,
   539 0151 09C6          	BC    		P6,_sda
   540 0152 1808          	MOV		A,@0x08
   541 0153 0050          	MOV  		count,a
   542 0154 1816          	MOV             A,@device_addr
   543 0155 0040                  MOV  	        INDF,A
   544 0156               write_bit_cyc1:
   545 0156 0986          	BC    		P6,_scl
   546 0157 11CA          	call		delay_4us
   547 0158 06C0          	RLC		INDF
   548 0159 0C03          	JBC   		STATUS,C
   549 015A 0BC6          	BS    		P6,_sda
   550 015B 0E03          	JBS   		STATUS,C
   551 015C 09C6          	BC    		P6,_sda
   552 015D 11CA          	call		delay_4us
   553 015E 0B86          	BS    		P6,_scl
   554 015F 11C6          	call		delay_6us
   555 0160 05D0          	DJZ		count
   556 0161 1556          	JMP		write_bit_cyc1
   557 0162               write_byte_ack1:
   558 0162 0986          	BC    		P6,_scl
   559                  M 	SDA_I
       0163 0016     1     IOR  P6 ,
       0164 1980     1     OR A,@( 128 )
       0165 0006     1     IOW  P6 ,
   560 0166 11C6          	call		delay_6us
   561 0167 0B86          	BS    		P6,_scl
   562 0168 11CC          	call		delay_3us
   563 0169 0DC6          	JBC   		P6,_sda
   564 016A 1542          	JMP		_I2C_Read	
   565 016B 11CA          	call		delay_4us
   566 016C               write_byte_end1:
   567 016C 0544          	INC		FSR
   568 016D 05D1          	DJZ		count1
   569 016E 154D          	JMP		write_byte_cyc1	
   570                    
   571                    
   572                    
   573 016F 0986          	BC    		P6,_scl			
   574 0170 11C8          	call		delay_5us
   575                    
   576                  M 	SDA_O                                   ;START
       0171 0016     1     IOR  P6 ,
       0172 1A7F     1     AND A,@( 127 )
       0173 0006     1     IOW  P6 ,
   577 0174 0BC6          	BS    		P6,_sda
   578 0175 11C2          	call		delay_10us		
   579 0176 0B86          	BS    		P6,_scl
   580 0177 11C2          	call		delay_10us
   581 0178 09C6          	BC    		P6,_sda
   582 0179 11C2          	call		delay_10us
   583                    
   584 017A 1801          	MOV		a,@0x01                 ;Read SLAVE ADDRESS
   585 017B 0216          	OR		a,device_addr        
   586 017C 0052          	MOV		temp,a
   587 017D 1808          	MOV		a,@0x08
   588 017E 0050          	MOV		count,a
   589 017F               device_bit_cyc1:
   590 017F 0986          	BC    		P6,_scl
   591 0180 11CA          	call		delay_4us
   592 0181 06D2          	RLC		temp
   593 0182 0C03          	JBC   		STATUS,C
   594 0183 0BC6          	BS    		P6,_sda
   595 0184 0E03          	JBS   		STATUS,C
   596 0185 09C6          	BC    		P6,_sda
   597 0186 11CA          	call		delay_4us
   598 0187 0B86          	BS    		P6,_scl
   599 0188 11C6          	call		delay_6us
   600 0189 05D0          	DJZ		count
   601 018A 157F          	JMP		device_bit_cyc1
   602                    
   603 018B 0986          	BC    		P6,_scl
   604                  M 	SDA_I
       018C 0016     1     IOR  P6 ,
       018D 1980     1     OR A,@( 128 )
       018E 0006     1     IOW  P6 ,
   605 018F 11C6          	call		delay_6us
   606 0190 0B86          	BS    		P6,_scl
   607 0191 11C8          	call		delay_5us
   608 0192 0DC6          	JBC   		P6,_sda
   609 0193 1542          	JMP		_I2C_Read
   610 0194 11C8          	call		delay_5us
   611                            
   612                    	
   613 0195 00D2                  CLR             temp
   614 0196 1808          	MOV		a,@0x08
   615 0197 0050          	MOV		count,a	
   616 0198               bit_cyc:
   617 0198 0986          	BC    		P6,_scl
   618 0199 11C2          	call		delay_10us
   619 019A 0B86          	BS    		P6,_scl
   620 019B 11C8          	call		delay_5us
   621 019C 0DC6          	JBC		P6,_sda
   622 019D 0A03          	BS    		STATUS,C
   623 019E 0FC6          	JBS		P6,_sda
   624 019F 0803          	BC    		STATUS,C
   625 01A0 06D2          	RLC		temp
   626 01A1 11CE          	call		delay_2us
   627 01A2 05D0          	DJZ		count
   628 01A3 1598          	JMP		bit_cyc
   629 01A4 0412                  MOV		a,temp
   630 01A5 0059          	MOV		RXBUF,a
   631                    
   632 01A6               read_eeprom_end:                                   ;STOP
   633 01A6 0986                  BC    		P6,_scl
   634                  M 	SDA_O
       01A7 0016     1     IOR  P6 ,
       01A8 1A7F     1     AND A,@( 127 )
       01A9 0006     1     IOW  P6 ,
   635 01AA 09C6          	BC    		P6,_sda
   636 01AB 11C6          	call		delay_6us
   637 01AC 0B86          	BS    		P6,_scl
   638 01AD 11C2          	call		delay_10us	
   639 01AE 0BC6          	BS    		P6,_sda
   640 01AF 11C2          	call		delay_10us        	
   641 01B0 0012          	ret
   642                    ;*****************************************************************
   643                    ;used: the LCD Display Table
   644                    ;reg:
   645                    ;wrt:  ProBoy
   646                    ;date: 2001.07.03
   647                    ;*****************************************************************
   648 01B1               LCD_DATA:
   649 01B1 03C2                  ADD     PC,A   
   650 01B2 1C7B           	RETL	0x7b 	;0
   651 01B3 1C7B           	RETL	0x7b	;1
   652 01B4 1C1C           	RETL	0x1c	;2
   653 01B5 1C7B           	RETL	0x7b 	;3
   654 01B6 1C7B           	RETL	0x7b	;4
   655 01B7 1C1C           	RETL	0x1c	;5
   656 01B8 1C7B           	RETL	0x7b 	;6
   657 01B9 1C7B           	RETL	0x7b	;7
   658 01BA 1C1C           	RETL	0x1c	;8
   659 01BB 1C1C          	RETL	0x1c	;9
   660                    ;*****************************************************************
   661                    ;used: the delay for key
   662                    ;reg:
   663                    ;wrt:  ProBoy
   664                    ;date: 2001.07.03
   665                    ;*****************************************************************
   666 01BC               delay_20ms:
   667 01BC 18FF                  MOV    A,@0XFF
   668 01BD 0050                  MOV    COUNT,A
   669 01BE               LOOP:
   670 01BE 11C6                  CALL    delay_6us
   671 01BF 05D0                  DJZ      COUNT
   672 01C0 15BE                  JMP     LOOP
   673 01C1 0012                  RET
   674 01C2               delay_10us:
   675 01C2 15C3                  JMP		$+1
   676 01C3 15C4                  JMP		$+1
   677 01C4 15C5                  JMP		$+1
   678 01C5 15C6                  JMP		$+1
   679 01C6               delay_6us:
   680 01C6 15C7          	JMP		$+1
   681 01C7 15C8                  JMP		$+1
   682 01C8               delay_5us:
   683 01C8 15C9          	JMP		$+1
   684 01C9 15CA                  JMP		$+1
   685 01CA               delay_4us:
   686 01CA 15CB          	JMP		$+1
   687 01CB 15CC                  JMP		$+1
   688 01CC               delay_3us:
   689 01CC 15CD          	JMP		$+1
   690 01CD 15CE                  JMP		$+1
   691 01CE               delay_2us:
   692 01CE 15CF                  JMP		$+1
   693 01CF 0012          	ret
   694                    ;----------------------------------------
   695                            END
  0 Error(s), 0 Warning(s), 0 User Message(s)

⌨️ 快捷键说明

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