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

📄 main.lst

📁 采用6502内核单片机,结合无线通讯模块的无线通讯方案,含Asm代码.
💻 LST
📖 第 1 页 / 共 5 页
字号:
   629 0000F03A A5 6A       <       		lda		GB_Receive_Flag
   630 0000F03C 29 FD       <       		and		#~C_ReceInit_Allow
   631 0000F03E 09 04       <       		ora		#C_ReceStart_Allow				;Allow to receive starting data 
   632 0000F040 85 6A       <       		sta		GB_Receive_Flag
   633 0000F042 4C 51 F0    <       		jmp		?L_Receive_Init_Exit
   634                      <       		
   635 0000F045             <       ?L_Send_Mode:
   636 0000F045 A5 6A       <       		lda		GB_Receive_Flag
   637 0000F047 29 F0       <       		and		#~(C_Rece_Allow+C_ReceInit_Allow+C_ReceStart_Allow+C_ReceID_Allow)
   638 0000F049 85 6A       <       		sta		GB_Receive_Flag	
   639 0000F04B A5 0D       <       		lda		P_INT_Ctrl0
   640 0000F04D 29 FD       <               and		#~C_INT_CAP3IE					;Capture3 INT enable
   641 0000F04F 85 0D       <               sta		P_INT_Ctrl0		
   642 0000F051             <       ?L_Receive_Init_Exit:		
   643 0000F051 60          <       		rts
   644                      <       		
   645                      <       ;==================================================================================
   646                      <       ;	Function:		F_Receive
   647                      <       ;	Description:	decode datas and save the decoded datas in a 5-byte RAM
   648                      <       ;	Input:			GB_Send_Flag
   649                      <       ;					GB_Receive_Flag
   650                      <       ;	Output:			G_RF_data
   651                      <       ;					GB_Receive_Flag
   652                      <       ;	Destroy:		A,X
   653                      <       ;	Stacks:			2
   654                      <       ;==================================================================================		
   655 0000F052             <       F_Receive:		
   656 0000F052 A5 65       <       		lda		GB_Send_Flag
   657 0000F054 29 80       <       		and		#C_Send_Allow					;In sending mode
   658 0000F056 D0 06       <       		bne		?L_Send_Mode1					;yes
   659                      <       
   660 0000F058 A5 6A       <       		lda		GB_Receive_Flag					
   661 0000F05A 29 01       <       		and		#C_Rece_Allow					;In receiving mode	
   662 0000F05C D0 0F       <       		bne		?L_Start_Bit					;yes
   663                      <       		
   664 0000F05E             <       ?L_Send_Mode1:
   665 0000F05E A5 6A       <       		lda		GB_Receive_Flag
   666 0000F060 29 F1       <       		and		#~(C_ReceInit_Allow+C_ReceStart_Allow+C_ReceID_Allow)
   667 0000F062 85 6A       <       		sta		GB_Receive_Flag	
   668 0000F064 A5 0D       <       		lda		P_INT_Ctrl0
   669 0000F066 29 FD       <               and		#~C_INT_CAP3IE					;Capture3 INT enable
   670 0000F068 85 0D       <               sta		P_INT_Ctrl0		
   671 0000F06A 4C CD F0    <       		jmp		?L_ReceEnd			
   672                      <       		
   673 0000F06D             <       ?L_Start_Bit:
   674 0000F06D A5 1D       <       		lda		P_TMR3_CapHi
   675 0000F06F 85 6B       <       		sta		G_RF_Time						;rising edage data
   676 0000F071             <       ?_incept:		
   677 0000F071 A5 6A       <       		lda		GB_Receive_Flag
   678 0000F073 29 04       <       		and		#C_ReceStart_Allow				;Allow to receive starting data 
   679 0000F075 F0 19       <       		beq		?L_ID_Word						;no
   680                      <       		
   681 0000F077 A5 6B       <       		lda		G_RF_Time						;\69
   682 0000F079 C9 36       <       		cmp		#54								;+ 
   683 0000F07B 90 59       <       		bcc		?L_Error						;+=the front code = 156 (9ms)
   684 0000F07D C9 54       <       		cmp		#84								;+
   685 0000F07F B0 55       <       		bcs		?L_Error						;/	
   686                      <       
   687 0000F081 A5 6A       <        		lda		GB_Receive_Flag
   688 0000F083 29 FB       <       		and		#~C_ReceStart_Allow
   689 0000F085 09 08       <       		ora		#C_ReceID_Allow
   690 0000F087 85 6A       <       		sta		GB_Receive_Flag
   691 0000F089 A9 00       <       		lda		#0
   692 0000F08B 85 71       <       		sta		G_RF_Number
   693 0000F08D 4C DE F0    <       		jmp		?L_Receive_Exit	
   694                      <        			
   695 0000F090             <       ?L_ID_Word:
   696 0000F090 A5 6A       <       		lda		GB_Receive_Flag
   697 0000F092 29 08       <       		and		#C_ReceID_Allow
   698 0000F094 F0 40       <       		beq		?L_Error
   699                      <       
   700 0000F096 A5 6B       <       		lda		G_RF_Time						;\	13
   701 0000F098 C9 06       <       		cmp		#6								;+
   702 0000F09A 90 3A       <       		bcc		?L_Error						;+= receive "0" =39 (0.94ms)?
   703 0000F09C C9 12       <       		cmp		#18								;+
   704 0000F09E B0 03       <       		bcs		?_incept_1						;/								
   705 0000F0A0 4C AE F0    <       		jmp		?_icept_number					;no
   706                      <       		
   707 0000F0A3             <       ?_incept_1:		
   708 0000F0A3 A5 6B       <       		lda		G_RF_Time						;\25
   709 0000F0A5 C9 12       <       		cmp		#18								;+
   710 0000F0A7 90 2D       <       		bcc		?L_Error						;+= receive "1" =78 (1.88ms)?
   711 0000F0A9 C9 23       <       		cmp		#35								;+
   712 0000F0AB B0 29       <       		bcs		?L_Error						;/		
   713 0000F0AD 38          <       		sec										;yes
   714                      <       		
   715 0000F0AE             <       ?_icept_number:	
   716 0000F0AE 26 6C       <       		rol		G_RF_data						;\
   717 0000F0B0 26 6D       <       		rol		G_RF_data+1						;+					
   718 0000F0B2 26 6E       <       		rol		G_RF_data+2						;+= receive bits one by one							
   719 0000F0B4 26 6F       <       		rol		G_RF_data+3						;+		
   720 0000F0B6 26 70       <       		rol		G_RF_data+4						;/
   721                      <       		
   722 0000F0B8 E6 71       <       		inc		G_RF_Number
   723 0000F0BA A5 71       <       		lda		G_RF_Number
   724 0000F0BC C9 08       <       		cmp		#8								;get ID word? 
   725 0000F0BE F0 10       <       		beq		?L_Int							;yes
   726 0000F0C0 C9 28       <       		cmp		#C_RF_Number					;receive end?
   727 0000F0C2 90 1A       <       		bcc		?L_Receive_Exit					;no
   728                      <       		
   729 0000F0C4 20 DF F0    <       		jsr		F_DataCorrect
   730 0000F0C7 F0 0D       <       		beq		?L_Error
   731                      <       		
   732 0000F0C9 A9 10       <       		lda		#C_ReceEnd_Allow
   733 0000F0CB 85 6A       <       		sta		GB_Receive_Flag		
   734 0000F0CD             <       ?L_ReceEnd:	
   735 0000F0CD 4C DE F0    <       		jmp		?L_Receive_Exit
   736                      <       		
   737 0000F0D0             <       ?L_Int:
   738 0000F0D0 A5 6C       <       		lda		G_RF_data
   739 0000F0D2 C9 AA       <       		cmp		#$AA							;ID word past?
   740 0000F0D4 F0 08       <       		beq		?L_Receive_Exit					;yes
   741 0000F0D6             <       ?L_Error:										;Error cope
   742 0000F0D6 A5 6A       <       		lda		GB_Receive_Flag
   743 0000F0D8 29 10       <       		and		#C_ReceEnd_Allow
   744 0000F0DA 09 05       <       		ora		#(C_Rece_Allow+C_ReceStart_Allow)
   745 0000F0DC 85 6A       <       		sta		GB_Receive_Flag	
   746 0000F0DE             <       ?L_Receive_Exit:		
   747 0000F0DE 60          <       		rts
   748                      <       ;==================================================================================
   749                      <       ;	Function:		F_DataCorrect
   750                      <       ;	Description:	Check up 4byte datas
   751                      <       ;	Input:			G_RF_data
   752                      <       ;	Output:			G_RF_data
   753                      <       ;	Destroy:		A
   754                      <       ;	Stacks:			1
   755                      <       ;==================================================================================
   756 0000F0DF             <       F_DataCorrect:
   757 0000F0DF A5 6D       <       		lda		G_RF_data+1
   758 0000F0E1 C5 6F       <       		cmp		G_RF_data+3
   759 0000F0E3 F0 3A       <       		beq		?L_Right
   760                      <       		
   761 0000F0E5 A5 6C       <       		lda		G_RF_data
   762 0000F0E7 C5 6E       <       		cmp		G_RF_data+2
   763 0000F0E9 F0 2E       <       		beq		?L_ReceiveData
   764                      <       
   765 0000F0EB 18          <       		clc
   766 0000F0EC A5 6C       <       		lda		G_RF_data
   767 0000F0EE 65 6D       <       		adc		G_RF_data+1
   768 0000F0F0 C9 FF       <       		cmp		#$FF
   769 0000F0F2 F0 2B       <       		beq		?L_Right
   770                      <       		
   771 0000F0F4 18          <       		clc
   772 0000F0F5 A5 6C       <       		lda		G_RF_data
   773 0000F0F7 65 6F       <       		adc		G_RF_data+3
   774 0000F0F9 C9 FF       <       		cmp		#$FF
   775 0000F0FB F0 15       <       		beq		?L_ReceiveData1
   776                      <       		
   777 0000F0FD 18          <       		clc
   778 0000F0FE A5 6E       <       		lda		G_RF_data+2
   779 0000F100 65 6D       <       		adc		G_RF_data+1
   780 0000F102 C9 FF       <       		cmp		#$FF
   781 0000F104 F0 19       <       		beq		?L_Right
   782                      <       		
   783 0000F106 18          <       		clc
   784 0000F107 A5 6F       <       		lda		G_

⌨️ 快捷键说明

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