声音方位传感器的设计
[日期:2009-8-23 ] [来源:东哥电子 作者:admin]
电路图.四个 lm386 都是一样的
程序如下
#include
void main(void) {
long int b;
while(1)
{
b=0;
if(P3_0==1&&P3_1==1&&P3_2==1&&P3_3==1)P1 = 0xFF;
if(P3_0==0&&P3_1==1&&P3_2==1&&P3_3==1)
{
for(;b<11110;)
{
b++;
P1_0=0;
if(b<1111) P1_1=0;
else P1_1=1;
}
P1_0=1;
}
b=0;
if(P3_0==1&&P3_1==0&&P3_2==1&&P3_3==1)
{
for(;b<11110;)
{
b++;
P1_0=0;
if(b<2222) P1_1=0;
else P1_1=1;
}
P1_0=1;
}
b=0;
if(P3_0==1&&P3_1==1&&P3_2==0&&P3_3==1)
{
for(;b<11110;)
{
b++;
P1_0=0;
if(b<3333) P1_1=0;
else P1_1=1;
}
P1_0=1;
}
b=0;
if(P3_0==1&&P3_1==1&&P3_2==1&&P3_3==0)
{
for(;b<11110;)
{
b++;
P1_0=0;
if(b<4444) P1_1=0;
else P1_1=1;
}
P1_0=1;
}
}
}
原理:
从程序可以看出为节省 IO 口采用脉宽输出。
输出信号:
声音确认 P1_0___------------------------_____一秒
第一传感器有信号输出 P1_1___----_______________0.1 秒
第二传感器有信号输出 P1_1___--------____________0.2 秒
第三传感器有信号输出 P1_1___------------__________0.3 秒
第四传感器有信号输出 P1_1___----------------________0.4 秒
这个可以试试做一个.如果有一个可以判断你说话的方向的话.可以做很多智能控制