سلام
من می خواستم با این ماژول بتونم چند تا خروجی رو فعال کنم اما تو برنامه نویسش مشکل پیدا کردم .
کسی می تونه در این زمینه راهنماییم کنه؟
ممنونم
نمایش نسخه قابل چاپ
سلام
من می خواستم با این ماژول بتونم چند تا خروجی رو فعال کنم اما تو برنامه نویسش مشکل پیدا کردم .
کسی می تونه در این زمینه راهنماییم کنه؟
ممنونم
سلام
شما PDF پشنهادی سایت روخوندید؟
شما یا میتونید از پینهای میکروکنترلرتون برای این کار استفاده کنید یا این که میتونید ازپینهای خود ماژول استفاده کنید.
اگه از میکرو بخواید استفاده کنید که از manual کمک بگیرید
http://www.elechouse.com/elechouse/i...VR3_manual.pdf
اگر قصد دارید از پینهای خود ماژول استفاده کنید می تونید از لینک زیر مثال دومش استفاده کنید:
Voice Recognition Module -- Arduino Compatible [AU_VOI_REC_00A] - $23.50 : Elechouse, Arduino Play House
سلام
الان این کد برای فعالسازی 3 تا خروجی ,fan ,led ,tv هر کدام با یه فرمان صوتی برای 0.5 ثانیه درسته؟
/**
************************************************** ****************************
* @file vr_sample_control_led.ino
* @author JiapengLi
* @brief This file provides a demostration on
how to control led by using VoiceRecognitionModule
************************************************** ****************************
* @note:
voice control led
************************************************** ****************************
* @section HISTORY
2013/06/13 Initial version.
*/
#include <SoftwareSerial.h>
#include "VoiceRecognitionV3.h"
/**
Connection
Arduino VoiceRecognitionModule
2 -------> TX
3 -------> RX
*/
VR myVR(2,3); // 2:RX 3:TX, you can choose your favourite pins.
uint8_t records[7]; // save record
uint8_t buf[64];
int led = 13;
int fan = 12 ;
int tv = 11 ;
#define onRecord (0)
#define offRecord (1)
/**
@brief Print signature, if the character is invisible,
print hexible value instead.
@param buf --> command length
len --> number of parameters
*/
void printSignature(uint8_t *buf, int len)
{
int i;
for(i=0; i<len; i++){
if(buf[i]>0x19 && buf[i]<0x7F){
Serial.write(buf[i]);
}
else{
Serial.print("[");
Serial.print(buf[i], HEX);
Serial.print("]");
}
}
}
/**
@brief Print signature, if the character is invisible,
print hexible value instead.
@param buf --> VR module return value when voice is recognized.
buf[0] --> Group mode(FF: None Group, 0x8n: User, 0x0n:System
buf[1] --> number of record which is recognized.
buf[2] --> Recognizer index(position) value of the recognized record.
buf[3] --> Signature length
buf[4]~buf[n] --> Signature
*/
void printVR(uint8_t *buf)
{
Serial.println("VR Index\tGroup\tRecordNum\tSignature");
Serial.print(buf[2], DEC);
Serial.print("\t\t");
if(buf[0] == 0xFF){
Serial.print("NONE");
}
else if(buf[0]&0x80){
Serial.print("UG ");
Serial.print(buf[0]&(~0x80), DEC);
}
else{
Serial.print("SG ");
Serial.print(buf[0], DEC);
}
Serial.print("\t");
Serial.print(buf[1], DEC);
Serial.print("\t\t");
if(buf[3]>0){
printSignature(buf+4, buf[3]);
}
else{
Serial.print("NONE");
}
Serial.println("\r\n");
}
void setup()
{
/** initialize */
myVR.begin(9600);
Serial.begin(115200);
Serial.println("Elechouse Voice Recognition V3 Module\r\nControl LED sample");
pinMode(led, OUTPUT);
if(myVR.clear() == 0){
Serial.println("Recognizer cleared.");
}else{
Serial.println("Not find VoiceRecognitionModule.");
Serial.println("Please check connection and restart Arduino.");
while(1);
}
if(myVR.load((uint8_t)onRecord) >= 0){
Serial.println("onRecord loaded");
}
if(myVR.load((uint8_t)offRecord) >= 0){
Serial.println("offRecord loaded");
}
}
void loop()
{
int ret;
ret = myVR.recognize(buf, 50);
if(ret>0){
switch(buf[1]){
case onRecord:
/** turn on LED */
digitalWrite(led, HIGH);
delay (500) ;
digitalWrite(led, LOW);
break;
default:
Serial.println("Record function undefined");
break;
}
/** voice recognized */
printVR(buf);
}
if(ret>0){
switch(buf[2]){
case onRecord:
/** turn on LED */
digitalWrite(fan, HIGH);
delay (500) ;
digitalWrite(fan, LOW);
break;
default:
Serial.println("Record function undefined");
break;
}
/** voice recognized */
printVR(buf);
}
if(ret>0){
switch(buf[3]){
case onRecord:
/** turn on LED */
digitalWrite(tv, HIGH);
delay (500) ;
digitalWrite(tv, LOW);
break;
default:
Serial.println("Record function undefined");
break;
}
/** voice recognized */
printVR(buf);
}
}