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

📄 cid.lst

📁 cid file. the prgram is used to get caller id
💻 LST
📖 第 1 页 / 共 5 页
字号:
Sunplus u'nSP Assembler - Ver. 1.14.4
              Listing File Has Been Relocated
                            	
                            	//.define    BoxDetDtmf  1
                            	
                            	.public ShareArea1
                            	.public ShareArea2
                            	
                            	//----------------------------------------------------------------------------------------
00000000                    	.OSRAM
                            	StartOfSram:
                            	StartOfCidSram:
00000000 00 00              	CidFlag:          .DW       0;
                            	//                           fedc ba98 7654 3210
                            	//                           |||| |||| |||| ||||
                            	//              CID is FSK --+||| |||| |||| |||+-- x
                            	//             CID is DTMF ---+|| |||| |||| ||+--- x
                            	//     Enable DTMF decoder ----+| |||| |||| |+---- x
                            	//     Enable DTMF encoder -----+ |||| |||| +----- set if it is receiving CAS
                            	// 2 DTMF frames are rx'ed -------+||| |||+------- FSK modulation
                            	//   1 DTMF frame is rx'ed --------+|| ||+-------- x
                            	// It's time to check DTMF ---------+| |+--------- Bias of AGC is stable
                            	//  All FSK data are rx'ed ----------+ +---------- The rx'ed checksum is wrong
                            	
                            	//.const  B_CASDetect     = 0x0008;// b3=1, set if it is receiving CAS
                            	
                            	.const  B_AgcIsStable   = 0x0040 // b6=1, the bias voltage of AGC is stable
                            	.const  B_ChksumErr     = 0x0080 // b7=1, checksum is erroreous, error correction is a must
                            	.const  B_FskIsOver     = 0x0100 // b8=1, all FSK data are rx'ed
                            	.const  B_DtmfReady     = 0x0200 // set if it is time to check DTMF
                            	.const  B_1stDtmfFrame  = 0x0400 // set if a DTMF is found in the previous
                            	                                 // checking time
                            	.const  B_MoreDtmfFrame = 0x0800 // the current DTMF has been received, don't
                            	                                 // care its residue. Hunt for the next DTMF
                            	.const  B_EncodeDtmf    = 0x1000 // set if it is necessary to send DTMF
                            	.const  B_DecodeDtmfFsk = 0x2000 // set if it is necessary to receive DTMF
                            	                                 // * b14,b15 should be reserved for CID Type
                            	                                 //   because it's frequently checked by 8KHz
                            	                                 //   interrupt. b15 is used to reduce cycles.
                            	.const  B_CidIsDtmf     = 0x4000 // * b14=0 - CID is not identified yet
                            	                                 // *     1 - CID is DTMF type
                            	.const  B_CidIsFsk      = 0x8000 // * b15=0 - CID is not identified yet
                            	                                 // *     1 - CID is FSK type
                            	
                            	//----------------------------------------------------------------------------------------
                            	DtmfSampleCount:
00000001 00 00              	FskCidState:      .DW       0;
00000002 00 00              	DtmfGainPower:    .DW       0;
00000003 00 00 00 00        	ShareArea1:       .DW       61  DUP(0)
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00      
                            	
                            	//----------------------------------------------------------------------------------------
00000040                    	.ORAM
                            	//ShareArea2:       .DW       343  DUP(0);     //for SPT6605_Decode_V05J_20040723.lib
                            	//ShareArea2:      .DW         403 DUP(0);     //for SPT6605_Decode_050517.lib
                            	
                            	//ShareArea2:        .DW          93         DUP(0);    //for GPTC6606 Europe
00000040 00 00 00 00        	ShareArea2:        .DW         (93+32+1)   DUP(0);    //for GPTC6606 USA
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
         00 00 00 00
                            	
                            	.define  GPTC6606
                            	
                            	.ifndef  GPTC6606
                            	.const   FskCidBuf         = ShareArea2+34;
                            	.else
                            	.const   FskCidBuf         = ShareArea2+33;
                            	.endif
                            	
                            	.const   FskData           = ShareArea2+84;
                            	.const   B_FskDataReceived = 0x0100; // b8=1, set if it received FSK Byte
                            	
000000BE 00 00              	EndOfCidSram:     .DW       0;
                            	
                            	
                            	.if   0
                            	
                            	.public   TmpDtmfCidBufPtr;
                            	.public   TmpDtmfCidBuf;
                            	.public   TmpRxedDtmf;
                            	.public   TmpLastDtmf;
                            	.public   _TmpDtmfCidBufPtr;
                            	.public   _TmpDtmfCidBuf;
                            	.public   _TmpRxedDtmf;
                            	.public   _TmpLastDtmf;
                            	
                            	TmpDtmfCidBufPtr:    .DW           0;
                            	TmpDtmfCidBuf:       .DW     8 DUP(0);
                            	TmpRxedDtmf:         .DW           0;
                            	TmpLastDtmf:         .DW           0;
                            	
                            	.const  _TmpDtmfCidBufPtr    = TmpDtmfCidBufPtr;
                            	.const  _TmpDtmfCidBuf       = TmpDtmfCidBuf;
                            	.const  _TmpRxedDtmf         = TmpRxedDtmf;
                            	.const  _TmpLastDtmf         = TmpLastDtmf;
                            	
                            	.endif
                            	
                            	//============== DTMF Generator External Function ========================//
                            	.external       _F_EnableDtmfEncoder_SW;
                            	.external       _F_StopDtmf_SW;
                            	
                            	//============== CID Decoder External Function ===========================//
                            	.external       _F_EnableCidDecoder;
                            	.external       _F_EnableBoxDetDTMF;
                            	.external       _F_DisableCidDecoder
                            	.external       _F_ClrTmpCidBuf;
                            	.external       _F_DtmfDecoder;
                            	
                            	.if  1
                            	.external     _TmpDtmfCidBufPtr;
                            	.external     _TmpDtmfCidBuf;
                            	.external       DtmfFlag;
                            	.endif
                            	
                            	//----------------------------------------------------------------------------*/
                            	.external _IRQ4;
                            	
                            	.public   _FIQ;
                            	.public   _IRQ0;
                            	.public   _IRQ1;
                            	.public   _IRQ2;
                            	.public   _IRQ3;
                            	.public   _IRQ5;
                            	.public   _IRQ6;
                            	.public   _IRQ7;
                            	.public   _BREAK;
                            	.public   _main;
                            	
                            	//----------------------------------------------------------------------
                            	.const                  RW_FskTotalByteCnt      = ShareArea1;
                            	.const                  RW_FskByteCnt           = ShareArea1+1;
                            	//----------------------------------------------------------------------
                            	.const                  StackSize               = 40
                            	.const                  StackBottom             = 0x03FF
                            	.const                  StackTop                = StackBottom - StackSize + 1
                            	//----------------------------------------------------------------------
000000BF                    	.RAM
000000BF 00 00              	RW_512HzTmr:            .DW                     0;
000000C0 00 00              	CidState:               .DW                     0;
                            	
000000C1 00 00              	RPtr_LcdDigit:          .DW                     0;

⌨️ 快捷键说明

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