times New Roman">我用单片机采集热电偶温度,由于采集到的数据不稳定,就编写了一个中位值平均滤波程序,程序如下,但在KEIL C 51中编译不能生成HEX文件,提示“Target not created”,如果不加入该滤波程序,编译正常,求高手指点。
if(readtempflag==1) // 計時器中斷到 { readtempflag=0; // 計時器標誌清0 tempnum[number]=readtemp(); // 讀取1个溫度數據//*對一維數組tempnum[10]排序*// for(j=0;j<9;j++) for(k=0;k<9-j;k++) { if(tempnum[k]>tempnum[k+1]) { count=tempnum[k]; tempnum[k]=tempnum[k+1]; tempnum[k+1]=tempnum[k]; } }//*選取排好序的數組中的中間6個值求平均*// for(n=2;n<8;n++) { sum=sum+tempnum[n]; sum=sum/(n-1); } number++; if(number==10) { number=0; }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
你贴的程序是放在主函数中吗?
并且你是用定时中断来确定读取数据的时间,如果每次先读10个值,再滤波,效果应该也差不多吧
一周热门 更多>