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

📄 7102atest.lst

📁 笙科RF芯片A7102A汇编程序 自动发射接收测试程序
💻 LST
📖 第 1 页 / 共 4 页
字号:
   683  000123   6E22(1)  	b0bset	f_s_ok
   684  000124             
   685  000124             main_S_10:			;rx
   686  000124   C273(2)  	CALL	SUB_RX_EN
   687  000125   7A22(1+S)  	b0bts1		f_key_2
   688  000126   8128(2)  	jmp		$+2
   689  000127   805C(2)  	jmp		main_master
   690  000128   73D5(1+S)  	B0BTS0	IRQ
   691  000129   8125(2)  	JMP	$-4
   692  00012A   6D22(1)  	B0BSET	f_key2
   693  00012B   C2C3(2)  	CALL	SUB_RX_PACKET
   694  00012C   2D08(1)  	mov	a,#00001000b
   695  00012D   1CD1(1)  	xor	p1,a
   696  00012E   0000(1)  	nop
   697  00012F             ;	MOV	A,DATA2
   698  00012F             ;	CMPRS	A,#0X38
   699  00012F             ;	JMP	main
   700  00012F   C2E4(2)  	CALL	SUB_standby
   701  000130   C240(2)  	call	SUB_WRITE_FIFO
   702  000131   C285(2)  	CALL	SUB_TX_EN
   703  000132   73D5(1+S)  	B0BTS0	IRQ
   704  000133   8132(2)  	JMP	$-1
   705  000134   2D04(1)  	mov	a,#00000100b
   706  000135   1CD1(1)  	xor	p1,a
   707  000136   0000(1)  	nop
   708  000137   8057(2)  	jmp	main
   709  000138             
   710  000138             
   711  000138             
   712  000138             	INCLUDE		SUB.asm
   713  000138             
   714  000138             
   715  000138             ;-------------------------------------------------------------------------------
   716  000138             ; ClrRAM
   717  000138             ; Use index @YZ to clear RAM (00h~2Fh)
   718  000138             ;-------------------------------------------------------------------------------
   719  000138             
   720  000138             ClrRAM:
   721  000138             
   722  000138   2B84(1)  	CLR		Y		 
   723  000139   2D7F(1)  	mov		A, #7fH
   724  00013A   2F83(1)  	b0mov		Z, A				;Set @YZ address from 7fh
   725  00013B             
   726  00013B             
   727  00013B             ClrRAM10:
   728  00013B   2BE7(1)  	clr 		@YZ				;Clear @YZ content
   729  00013C   2683(1+S)  	decms		Z   				;z = z - 1 , skip next if z=0
   730  00013D   813B(2)  	jmp 		ClrRAM10 
   731  00013E   2BE7(1)  	clr 		@YZ				;Clear address $00
   732  00013F             
   733  00013F   0E00(2)  	ret
   734  000140             
   735  000140             ;-------------------------------------------------------------------------------
   736  000140             ; SysInit
   737  000140             ; System initial to define Register, RAM, I/O, Timer......
   738  000140             ;-------------------------------------------------------------------------------
   739  000140             SysInit:
   740  000140             
   741  000140   2DFF(1)  	MOV		A,#0FFH
   742  000141   1FE0(1)  	MOV		P0UR,A	
   743  000142   1FE5(1)  	MOV		P5UR,A
   744  000143   1FE1(1)  	MOV		P1UR,A	
   745  000144   2D00(1)  	MOV		A,#00000000B
   746  000145   1FB8(1)  	MOV		P0M,A
   747  000146   2D0C(1)  	MOV		A,#00001100B
   748  000147   1FC1(1)  	MOV		P1M,A
   749  000148   2D00(1)  	MOV		A,#00000000B
   750  000149   1FC5(1)  	MOV		P5M,A
   751  00014A             T0_INIT:	
   752  00014A   64C9(1)  	B0BCLR		FT0IEN		; Disable T0 interrupt service
   753  00014B   67D8(1)  	B0BCLR 		FT0ENB		; Disable T0 timer
   754  00014C   2D00(1)  	MOV 		A, #00H
   755  00014D   2FD8(1)  	B0MOV 		T0M, A
   756  00014E   2DF0(1)  	MOV 		A, #0xf0
   757  00014F   2FD9(1)  	B0MOV 		T0C, A		; Set T0 interval = 1ms
   758  000150   6CC9(1)  	B0BSET 		FT0IEN		; Enable T0 interrupt service
   759  000151   64C8(1)  	B0BCLR 		FT0IRQ		; Clear T0 interrupt request flag
   760  000152   6FD8(1)  	B0BSET 		FT0ENB		; Enable T0 timer
   761  000153             
   762  000153             
   763  000153             Tc0_INIT:	
   764  000153   65C9(1)  	B0BCLR		FTc0IEN		; Disable T0 interrupt service
   765  000154   67DA(1)  	B0BCLR 		FTc0ENB		; Disable T0 timer
   766  000155   2D00(1)  	MOV 		A, #00H
   767  000156   2FDA(1)  	B0MOV 		Tc0M, A
   768  000157   2DF0(1)  	MOV 		A,#0F0H
   769  000158   2FDB(1)  	B0MOV 		Tc0C, A		; Set T0 interval = 1ms
   770  000159   6DC9(1)  	B0BSET 		FTc0IEN		; Enable T0 interrupt service
   771  00015A   65C8(1)  	B0BCLR 		FTc0IRQ		; Clear T0 interrupt request flag
   772  00015B   6FDA(1)  	B0BSET 		FTc0ENB		; Enable T0 timer
   773  00015C             
   774  00015C             
   775  00015C             
   776  00015C             
   777  00015C             
   778  00015C   0E00(2)  	RET
   779  00015D             
   780  00015D             ;-------------------------------------
   781  00015D             ;DELAY	2US
   782  00015D             ;-------------------------------------	
   783  00015D             DELAY2US:
   784  00015D   815E(2)  	JMP	$+1
   785  00015E   815F(2)  	JMP	$+1
   786  00015F             DELAY1US:
   787  00015F   8160(2)  	jmp	$+1
   788  000160   8161(2)  	JMP	$+1
   789  000161   0E00(2)  	RET
   790  000162             ;-------------------------------------
   791  000162             ;DELAY	1MS
   792  000162             ;-------------------------------------
   793  000162             DELAY_MS:
   794  000162   1F01(1)  	MOV	TIME_MS,A
   795  000163             DELAY1m:
   796  000163   2DFA(1)  	MOV	A,#250
   797  000164   1F00(1)  	MOV	TIME_250US,A
   798  000165   8166(2)  	jmp	$+1
   799  000166   8167(2)  	JMP	$+1
   800  000167   8168(2)  	JMP	$+1
   801  000168   8169(2)  	jmp	$+1
   802  000169   816A(2)  	JMP	$+1
   803  00016A   816B(2)  	JMP	$+1
   804  00016B   816C(2)  	jmp	$+1
   805  00016C   2600(1+S)  	DECMS	TIME_250US
   806  00016D   8165(2)  	JMP	$-8
   807  00016E   2601(1+S)  	DECMS	TIME_MS
   808  00016F   8163(2)  	JMP	DELAY1m
   809  000170   0E00(2)  	RET
   810  000171             
   811  000171             
   812  000171             
   813  000171             
   814  000171             
   815  000171             ;-------------------------------------
   816  000171             ;8BITE WRITE
   817  000171             ;-------------------------------------
   818  000171             SUB_BYTE_SEND:
   819  000171             
   820  000171   69C1(1)  	B0BSET	SDIO_M
   821  000172             
   822  000172   8173(2)  	jmp	$+1
   823  000173   8174(2)  	jmp	$+1
   824  000174   8175(2)  	jmp	$+1
   825  000175   8176(2)  	jmp	$+1
   826  000176   2B02(1)  	clr	TEMP_WRITE
   827  000177   1F02(1)  	MOV	TEMP_WRITE,A		;数据入BUF
   828  000178   2D08(1)  	MOV	A,#8		
   829  000179   1F0C(1)  	MOV	Bt_Cont,A		;8 Bit 计数
   830  00017A             SUB_BYTE_SEND_10:
   831  00017A   4286(1)  	BCLR	FC
   832  00017B   0B02(1)  	RLCM	TEMP_WRITE		;循环左移8 Bit 
   833  00017C   5286(1+S)  	BTS0	FC
   834  00017D   49D1(1)  	BSET	SDIO			;Set SDA
   835  00017E   5A86(1+S)  	BTS1	FC
   836  00017F   41D1(1)  	BCLR	SDIO			;Clear SDA
   837  000180   8181(2)  	jmp	$+1
   838  000181   49D5(1)  	BSET	SCK
   839  000182   8183(2)  	jmp	$+1
   840  000183   8184(2)  	jmp	$+1
   841  000184   8185(2)  	jmp	$+1
   842  000185   8186(2)  	jmp	$+1
   843  000186   0000(1)  	nop
   844  000187   41D5(1)  	BCLR	SCK
   845  000188   260C(1+S)  	DECMS	Bt_Cont
   846  000189   817A(2)  	JMP	SUB_BYTE_SEND_10
   847  00018A             SUB_BYTE_SEND_90:
   848  00018A   0E00(2)  	RET
   849  00018B             	
   850  00018B             
   851  00018B             
   852  00018B             ;-------------------------------------
   853  00018B             ;8BITE READ
   854  00018B             ;-------------------------------------
   855  00018B             SUB_BYTE_READ:
   856  00018B             	
   857  00018B   61C1(1)  	B0BCLR	SDIO_M
   858  00018C   818D(2)  	jmp	$+1
   859  00018D   818E(2)  	jmp	$+1
   860  00018E   818F(2)  	jmp	$+1
   861  00018F   8190(2)  	jmp	$+1
   862  000190             
   863  000190             SUB_BYTE_READ_00:
   864  000190             
   865  000190   2B03(1)  	CLR	TEMP_READ
   866  000191   2D08(1)  	MOV	A,#08
   867  000192   1F0C(1)  	MOV	BT_CONT,A
   868  000193             SUB_BYTE_READ_10:
   869  000193   4286(1)  	BCLR	FC
   870  000194   59D1(1+S)  	BTS1	SDIO			;Read SDA
   871  000195   4286(1)  	BCLR	FC
   872  000196   51D1(1+S)  	BTS0	SDIO
   873  000197   4A86(1)  	BSET	FC
   874  000198   0B03(1)  	RLCM	TEMP_READ		;Left Shift 8 Bit
   875  000199   819A(2)  	jmp	$+1
   876  00019A             
   877  00019A   69D5(1)  	b0bset	sck
   878  00019B   819C(2)  	jmp	$+1
   879  00019C   819D(2)  	jmp	$+1
   880  00019D   819E(2)  	jmp	$+1
   881  00019E   819F(2)  	jmp	$+1
   882  00019F   0000(1)  	nop
   883  0001A0   61D5(1)  	B0BCLR	SCK
   884  0001A1             
   885  0001A1   260C(1+S)  	DECMS	Bt_Cont
   886  0001A2   8193(2)  	JMP	SUB_BYTE_READ_10
   887  0001A3             RD24C08_90:
   888  0001A3   0E00(2)  	RET	
   889  0001A4             		
   890  0001A4             
   891  0001A4             
   892  0001A4             ;-------------------------------------
   893  0001A4             ;7102A WRITE REG
   894  0001A4             ;-------------------------------------
   895  0001A4             SUB_WRITE_REG:
   896  0001A4   69C1(1)  	B0BSET	SDIO_M
   897  0001A5   1E0D(1)  	mov	a,address
   898  0001A6   1A00(1)  	OR	A,CMD_CTRLW
   899  0001A7   C171(2)  	call	SUB_BYTE_SEND
   900  0001A8             SUB_16BITE:
   901  0001A8   1E0E(1)  	MOV	A,DATA_M		;HI8 BITE IN BUF
   902  0001A9   C171(2)  	call	SUB_BYTE_SEND
   903  0001AA   1E0F(1)  	MOV	A,DATA_L
   904  0001AB   C171(2)  	call	SUB_BYTE_SEND
   905  0001AC             	
   906  0001AC             	
   907  0001AC   0E00(2)  	RET
   908  0001AD             
   909  0001AD             ;-------------------------------------
   910  0001AD             ;7102A READ REG
   911  0001AD             ;-------------------------------------
   912  0001AD             SUB_READ_REG:
   913  0001AD   1E0D(1)  	mov	a,address
   914  0001AE   1A80(1)  	OR	A,CMD_CTRLR
   915  0001AF   C171(2)  	CALL	SUB_BYTE_SEND
   916  0001B0   2B0E(1)  	CLR	DATA_M
   917  0001B1   2B0F(1)  	CLR	DATA_L
   918  0001B2   0000(1)  	NOP
   919  0001B3   61C1(1)  	B0BCLR	SDIO_M
   920  0001B4   C190(2)  	CALL	SUB_BYTE_READ_00
   921  0001B5   1E03(1)  	MOV	A,TEMP_READ
   922  0001B6   1F0E(1)  	MOV	DATA_M,A
   923  0001B7   C190(2)  	CALL	SUB_BYTE_READ_00
   924  0001B8   1E03(1)  	MOV	A,TEMP_READ
   925  0001B9   1F0F(1)  	MOV	DATA_L,A
   926  0001BA             
   927  0001BA   69D5(1)  	b0bset	sck
   928  0001BB   81BC(2)  	jmp	$+1
   929  0001BC   81BD(2)  	jmp	$+1
   930  0001BD   81BE(2)  	jmp	$+1
   931  0001BE   81BF(2)  	jmp	$+1
   932  0001BF   0000(1)  	nop
   933  0001C0   61D5(1)  	B0BCLR	SCK
   934  0001C1             
   935  0001C1   0E00(2)  	RET
   936  0001C2             
   937  0001C2             ;-------------------------------------
   938  0001C2             ;7102A WRITE ID
   939  0001C2             ;-------------------------------------
   940  0001C2             SUB_WRITE_ID:
   941  0001C2   60D5(1)  	B0BCLR	SCS
   942  0001C3   2D20(1)  	MOV	A,#0x20			;WRITE ID
   943  0001C4   C171(2)  	CALL	SUB_BYTE_SEND
   944  0001C5             
   945  0001C5   2D54(1)  	MOV	A,#0x54			;SEND 4 BYTE ID
   946  0001C6   C171(2)  	CALL	SUB_BYTE_SEND
   947  0001C7   2D75(1)  	MOV	A,#0x75
   948  0001C8   C171(2)  	CALL	SUB_BYTE_SEND
   949  0001C9   2DC5(1)  	MOV	A,#0xC5
   950  0001CA   C171(2)  	CALL	SUB_BYTE_SEND
   951  0001CB   2D2A(1)  	MOV	A,#0x2A
   952  0001CC   C171(2)  	CALL	SUB_BYTE_SEND
   953  0001CD             	
   954  0001CD   68D5(1)  	B0BSET	SCS
   955  0001CE   81CF(2)  	jmp	$+1
   956  0001CF   81D0(2)  	jmp	$+1
   957  0001D0   81D1(2)  	jmp	$+1
   958  0001D1   81D2(2)  	jmp	$+1
   959  0001D2   60D5(1)  	B0BCLR	SCS
   960  0001D3             
   961  0001D3   2DA0(1)  	MOV	A,#0XA0			; READ ID
   962  0001D4   C171(2)  	CALL	SUB_BYTE_SEND
   963  0001D5             
   964  0001D5   C18B(2)  	CALL	SUB_BYTE_READ
   965  0001D6   1E03(1)  	MOV	A,TEMP_READ
   966  0001D7   1F04(1)  	MOV	TEMP_ID1,A
   967  0001D8   C18B(2)  	CALL	SUB_BYTE_READ
   968  0001D9   1E03(1)  	MOV	A,TEMP_READ
   969  0001DA   1F05(1)  	MOV	TEMP_ID2,A
   970  0001DB   C18B(2)  	CALL	SUB_BYTE_READ
   971  0001DC   1E03(1)  	MOV	A,TEMP_READ
   972  0001DD   1F06(1)  	MOV	TEMP_ID3,A
   973  0001DE   C18B(2)  	CALL	SUB_BYTE_READ
   974  0001DF   1E03(1)  	MOV	A,TEMP_READ
   975  0001E0   1F07(1)  	MOV	TEMP_ID4,A
   976  0001E1   68D5(1)  	B0BSET	SCS
   977  0001E2             	
   978  0001E2   0E00(2)  	RET
   979  0001E3             
   980  0001E3             ;-------------------------------------
   981  0001E3             ;7102A CONFIG_M
   982  0001E3             ;-------------------------------------
   983  0001E3             
   984  0001E3             
   985  0001E3             
   986  0001E3             
   987  0001E3             SUB_CONFIG_M:
   988  0001E3             
   989  0001E3   2B0D(1)                  CLR	address
   990  0001E4             @@:
   991  0001E4             
   992  0001E4   60D5(1)  		B0BCLR	SCS
   993  0001E5   3401(1)  		B0MOV	Y,#TABLE_T$M
   994  0001E6   33FE(1)  		B0MOV	Z,#TABLE_T$L
   995  0001E7                            
   996  0001E7             
   997  0001E7   2E0D(1)                  B0MOV    A,address
   998  0001E8   1383(1)  		ADD	Z,A
   999  0001E9   7A86(1+S)  		B0BTS1	FC
  1000  0001EA   81ED(2)  		JMP	GETDATA_T
  1001  0001EB   1684(1+S)  		INCMS	Y
  1002  0001EC   0000(1)  		NOP
  1003  0001ED             GETDATA_T:
  1004  0001ED   0D00(2)  		MOVC
  1005  0001EE   1F0F(1)  		MOV	DATA_L,A
  1006  0001EF   1E82(1)  		MOV	A,R
  1007  0001F0   1D55(1)                  XOR     A,#55H
  1008  0001F1   7086(1+S)               	B0BTS0  FZ
  1009  0001F2   0E00(2)            	RET
  1010  0001F3   1E82(1)           	MOV	A,R
  1011  0001F4   1F0E(1)  		MOV	DATA_M,A	
  1012  0001F5             
  1013  0001F5   C1A4(2)  		CALL	SUB_WRITE_REG
  1014  0001F6   68D5(1)  		B0BSET	SCS
  1015  0001F7   81F8(2)  		jmp	$+1
  1016  0001F8   81F9(2)  		jmp	$+1
  1017  0001F9   81FA(2)  		jmp	$+1
  1018  0001FA   81FB(2)  		jmp	$+1
  1019  0001FB   160D(1+S)  		INCMS	address
  1020  0001FC   81E4(2)                  JMP     @B	
  1021  0001FD   0E00(2)  		RET
  1022  0001FE             
  1023  0001FE             

⌨️ 快捷键说明

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