1、1) processing(int *input2,int *output2)调用形式:processing1(int *input2,int *output2)参数解释:input2、output为两个整型指针数组。返回值解释:返回一个“TURE”,让主函数的While循环保持连续。功能说明:对输入的input2 buffer波形进行截取m点,再以零点的Y轴为对称轴进行翻褶,把生成的波形上的各点的值存入以OUTPUT2指针开始的一段地址空间中。2) processing2(int *output2,int *output3)调用形式: processing2(int *output2,int
2、 *output3)output2、output3为两个整形指针数组。返回了一个“TREN”,让主函数的While循环保持连续。对输出的output2 buffer波形进行作n点移位,然后把生成的波形上的各点的值存入以OUTPUT3指针开始的一段空间中。3) processing3(int *input1,int *output2,int *output4)processing3(int *input1,int *output2,int *output4)output2、output4、input1为三个整型指针数组。返回了一个“TRUE”,让主函数的While循环保持继续。对输入的input
3、2 buffer波形和输入的input1 buffer做卷积和运算,然后把生成的波形上的各点的值存入以OUTPUT4指针开始的地址空间中。4) processing4(int *input2,int *output1)processing4(int *input2,int *output1)output1、input为两个整型指针数组返回了一个“TRUE”,让主函数的循环保持继续。对输入的input2 buffer波形截取m点,然后把生成的波形上的各点的值存入以OUTPUT1指针开始的一段地址空间中。源程序:#include DSP281x_Device.hDSP281x_Examples.h
4、f2812a.hstdio.hvolume.hint inp1_bufferBUFSIZE;int inp2_bufferBUFSIZE;int out1_bufferBUFSIZE;int out2_bufferBUFSIZE;int out3_bufferBUFSIZE;int out4_bufferBUFSIZE*2;int size = BUFSIZE;int ain = MINGAIN;int zhy=0;int sk=64;unsigned int processingLoad = 1;static int processing1(int *output1, int *output
5、2);static int processing2(int *output2, int *output3);static int processing3(int *input1,int *output2,int *output4);static int processing4(int *input2, int *output1);static void dataIO1(void);static void dataIO2(void);int *input1 = &inp1_buffer0;int *input2 = &inp2_buffer0;int *output1 = &out1_buffe
6、r0;int *output2 = &out2_buffer0;int *output3 = &out3_buffer0;int *output4 = &out4_buffer0;void main(void) int jishu=0; int *input1 = & int *input2 = & int *output1 = & int *output2 = & /int *output3 = & int *output4 = & puts(volume example startedn); while(TRUE) dataIO1(); dataIO2(); processing4(inp
7、ut2,output1); processing1(output1, output2); /*processing2(output2, output3); */ processing3(input1,output2,output4) ; jishu+;/在此处加断点 static int processing4(int *input2,int *output1) int m=sk; for(;m=0;m-) *output1+ = (*input2+) * ain; (size-m)0;m+) output1m=0;static int processing1(int *output1,int
8、 *output2) int m=sk-1; *output2+ = *output1+ * ain;static int processing2(int *output2, int *output3) int n=zhy,m; size=64;n) i=y; x=0; z=0; f=y;ii-) g=input1z*output2f; x=x+g; z+; f-; *output4+ = x; y+; m=sk; y=sk-1; w=m-zhy-1; y-; i=y; z=sk-1; f=sk-y;i-,z-,f+) out4_bufferw=x; w+;static void dataIO
9、1() return;static void dataIO2() /* do data I/O */仿真设置 1)在程序中“dataIO1();”上单击鼠标右键选择“Toggle software breakpoint”,设置软件断点:再在同一行上单击鼠标右键,选择“software breakpoint”,“edit”,来设置断点。此时打开了一个新的窗口。最后设置成如下图所示: 2)同理,在程序中“dataIO2();”上同样操作设置。最后设置如下图: 3)打开窗口菜单Viwe-Graph-Frequency进行如下设置:仿真图 1)当输入波为SIN,SIN时SIN-inp1SIN-inp2
10、SIN-out2)当输入波为SIN11 、SIN11时SIN11-inp1SIN11-inp2SIN11-out3)当输入波为SIN22、SIN22时SIN22-inp1SIN22-inp2SIN22-out5) 当输入波为SIN33、SIN33时 SIN33-inp1 SIN33-inp2 SIN33-out6) 当输入波为SIN44、SIN44时SIN44-inp1SIN44-inp2SIN44-out7)当输入波为SIN44、SINSin44-inp1Sin-inp2SIN44、SIN-Out8)当输入波为SIN11、SIN33时Sin11-inp1Sin33-inp2Sin11.sin33-Out9)当输入波为SIN22、SIN时Sin22-inp1Sin-inp2Sin22.Sin-Out
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1