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

📄 ffts.asm

📁 实时FFT源码
💻 ASM
📖 第 1 页 / 共 2 页
字号:
**************************************
*基2,时域抽取法,实时实信号的FFT程序*
**************************************
			.mmregs
			.global reset,start,sav_sin,sav_idx,sav_grp
			.def  	start,_c_int00
            

N			.set	128
LOGN		.set	7 
DLEVEL      .set    100H

AK_SPCR11 	.set 0000000000100001b 
AK_SPCR21 	.set 0000001011000001b
AK_RCR11  	.set 0000000001000000b
AK_RCR21  	.set 0000000001000000b
AK_XCR11  	.set 0000000001000000b 
AK_XCR21  	.set 0000000001000000b 
AK_SRGR11 	.set 0000000000010011b	
AK_SRGR21 	.set 0011000000011111b	
                     ;       ;
AK_PCR1   	.set 0000101000000000b
 
SPSA1		.set 48h
McBSP1		.set 49h
DXR11   	.set 43h
DXR21		.set 42h
DRR11   	.set 41h
DRR21   	.set 40h 

TMP			.set 6Ah
DXNEW		.set 65h             ;暂存输入信号的位置 	 
 
SPCR11  	.set 00h 
SPCR21  	.set 01h
RCR11   	.set 02h
RCR21   	.set 03h
XCR11   	.set 04h
XCR21   	.set 05h
PCR1    	.set 0Eh
SRGR11  	.set 06h
SRGR21  	.set 07h            
            			
DATA		.usect	"DATA",1024			;存放输入信号频谱的数据存储器块
    
sav_grp		.usect	"tempv",3
sav_sin		.set	sav_grp+1
sav_idx		.set	sav_grp+2  

TEMP		.usect	"TEMP",	 3
flag   		.usect  "vars",1  


BOS			.usect	"stack",0Fh
TOS			.usect	"stack",1   

INPUT       .usect    "INPUT" ,256		 

TWI1:    	.sect    "twiddle1"			;正弦表
    			.int    0,201,402,603
    			.int    804,1005,1206,1407
    			.int    1607,1808,2009,2210
    			.int    2410,2611,2811,3011
    			.int    3211,3411,3611,3811
    			.int    4011,4210,4409,4609    
    			.int    4808,5006,5205,5403
    			.int    5602,5800,5997,6195
    			.int    6392,6589,6786,6983
    			.int    7179,7375,7571,7766
    			.int    7961,8156,8351,8545
    			.int    8739,8933,9126,9319
    			.int    9512,9704,9896,10087
    			.int    10278,10469,10659,10849
    			.int    11039,11228,11416,11605
    			.int    11793,11980,12167,12353
    			.int    12539,12725,12910,13094
    			.int    13278,13462,13645,13828
    			.int    14010,14191,14372,14552
    			.int    14732,14912,15090,15269
    			.int    15446,15623,15800,15976
    			.int    16151,16325,16499,16673
    			.int    16846,17018,17189,17360
    			.int    17530,17700,17869,18037  
    			.int    18204,18371,18537,18703
    			.int    18868,19032,19195,19358
    			.int    19519,19681,19841,20001
    			.int    20159,20318,20475,20631
    			.int    20787,20942,21097,21250
    			.int    21403,21555,21706,21856
    			.int    22005,22154,22301,22448
    			.int    22594,22740,22884,23027
    			.int    23170,23312,23453,23593
      			.int    23732,23870,24007,24144
  				.int    24279,24414,24547,24680
  				.int    24812,24943,25073,25201
  				.int    25330,25457,25583,25708
  				.int    25832,25955,26077,26199
  				.int    26319,26438,26557,26674
  				.int    26790,26905,27020,27133
  				.int    27245,27356,27466,27576
  				.int    27684,27791,27897,28002
  				.int    28106,28208,28310,28411
  				.int    28511,28609,28707,28803
  				.int    28898,28993,29086,29178
  				.int    29269,29359,29447,29535
  				.int    29621,29707,29791,29874
  				.int    29956,30037,30117,30196
  				.int    30273,30350,30425,30499
  				.int    30572,30644,30714,30784
  				.int    30852,30919,30985,31050
  				.int    31114,31176,31237,31298
  				.int    31357,31414,31471,31526
  				.int    31581,31634,31685,31736
  				.int    31785,31834,31881,31927
  				.int    31971,32015,32057,32098
  				.int    32138,32176,32214,32250
  				.int    32285,32319,32351,32383
  				.int    32413,32442,32469,32496
  				.int    32521,32545,32568,32589
  				.int    32610,32629,32647,32663
  				.int    32679,32693,32706,32718
  				.int    32728,32737,32745,32752
  				.int    32758,32762,32765,32767
  				.int    32767,32767,32765,32762
  				.int    32758,32752,32745,32737
  				.int    32728,32718,32706,32693
  				.int    32679,32663,32647,32629
  				.int    32610,32589,32568,32545
  				.int    32521,32496,32469,32442
  				.int    32413,32383,32351,32319
  				.int    32285,32250,32214,32176
  				.int    32138,32098,32057,32015
  				.int    31971,31927,31881,31834
  				.int    31785,31736,31685,31634
  				.int    31581,31526,31471,31414
  				.int    31357,31298,31237,31176
  				.int    31114,31050,30985,30919
   				.int  	 30852,30784,30714,30644
  				.int    30572,30499,30425,30350
  				.int    30273,30196,30117,30037
  				.int    29956,29874,29791,29707
  				.int    29621,29535,29447,29359
  				.int    29269,29178,29086,28993
  				.int    28898,28803,28707,28609
  				.int    28511,28411,28310,28208
  				.int    28106,28002,27897,27791
  				.int    27684,27576,27466,27356
  				.int    27245,27133,27020,26905
  				.int    26790,26674,26557,26438
  				.int    26319,26199,26077,25955
  				.int    25832,25708,25583,25457
  				.int    25330,25201,25073,24943
  				.int    24812,24680,24547,24414
  				.int    24279,24144,24007,23870
  				.int    23732,23593,23453,23312
  				.int    23170,23027,22884,22740
  				.int    22594,22448,22301,22154
  				.int    22005,21856,21706,21555
  				.int    21403,21250,21097,20942
  				.int    20787,20631,20475,20318
  				.int    20159,20001,19841,19681
  				.int    19519,19358,19195,19032
  				.int    18868,18703,18537,18371
  				.int    18204,18037,17869,17700
  				.int    17530,17360,17189,17018
  				.int    16846,16673,16499,16325
  				.int    16151,15976,15800,15623
  				.int    15446,15269,15090,14912
  				.int    14732,14552,14372,14191
  				.int    14010,13828,13645,13462
  				.int    13278,13094,12910,12725
  				.int    12539,12353,12167,11980
  				.int    11793,11605,11416,11228
  				.int    11039,10849,10659,10469
  				.int    10278,10087,9896,9704
  				.int    9512,9319,9126,8933
  				.int    8739,8545,8351,8156
  				.int    7961,7766,7571,7375
  				.int    7179,6983,6786,6589
  				.int    6392,6195,5997,5800
  				.int    5602,5403,5205,5006
  				.int    4808,4609,4409,4210
  				.int    4011,3811,3611,3411
    			.int    3211,3011,2811,2611
    			.int    2410,2210,2009,1808
    			.int    1607,1407,1206,1005
    			.int    804,603,402,201     
TWI2:       	.sect    "twiddle2"				;余弦表
    		    .int    32767,32767,32765,32762
    			.int    32758,32752,32745,32737
    			.int    32728,32718,32706,32693
    			.int    32679,32663,32647,32629
    			.int    32610,32589,32568,32545
    			.int    32521,32496,32469,32442
    			.int    32413,32383,32351,32319
    			.int    32285,32250,32214,32176
    			.int    32138,32098,32057,32015
    			.int    31971,31927,31881,31834
    			.int    31785,31736,31685,31634
    			.int    31581,31526,31471,31414
    			.int    31357,31298,31237,31176
    			.int    31114,31050,30985,30919
    			.int    30852,30784,30714,30644
    			.int    30572,30499,30425,30350
    			.int    30273,30196,30117,30037
    			.int    29956,29874,29791,29707
    			.int    29621,29535,29447,29359
    			.int    29269,29178,29086,28993
    			.int    28898,28803,28707,28609
    			.int    28511,28411,28310,28208
    			.int    28106,28002,27897,27791
    			.int    27684,27576,27466,27356
    			.int    27245,27133,27020,26905
    			.int    26790,26674,26557,26438
    			.int    26319,26199,26077,25955
    			.int    25832,25708,25583,25457
    			.int    25330,25201,25073,24943
    			.int    24812,24680,24547,24414
    			.int    24279,24144,24007,23870
    			.int    23732,23593,23453,23312
    			.int    23170,23027,22884,22740
    			.int    22594,22448,22301,22154
    			.int    22005,21856,21706,21555
    			.int    21403,21250,21097,20942
    			.int    20787,20631,20475,20318
    			.int    20159,20001,19841,19681
    			.int    19519,19358,19195,19032
  				.int    18868,18703,18537,18371
  				.int    18204,18037,17869,17700
  				.int    17530,17360,17189,17018    
  				.int    16846,16673,16499,16325
  				.int    16151,15976,15800,15623
  				.int    15446,15269,15090,14912
  				.int    14732,14552,14372,14191
  				.int    14010,13828,13645,13462
  				.int    13278,13094,12910,12725
  				.int    12539,12353,12167,11980
  				.int    11793,11605,11416,11228
  				.int    11039,10849,10659,10469
  				.int    10278,10087,9896,9704
  				.int    9512,9319,9126,8933
  				.int    8739,8545,8351,8156
  				.int    7961,7766,7571,7375
  				.int    7179,6983,6786,6589
  				.int    6392,6195,5997,5800
  				.int    5602,5403,5205,5006
  				.int    4808,4609,4409,4210
  				.int    4011,3811,3611,3411
  				.int    3211,3011,2811,2611
  				.int    2410,2210,2009,1808
  				.int    1607,1407,1206,1005
  				.int    804,603,402,201
  				.int    0,201,-402,-603
  				.int    -804,-1005,-1206,-1407
  				.int    -1607,-1808,-2009,-2210
  				.int    -2410,-2611,-2811,-3011
  				.int    -3211,-3411,-3611,-3811
  				.int    -4011,-4210,-4409,-4609
  				.int    -4808,-5006,-5205,-5403
  				.int    -5602,-5800,-5997,-6195
  				.int    -6392,-6589,-6786,-6983
  				.int    -7179,-7375,-7571,-7766
  				.int    -7961,-8156,-8351,-8545
  				.int    -8739,-8933,-9126,-9319
  				.int    -9512,-9704,-9896,-10087
  				.int    -10278,-10469,-10659,-10849
  				.int    -11039,-11228,-11416,-11605
  				.int    -11793,-11980,-12167,-12353
  				.int    -12539,-12725,-12910,-13094
  				.int    -13278,-13462,-13645,-13828
  				.int    -14010,-14191,-14372,-14552
  				.int    -14732,-14912,-15090,-15269
      			.int    -15446,-15623,-15800,-15976
    			.int    -16151,-16325,-16499,-16673
    			.int    -16846,-17018,-17189,-17360
    			.int    -17530,-17700,-17869,-18037
    			.int    -18204,-18371,-18537,-18703
    			.int    -18868,-19032,-19195,-19358
    			.int    -19519,-19681,-19841,-20001
    			.int    -20159,-20318,-20475,-20631
    			.int    -20787,-20942,-21097,-21250
    			.int    -21403,-21555,-21706,-21856
    			.int    -22005,-22154,-22301,-22448
    			.int    -22594,-22740,-22884,-23027
    			.int    -23170,-23312,-23453,-23593
    			.int    -23732,-23870,-24007,-24144
    			.int    -24279,-24414,-24547,-24680
    			.int    -24812,-24943,-25073,-25201
    			.int    -25330,-25457,-25583,-25708
    			.int    -25832,-25955,-26077,-26199
    			.int    -26319,-26438,-26557,-26674
    			.int    -26790,-26905,-27020,-27133
    			.int    -27245,-27356,-27466,-27576
    			.int    -27684,-27791,-27897,-28002
    			.int    -28106,-28208,-28310,-28411
    			.int    -28511,-28609,-28707,-28803
    			.int    -28898,-28993,-29086,-29178
    			.int    -29269,-29359,-29447,-29535
    			.int    -29621,-29707,-29791,-29874
    			.int    -29956,-30037,-30117,-30196
    			.int    -30273,-30350,-30425,-30499
    			.int    -30572,-30644,-30714,-30784
    			.int    -30852,-30919,-30985,-31050
    			.int    -31114,-31176,-31237,-31298
    			.int    -31357,-31414,-31471,-31526
    			.int    -31581,-31634,-31685,-31736
    			.int    -31785,-31834,-31881,-31927
    			.int    -31971,-32015,-32057,-32098
    			.int    -32138,-32176,-32214,-32250
    			.int    -32285,-32319,-32351,-32383
    			.int    -32413,-32442,-32469,-32496
    			.int    -32521,-32545,-32568,-32589
    			.int    -32610,-32629,-32647,-32663
    			.int    -32679,-32693,-32706,-32718
    			.int    -32728,-32737,-32745,-32752
    			.int    -32758,-32762,-32765,-32767

			.text
_c_int00
		b start
		nop
		nop
NMI	rete
		nop
		nop
		nop
SINT17	.space 4*16
SINT18	.space 4*16
SINT19	.space 4*16
SINT20	.space 4*16
SINT21	.space 4*16
SINT22	.space 4*16
SINT23	.space 4*16
SINT24	.space 4*16
SINT25	.space 4*16
SINT26	.space 4*16
SINT27	.space 4*16
SINT28	.space 4*16
SINT29	.space 4*16
SINT30	.space 4*16
INT0	rsbx 	intm

⌨️ 快捷键说明

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