Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Control via speech recognition

Status
Not open for further replies.

amin.pakr

Newbie level 6
Joined
Oct 30, 2011
Messages
11
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,355
Hi there!
I want to control my PIC16F877 by voice commands (speech recognition).
And use it as smart house application
plz help me to find the best speech recognition circuit to be sensitive to my voice and cheap in the same time.
 

thnx 1nafar for reply
But , are there more options?!!
 

hi amin
this is one easy options , other option for this project is :
-If you need best result in your project , you can use DSP (Digital signal processing - Wikipedia, the free encyclopedia) . DSP is a powerful chip for signal processing and have many option for your project.
-in PIC16F877 program define some variable and in a while read ADC value and store that in variable . EX.

int value [50];
int value2 [50];
int test;
int i;

while ( input(PIN_B0) ) {
set_adc_channel( 0 );
for(i=0; i<=50; ++i) {
delay_ms( 50 );

value = read_adc();
}
printf("sampling has been done");
break;

}

in this program ,when pinb.0 is set sampling started and PIC16F877 read ADC(0) value , the ADC value take from a microphone , it connected to pin adc(0) with a noise filter .
after the for statement has been done , we have 50 sample and can store that for comparison with next input voice . EX:

while ( input(PIN_b1) ) {
set_adc_channel( 0 );
for(i=0; i<=50; ++i) {
delay_ms( 50 );

value1 = read_adc();
if ((value1 >value -5) & (value1 <value +5))
++test;
}
printf("comparison has been done");
break;

}

if (test>45)
set pinx.x
..........
in in this stage , when pinB.1 is set , Micro controller start sampling from adc(0) value and comparison that with last stored sample . in this status if value1 =value or value1>value-10 or value1<value+10 then condition is ok and test=test+1 ...
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top