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

📄 co0511.s

📁 用m128调试CO0511液晶的源代码!
💻 S
📖 第 1 页 / 共 3 页
字号:
	.module co0511.c
	.area data(ram, con, rel)
_turn::
	.blkb 1
	.area idata
	.byte 0
	.area data(ram, con, rel)
	.blkb 127
	.area idata
	.word 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
	.word 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
	.byte 0,0,0,0,0,0,0
	.area data(ram, con, rel)
	.dbfile E:\mcu\avr\test\cO0511\co0511.c
	.dbsym e turn _turn A[128:128]c
_n::
	.blkb 1
	.area idata
	.byte 0
	.area data(ram, con, rel)
	.dbfile E:\mcu\avr\test\cO0511\co0511.c
	.dbsym e n _n c
	.area lit(rom, con, rel)
_tab5::
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 3,0
	.byte 0,0
	.byte 2,1
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 1,1
	.byte 3,1
	.byte 1,1
	.byte 1,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 3,0
	.byte 0,0
	.byte 0,0
	.byte 0,1
	.byte 0,0
	.byte 0,0
	.byte 2,1
	.byte 0,2
	.byte 2,3
	.byte 2,3
	.byte 2,2
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 3,0
	.byte 0,0
	.byte 2,1
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,16
	.byte 32,255
	.byte 0,128
	.byte 171,170
	.byte 170,170
	.byte 170,171
	.byte 128,0
	.byte 0,0
	.byte 1,0
	.byte 253,'T
	.byte 'T,'V
	.byte 'U,'T
	.byte 252,2
	.byte 1,0
	.byte 0,2
	.byte 2,2
	.byte 250,146
	.byte 146,146
	.byte 146,146
	.byte 144,159
	.byte 128,0
	.byte 0,32
	.byte 32,191
	.byte 0,127
	.byte 'T,'T
	.byte 255,'T
	.byte 'U,127
	.byte 0,0
	.byte 0,16
	.byte 32,255
	.byte 0,128
	.byte 171,170
	.byte 170,170
	.byte 170,171
	.byte 128,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,192
	.byte 0,0
	.byte 192,128
	.byte 128,136
	.byte 136,200
	.byte 8,15
	.byte 8,'H
	.byte 136,24
	.byte 136,64
	.byte 64,64
	.byte 'J,'J
	.byte 207,18
	.byte 146,0
	.byte 30,18
	.byte 18,18
	.byte 30,0
	.byte 0,0
	.byte 128,'C
	.byte 146,14
	.byte 2,18
	.byte 14,'B
	.byte 134,26
	.byte 130,'C
	.byte 64,64
	.byte 64,'O
	.byte 'I,'N
	.byte 64,6
	.byte 5,21
	.byte 13,197
	.byte 4,6
	.byte 192,128
	.byte 128,128
	.byte 128,192
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 4,4
	.byte 4,4
	.byte 4,252
	.byte 4,4
	.byte 4,4
	.byte 12,4
	.byte 0,0
	.byte 48,192
	.byte 254,128
	.byte 64,130
	.byte 146,146
	.byte 254,146
	.byte 146,130
	.byte 0,0
	.byte 128,16
	.byte 16,144
	.byte 144,146
	.byte 190,208
	.byte 144,16
	.byte 144,16
	.byte 0,0
	.byte 0,254
	.byte 16,146
	.byte 'b,'D
	.byte 'x,64
	.byte 124,'B
	.byte 'B,'N
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 4,24
	.byte 144,'t
	.byte 20,148
	.byte 'u,22
	.byte 52,208
	.byte 20,24
	.byte 0,0
	.byte 4,8
	.byte 'q,17
	.byte 17,17
	.byte 255,17
	.byte 17,49
	.byte 16,0
	.byte 0,0
	.byte 8,'I
	.byte 'J,127
	.byte 138,9
	.byte 36,18
	.byte 0,255
	.byte 1,1
	.byte 0,0
	.byte 8,8
	.byte 255,9
	.byte 6,16
	.byte 255,16
	.byte 16,31
	.byte 4,3
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,128
	.byte 128,128
	.byte 128,144
	.byte 240,128
	.byte 128,128
	.byte 128,128
	.byte 0,0
	.byte 16,16
	.byte 16,16
	.byte 16,16
	.byte 240,16
	.byte 16,16
	.byte 16,16
	.byte 0,0
	.byte 128,0
	.byte 0,240
	.byte 0,128
	.byte 128,128
	.byte 128,240
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 240,16
	.byte 32,64
	.byte 128,32
	.byte 16,224
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.byte 0,0
	.dbsym e tab5 _tab5 A[1024:1024]kc
	.area text(rom, con, rel)
	.dbfile E:\mcu\avr\test\cO0511\co0511.c
	.dbfunc e delay_1us _delay_1us fV
	.even
_delay_1us::
	.dbline -1
	.dbline 223
; /********Co051112864图形液晶*************
; CS      接PA0
; RES     接PA1
; A0		接PA2
; SCLk    接PC6
; SI      接PC7
; C86		接PA5
; P/S 	接PA4
; *******************************/
; /********16位ad函数*************
; sclk     接PB3
; DOUT     接PB2
; CONV     接PB4
; EOC      接PB1
; cs		 接PB0
; pa5输出
; *******************************/
; #define uint  unsigned int 
; #define uchar unsigned char 
; #include<iom128v.h>
; //#include<math.h>
; #include<macros.h>
; //#include"ffft.h"
; uchar  turn[128]={0};
; uchar n=0;
; /**************************************************
; float FFT_Re[128]={82,88,108,140,164,177,169,148,114,92,81,90,111,141,165,177,169,144,115,91,82,89,112,141,
; 166,178,168,144,114,90,80,91,112,143,167,178,166,144,112,89,80,91,112,143,168,177,168,142,111,89,82,91,115,
; 144,168,177,166,142,110,89,81,92,115,146,168,178,165,139,109,88,81,93,117,145,169,177,165,139,109,86,82,93,
; 117,148,170,176,164,138,106,88,81,94,118,149,170,177,163,137,106,87,80,94,121,149,171,177,163,106,86,82,96,
; 120,150,171,178,161,136,104,85,82,98,120,152,172,175,161,134,104};    //输入序列实部,初值为20KHz正弦波AD采样得到 
; float FFT_Im[128]={0.0};     //虚部分存,因为是序列变换因此初值为零
; float Wr_Buff[64]={1,0.9988,0.9952,0.9892,0.9808,0.9700,0.9569,0.9415,0.9239,0.9040,
; 0.8819,0.8577,0.8315,0.8032,0.7730,0.7410,0.7071,0.6716,0.6344,0.5957,0.5556,0.5141,
; 0.4714,0.4276,0.3827,0.3369,0.2903,0.2430,0.1951,0.1467,0.0980,0.0491,0,-0.0491,
; -0.0980,-0.1467,-0.1951,-0.2430,-0.2903,-0.3369,-0.3827,-0.4276,-0.4714,-0.5141,
; -0.5556,-0.5957,-0.6344,-0.6716,-0.7071,-0.7410,-0.7730,-0.8032,-0.8315,-0.8577,
; -0.8819,-0.9040,-0.9239,-0.9415,-0.9569,-0.9700,-0.9808,-0.9892,-0.9952,-0.9988}; //旋转因子实部
; float Wi_Buff[64]={0,-0.0491,-0.0980,-0.1467,-0.1951,-0.2430,-0.2903,-0.3369,-0.3827,
; -0.4276,-0.4714,-0.5141,-0.5556,-0.5957,-0.6344,-0.6716,-0.7071,-0.7410,-0.7730,
; -0.8032,-0.8315,-0.8577,-0.8819,-0.9040,-0.9239,-0.9415,-0.9569,-0.9700,-0.9808,
; -0.9892,-0.9952,-0.9988, -1,-0.9988,-0.9952,-0.9892,-0.9808,-0.9700,-0.9569,-0.9415,
; -0.9239,-0.9040,-0.8819,-0.8577,-0.8315,-0.8032,-0.7730,-0.7410,-0.7071,-0.6716,
; -0.6344,-0.5957,-0.5556,-0.5141,-0.4714,-0.4276,-0.3827,-0.3369,-0.2903,-0.2430,
; -0.1951,-0.1467,-0.0980,-0.0491};         //旋转因子虚部
; float Window[128]={0.0806,0.0822,0.0850,0.0888,0.0938,0.0998,0.1069,0.1150,0.1242,
; 0.1343,0.1454,0.1575,0.1705,0.1844,0.1992,0.2147,0.2311,0.2482,0.2660,0.2844,0.3035,
; 0.3232,0.3433,0.3640,0.3850,0.4065,0.4282,0.4503,0.4725,0.4949,0.5174,0.5400,0.5626,
; 0.5851,0.6075,0.6297,0.6518,0.6735,0.6950,0.7160,0.7367,0.7568,0.7765,0.7956,0.8140,
; 0.8318,0.8489,0.8653,0.8808,0.8956,0.9095,0.9225,0.9346,0.9457,0.9558,0.9650,0.9731,
; 0.9802,0.9862,0.9912,0.9950,0.9978,0.9994, 1,0.9994,0.9978,0.9950,0.9912,0.9862,
; 0.9802,0.9731,0.9650,0.9558,0.9457,0.9346,0.9225,0.9095,0.8956,0.8808,0.8653,0.8489,
; 0.8318,0.8140,0.7956,0.7765,0.7568,0.7367,0.7160,0.6950,0.6735,0.6518,0.6297,0.6075,
; 0.5851,0.5626,0.5400,0.5174,0.4949,0.4725,0.4503,0.4282,0.4065,0.3850,0.3640,0.3433,
; 0.3232,0.3035,0.2844,0.2660,0.2482,0.2311,0.2147,0.1992,0.1844,0.1705,0.1575,0.1454,
; 0.1343,0.1242,0.1150,0.1069,0.0998,0.0938,0.0888,0.0850,0.0822,0.0806,0.0800};   //窗函数,改进汉宁窗
; float Res[128];             //转换结果
; float Result1_r;
; float Result1_i;
; float Result2_r;
; float Result2_i;
; //*************************************************
; void FFT_Proc(void);
; /*************************************************
; int main(void)
; {
;     unsigned char i;
; 	for(i=0;i<128;i++)
; 	    FFT_Re[i]*=Window[i];
;     FFT_Proc();
; 	while(1);
; 	return 1;
; }
; *************************************************/ 
; /*------------------------------------------------
; FFT_Proc :计算128点FFT
;     信息 :标准C浮点运算,可移植
; ------------------------------------------------/
; void FFT_Proc(void)
; {
;     unsigned char i;
;     unsigned char j;
;     unsigned char a;
;     unsigned char b;
;     unsigned char c;
;     unsigned char k=0;
;     unsigned char temp=0;
;     unsigned char revers=0;
;     float FFT_Re1[128];
;     for(i=0;i<128;i++)
; 	    FFT_Re1[i]=FFT_Re[i];
;     for(i=0;i<128;i++)
;     {
;         for(j=0;j<7;j++)
;         { 
;             a=(i&(0x01<<j));
;             b=(6-(j<<1));
;             c=6-2*(6-j);
;             if(j<3)
; 	       revers+=a<<b;
;             else if(j>3)
; 	       revers+=a>>c;
;             else
;                revers+=a;
;         }
;         FFT_Re[i]=FFT_Re1[revers];	    
;         revers=0;
;     }                               //对128点输入序列进行位倒序
;     for(i=0;i<7;i++)                //第一重循环控制蝶形的级数
;     {
;         for(j=0;(j+(1<<i))<128;j++) //控制每级的蝶形和旋转因子
;         {
;              if(k<64)
;              {
;                 c=k;
;                 k+=(1<<(6-i));
;              }
;              else
;              k=0;
;              if(temp<(1<<i))
;              {
;                  temp++;
;                  a=j;
;                  b=(j+(1<<i));
;                  Result1_r=FFT_Re[a]+Wr_Buff[c]*FFT_Re[b]-Wi_Buff[c]*FFT_Im[b];
; 	             Result1_i=FFT_Im[a]+Wi_Buff[c]*FFT_Re[b]+Wr_Buff[c]*FFT_Im[b];
; 	             Result2_r=FFT_Re[a]-Wr_Buff[c]*FFT_Re[b]+Wi_Buff[c]*FFT_Im[b];
; 	             Result2_i=FFT_Im[a]-Wi_Buff[c]*FFT_Re[b]-Wr_Buff[c]*FFT_Im[b];  //蝶形单元
;                  FFT_Re[a]=Result1_r;
;                  FFT_Im[a]=Result1_i;
;                  FFT_Re[b]=Result2_r;
;                  FFT_Im[b]=Result2_i;                                              
;              }
;              else
;              {
;                  j=(j+(1<<i)-1);
;                  temp=0;
;              }
; 		    
;          }
;          k=0;
;          temp=0;
;      }
;      for(i=0;i<128;i++)
;      Res[i]=sqrt(FFT_Re[i]*FFT_Re[i]+FFT_Im[i]*FFT_Im[i]);                      //结果取模
; 	 turn[i]=Res[i];
; }
; /**************************************************************************/
; 
; uchar const tab5[]={
; /*--  调入了一幅图像  --*/
; /*--  宽度x高度=128x64  --*/
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
; 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

⌨️ 快捷键说明

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