I still think it's your PS or a cable near your microphone. Here's the loop of my code.
void loop(){
if(jj++%30==0){ //was overflow or first time
for(li=0,i=0;i<2000;i++){
li+=analogRead(3);
delayMicroseconds(14);
}
//Serial.println("Cal");
avg=li/2000;
//Serial.println(avg);
} //first time
nhit=nsil=mxp=np=0;
for(mx=0,li=0,lj=0,k=0;k<10000;k++){
i=analogRead(3);
delayMicroseconds(50);
j=analogRead(3);
delayMicroseconds(50-5);
//delay(2); Narcoleptic doesn't delay
ii=abs(((i+j)>>1)-avg);
li+=ii;
if(k==0)was=ii;
lj+=abs(was-ii);
was=ii;
if(k%100==0){
if(mxp>=avg+30)np++;
mxp=0;
}
if(i>mx)mx=i;
if(j>mx)mx=j;
if(j>mxp)mxp=j;
if(ii>=30)nhit++;
if(ii<=5)nsil++;
//Serial.print(i);WR32
//Serial.print(j);WR32
}
//Narcoleptic.delay(4000);
li-=12000;
if(li<0)li=0;
mx-=avg;
mx-=4;
nmid=10000-nsil-nhit;
if(nmid>=100){ //100 or 1000 USB
// if(!nrow)printDate();
printDate();
fprn(++nrow,3);WR32
fprn(li/1000,4);WR32 //total energy
fprn(lj/1000,4);WR32 //high freq only near limit or >1/2, does not change with truck or heater or claps or snaps or clicks
fprn(mx,3);WR32 //peak value
fprn(np,2);WR32 //# periods out of 100/sec
fprn(nhit,4);WR32 //# >=30
fprn(nmid,4);WR32 //# <30,>5
WR13
} else nrow=0;
}