找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 14326|回復(fù): 6
收起左側(cè)

單片機(jī)語(yǔ)音識(shí)別源碼與資料(ASR M08-B模塊arduino與51驅(qū)動(dòng))

  [復(fù)制鏈接]
ID:279854 發(fā)表于 2018-1-26 09:59 | 顯示全部樓層 |閱讀模式
ASR M08-B語(yǔ)音識(shí)別模塊的測(cè)試方法:
①打開(kāi)“ASR M08-B設(shè)置軟件 V3.2.exe”。
②選擇“串口號(hào)”、“打開(kāi)串口”、點(diǎn)選“十六進(jìn)制顯示”。
③將USB轉(zhuǎn)串口模塊連接到語(yǔ)音識(shí)別模塊上。接線方法如下:
  語(yǔ)音模塊TXD --> USB模塊RXD
  語(yǔ)音模塊RXD --> USB模塊TXD
  語(yǔ)音模塊GND --> USB模塊GND
  語(yǔ)音模塊3V3 --> USB模塊3V3(此端為3.3V電源供電端。)
④將模塊的開(kāi)關(guān)撥到“A”端,最好再按一次上面的大按鈕(按一次即可,為了確保模塊工作在正確的模式)。
⑤對(duì)著模塊說(shuō)“開(kāi)燈”、“關(guān)燈”模塊會(huì)返回“0B”、“0A”,表示正常(注意:0B對(duì)應(yīng)返回值010,0B對(duì)應(yīng)返回值010,返回是16進(jìn)制顯示的嘛,設(shè)置的時(shí)候是10進(jìn)制設(shè)置的)。

使用說(shuō)明:指令集、模式切換及IO口的控制方法:
0.jpg

【6】使用說(shuō)明:關(guān)鍵詞、口令等的設(shè)置方法.jpg


ASR M08-B設(shè)置軟件 V3.2安裝說(shuō)明:

本軟件主要作用:通過(guò)PC端的USB口來(lái)設(shè)置語(yǔ)音識(shí)別模塊的參數(shù)。例如,增加或刪除要識(shí)別的句子、串口的返回信息等等。

=======================================
不要?jiǎng)h除本目錄下的“Backup.txt”文件。

【特別注意:】

①“ASR M08-B設(shè)置軟件 V3.2.exe”文件與“Backup.txt”文件必須放在同一個(gè)根目錄下。其中“Backup.txt”文件為產(chǎn)品恢復(fù)初始化設(shè)置用的指令文件。

②建議將此文件夾復(fù)制到任何一個(gè)盤符下,然后通過(guò)右鍵點(diǎn)擊“ASR M08-B設(shè)置軟件 V3.2.exe”---發(fā)送到---桌面快捷方式,這樣我們就可以直接在桌面打開(kāi)了。注意,建立了快捷方式之后盤符下的文件夾就不要?jiǎng)恿�,否者路徑改變了就打不開(kāi)了。

③.如果雙擊軟件打不開(kāi),請(qǐng)檢查電腦是否安裝了Microsoft .NET Framework(2.0、3.0、3.5版本都可以),如果沒(méi)安裝,請(qǐng)百度搜索“.NET Framework”選擇2.0、3.0、3.5任何一個(gè)版本安裝。

---------------------------------------
如果是WIN7系統(tǒng)就要按照下面步驟來(lái)做了,因?yàn)閃IN7是自帶了Microsoft .NET Framework的:
控制面板--添加刪除程序--打開(kāi)或關(guān)閉windows功能,里面有.net framework 3.5.1 把那個(gè)挑勾上,就ok。如果勾上之后還是打不開(kāi)的話,還是建議重新下載一個(gè)安裝比較好。


=======================================
【問(wèn):為什么軟件返回區(qū)有時(shí)出現(xiàn)亂碼?】
=======================================
答:因?yàn)橛?jì)算機(jī)軟件在接收串口數(shù)據(jù)的時(shí)候有一個(gè)“數(shù)據(jù)緩沖區(qū)”,這個(gè)緩沖區(qū)有個(gè)時(shí)間的限定,如幾十毫秒時(shí)間到了軟件就需要對(duì)緩沖好的數(shù)據(jù)進(jìn)行顯示。如果剛在軟件顯示數(shù)據(jù)的瞬間,串口剛好又傳來(lái)了數(shù)據(jù),此時(shí)軟件還沒(méi)準(zhǔn)備好接收,這樣就形成了數(shù)據(jù)“丟包”,所以下次再顯示的時(shí)候因?yàn)閿?shù)據(jù)不完整,所有就顯示出來(lái)了亂碼。那為什么顯示英文字母和數(shù)字的時(shí)候不會(huì)亂碼,只有中文才會(huì)有亂碼呢?因?yàn)槊總€(gè)簡(jiǎn)體中文漢字都是由兩個(gè)字節(jié)的數(shù)據(jù)組合完成的,如果接收的過(guò)程中少接收了一個(gè)字節(jié),后面的漢字都會(huì)顯示錯(cuò)誤。而英文字母和數(shù)據(jù)都是一個(gè)字節(jié)組成的,所以不會(huì)造成亂碼。
    當(dāng)然,這個(gè)用戶實(shí)在理解不了的話也根本無(wú)須去理解他,只要知道如果出現(xiàn)了顯示亂碼其實(shí)是正常的,產(chǎn)品發(fā)送出來(lái)的數(shù)據(jù)其實(shí)是100%正確的,只是顯示的時(shí)候異常而已,這個(gè)跟產(chǎn)品質(zhì)量是沒(méi)有關(guān)系的。
=================================================================
0.png

51單片機(jī)語(yǔ)音識(shí)別10路臺(tái)燈控制源程序如下(附件中還有arduino 2560與arduino uno的源碼):
  1. //注意,這里以控制臺(tái)燈舉例,實(shí)際上不一定是用來(lái)控制臺(tái)燈的,
  2. //增加多路請(qǐng)對(duì)比1路的程序和兩路的程序,按照同樣的方法修改程序。

  3. //使用此程序前,模塊要設(shè)置好關(guān)鍵詞。

  4. #include <at89x51.h>
  5. #define kai 0; //定義字符串kai代表低電平0
  6. #define guan 1;//定義字符串guan代表高電平1
  7. unsigned char a;//a用來(lái)存放串口接收到的數(shù)據(jù)(即模塊的返回值)
  8. sbit JDQ=P2^7; //繼電器接P2.7,P2.7腳出來(lái)接一個(gè)10K電阻再接到S8550三極管的基極
  9.                //集電極接地,發(fā)射極接繼電器的線圈到5V電源上,
  10.                            //線圈兩腳之間接一個(gè)IN4007二極管,注意二極管的負(fù)極要接5V電壓處
  11.                            //正極接三極管的發(fā)射極。
  12.                           
  13. sbit JDQ2=P2^6; //第二路繼電器接P2.6,P2.6腳出來(lái)接一個(gè)10K電阻再接到S8550三極管的基極
  14.                //集電極接地,發(fā)射極接繼電器的線圈到5V電源上,
  15.                            //線圈兩腳之間接一個(gè)IN4007二極管,注意二極管的負(fù)極要接5V電壓處
  16.                            //正極接三極管的發(fā)射極。  下同... 請(qǐng)參照控制1路的源碼根目錄下的原理圖。
  17. sbit JDQ3=P2^5;
  18. sbit JDQ4=P2^4;
  19. sbit JDQ5=P2^3;
  20. sbit JDQ6=P2^2;
  21. sbit JDQ7=P2^1;
  22. sbit JDQ8=P2^0;
  23. sbit JDQ9=P1^7;
  24. sbit JDQ10=P1^6;
  25. main()
  26. {
  27.         TMOD=0x20;//定時(shí)器1使用初值自動(dòng)重裝方式,方式2
  28.         TH1=0xfd;
  29.         TL1=0xfd;//9600波特率初值
  30.         TR1=1;//允許定時(shí)器計(jì)數(shù)
  31.         SM0=0;//方式1設(shè)置
  32.         SM1=1;
  33.         REN=1; //允許串口接收
  34.         EA=1;  //開(kāi)總中斷
  35.         ES=1;  //開(kāi)串口中斷
  36.         while(1)
  37.         {
  38.                 //======================================================//
  39.            if(a==1)//如果a=1,P1.7=0,繼電器吸合,臺(tái)燈打開(kāi)
  40.            {
  41.                     JDQ=kai; //P1.7=0,
  42.            }
  43.            else if(a==2)//如果a=2,P1.7=1,繼電器松開(kāi),臺(tái)燈關(guān)閉
  44.            {
  45.                            JDQ=guan;//P1.7=1,
  46.            }
  47.            //=====================================================//
  48.            else if(a==3)
  49.            {
  50.                            JDQ2=kai;//如果a=3,第二路開(kāi)
  51.            }
  52.            else if(a==4)
  53.            {
  54.                            JDQ2=guan;//如果a=4,第二路關(guān)
  55.            }
  56.            //====================================================//
  57.            else if(a==5)
  58.            {
  59.                            JDQ3=kai;//如果a=3,第三路開(kāi)
  60.            }
  61.            else if(a==6)
  62.            {
  63.                            JDQ3=guan;//如果a=4,第三路關(guān)
  64.            }
  65.            //====================================================//
  66.            else if(a==7)
  67.            {
  68.                            JDQ4=kai;//如果a=3,第四路開(kāi)
  69.            }
  70.            else if(a==8)
  71.            {
  72.                            JDQ4=guan;//如果a=4,第四路關(guān)
  73.            }
  74.            //====================================================//
  75.            else if(a==9)
  76.            {
  77.                            JDQ5=kai;//如果a=3,第五路開(kāi)
  78.            }
  79.            else if(a==10)
  80.            {
  81.                            JDQ5=guan;//如果a=4,第五路關(guān)
  82.            }
  83.            //====================================================//
  84.            else if(a==11)
  85.            {
  86.                            JDQ6=kai;//如果a=3,第六路開(kāi)
  87.            }
  88.            else if(a==12)
  89.            {
  90.                            JDQ6=guan;//如果a=4,第六路關(guān)
  91.            }
  92.            //====================================================//
  93.            else if(a==13)
  94.            {
  95.                            JDQ7=kai;//如果a=3,第七路開(kāi)
  96.            }
  97.            else if(a==14)
  98.            {
  99.                            JDQ7=guan;//如果a=4,第七路關(guān)
  100.            }
  101.            //====================================================//
  102.            else if(a==15)
  103.            {
  104.                            JDQ8=kai;//如果a=3,第八路開(kāi)
  105.            }
  106.            else if(a==16)
  107.            {
  108.                            JDQ8=guan;//如果a=4,第八路關(guān)
  109.            }
  110.            //====================================================//
  111.            else if(a==17)
  112.            {
  113.                            JDQ9=kai;//如果a=3,第九路開(kāi)
  114.            }
  115.            else if(a==18)
  116.            {
  117.                            JDQ9=guan;//如果a=4,第九路關(guān)
  118.            }
  119.            //====================================================//
  120.            else if(a==19)
  121.            {
  122.                            JDQ10=kai;//如果a=3,第十路開(kāi)
  123.            }
  124.            else if(a==20)
  125.            {
  126.                            JDQ10=guan;//如果a=4,第十路關(guān)
  127.            }
  128.           
  129.            else ;
  130.                   
  131.                    //也可以用switch語(yǔ)句寫,各人喜好吧...
  132.        
  133.         }

  134. }

  135. void serial() interrupt 4 //中斷法
  136. {
  137.         if(RI==1)//如果是接收中斷,進(jìn)行下面工作
  138. ……………………

  139. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
0.png

所有資料51hei提供下載:
ASR M08-B資料(2016-07-13).rar (1.4 MB, 下載次數(shù): 117)



評(píng)分

參與人數(shù) 2黑幣 +10 收起 理由
oanovsznovn + 5 贊一個(gè)!
Leaf08 + 5 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:404307 發(fā)表于 2018-11-20 09:50 | 顯示全部樓層
謝謝分享,正在找資料
回復(fù)

使用道具 舉報(bào)

ID:13891 發(fā)表于 2019-1-25 20:41 | 顯示全部樓層
正在學(xué)習(xí)中,謝謝了!
回復(fù)

使用道具 舉報(bào)

ID:13891 發(fā)表于 2019-1-25 20:42 | 顯示全部樓層
正在學(xué)習(xí)中,多謝了!
回復(fù)

使用道具 舉報(bào)

ID:472975 發(fā)表于 2019-1-25 22:04 來(lái)自觸屏版 | 顯示全部樓層
謝謝,學(xué)習(xí)了。
回復(fù)

使用道具 舉報(bào)

ID:487818 發(fā)表于 2019-3-10 12:34 | 顯示全部樓層
可以可以可以
回復(fù)

使用道具 舉報(bào)

ID:839092 發(fā)表于 2020-11-5 08:59 | 顯示全部樓層
學(xué)習(xí)使用STC單片機(jī)中,謝謝分享
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表