国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Arduino與LU-ASR01語音識別模塊的雙向串口通信實現(xiàn)

這篇具有很好參考價值的文章主要介紹了Arduino與LU-ASR01語音識別模塊的雙向串口通信實現(xiàn)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

? ? 之前我寫了一篇《Arduino的智能語言輸入實現(xiàn)》,討論了Arduino與LU-ASR01之間通過串口通信實現(xiàn)Arduino的中文語音輸入,不過那個通信是不完整的,因為LU-ASR01的串口只有一個發(fā)送端口TX,而沒有接收端口RX。其實在真正的應用中,LU-ASR01通常也需要接收上位機的數(shù)據(jù),例如為確保上位機已經(jīng)收到LU-ASR01發(fā)送的數(shù)據(jù),上位機需要返回一個已收到數(shù)據(jù)的應答,又例如上位機想讓LU-ASR01發(fā)出某條語音消息或讓LU-ASR01進行某個操作,都需要由上位機發(fā)送數(shù)據(jù),然后由LU-ASR01接收數(shù)據(jù)后,進行相應的處理。

? ? 為解決LU-ASR01的串口沒有接收端口RX這個問題,我們可以利用LU-ASR01的I/O端口(前文介紹過LU-ASR01共有8個I/O端口),取其中的2個端口挪作串口通信用,然后采用軟串口通信的方式來實現(xiàn)Arduino與LU-ASR01之間的雙向串口通信。

? ? 因為在網(wǎng)上查找不到一點LU-ASR01模塊的軟串口通信資料,只能通過不斷地測試,因為手頭連最基本檢測工具示波器等都沒有,只有一臺電腦、一塊Arduino板和一塊LU-ASR01板,為檢測軟串口有沒有發(fā)送數(shù)據(jù),我甚至只能連接LED到串口,查看在串口發(fā)送數(shù)據(jù)時LED有沒有閃爍。經(jīng)歷了數(shù)十次的失敗,幾乎已經(jīng)絕望地想放棄了LU-ASR01的軟串口通信實現(xiàn),哈哈,最后當然成功啦,不然我就寫不了這篇文章了。

? ? 閑話不說了,本次實驗就是通過由LU-ASR01發(fā)送命令,Arduino收到該命令后,再返回發(fā)送該命令數(shù)據(jù)(即同樣的數(shù)值)到LU-ASR01作為應答,最后LU-ASR01收到了Arduino發(fā)回的該命令數(shù)據(jù),進行比較后(即判別發(fā)送的數(shù)據(jù)與接收到的數(shù)據(jù)是否相等),確認該命令發(fā)送成功了。

? ?本次實驗中,Arduino UNO仍然采用硬件串口通信,使用TX和RX端口,LU-ASR01則使用IO6端口作為發(fā)送數(shù)據(jù)的軟TX,IO7端口作為接收數(shù)據(jù)的軟RX。由Arduino提供5V電源給LU-ASR01(下圖中的紅黑2線),Arduino的TX連接到LU-ASR01的IO7端口(軟RX),Arduino的RX連接到LU-ASR01的IO6端口(軟TX),連接圖如下:

Arduino與LU-ASR01語音識別模塊的雙向串口通信實現(xiàn)

LU-ASR01仍然采用“天問block”的圖形化編程平臺,下面是在“天問block”上的完整程序:

Arduino與LU-ASR01語音識別模塊的雙向串口通信實現(xiàn)

Arduino與LU-ASR01語音識別模塊的雙向串口通信實現(xiàn)?

?

然后我們將下面的程序下載到Arduino UNO板,完整程序如下:

/*

???Arduino與ASR01語音識別模塊的串口通訊實驗

???為確保ASR01發(fā)送的數(shù)據(jù)能夠接收到,采用應答方式,Arduino每接收到一個可識別的

???命令后,都會將這個命令會送給ASR01

*/

// 定義引腳

const int LedPin = ?13; ?????// led連接的引腳,作為LED燈的正極

char Txbyte; ?//串口發(fā)送的字符數(shù)據(jù)

char Rxbyte; ?//串口讀取的字符數(shù)據(jù)

//初始化

void setup() {

??Serial.begin(9600); //設置串口波特率9600

??pinMode(LedPin, OUTPUT); ?//設置LedPin ???

}

//主程序

void loop() {

????if(Serial.available() > 0){ //當串口緩沖區(qū)有數(shù)據(jù)

??????Rxbyte=char(Serial.read());

????????if(Rxbyte==0x21) { ???//當Rxbyte為0x21則LedPin置高電平,即開燈

??????????Serial.write(Rxbyte);

??????????digitalWrite(LedPin, HIGH);

????????}

????????if(Rxbyte==0x22) { ???//當Rxbyte為0x22則LedPin置低電平,即關燈

??????????Serial.write(Rxbyte);

??????????digitalWrite(LedPin, LOW);

????????}

????????if(Rxbyte==0x20){ ????//當Rxbyte為0x20則Led燈閃3下

??????????Serial.write(Rxbyte);

??????????for(int i=0;i<3;i++){ ??//Led燈閃3下

????????????digitalWrite(LedPin, HIGH);

????????????delay(100);

????????????digitalWrite(LedPin, LOW);

????????????delay(100);

??????????}

????????}

????????delay(2);

??????}

}

? ? 兩邊的程序下載完后,連接好4條聯(lián)線,LU-ASR01首先會播報“我們正在進行實驗,請呼喚我“不赦先生”喚醒我。我暫時休息了,有事請呼喚我:不赦先生”,然后我們呼叫“不赦先生”,則LU-ASR01回答“我在”后就通過軟串口發(fā)送了一個字節(jié)的命令:0x20,Arduino收到0x20后,再次發(fā)送0x20到LU-ASR01;當LU-ASR01收到數(shù)據(jù)后,與之前發(fā)送的數(shù)據(jù)進行比較,如果相等,則播報:“阿杜已經(jīng)收到命令了”,否則等待1秒鐘,沒有收到正確的數(shù)據(jù)0x20,則播報:“超時了,阿杜沒有收到命令,請重新發(fā)”(這里說明下,為簡化程序,程序中沒有再次重新發(fā)送該數(shù)據(jù))。接著可以測試“打開燈光”和“關閉燈光”。文章來源地址http://www.zghlxwxcb.cn/news/detail-446770.html

到了這里,關于Arduino與LU-ASR01語音識別模塊的雙向串口通信實現(xiàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • STM32使用ASR01語音播報模塊

    STM32使用ASR01語音播報模塊

    先下載天問block軟件 點擊這里下載天問block ?選上設備: ?添加擴展: ? 自己再根據(jù)鹿小班模塊進行操作進行相關操作,先接上usb數(shù)據(jù)線 記得先生成模型再去編譯下載 ? ?發(fā)送給單片機通信時只需要vcc gnd 還有tx接上單片機rx,如果想用stm32控制語音模塊,可以接線,讓asr01讀

    2024年02月16日
    瀏覽(199)
  • 通過串口中斷的方式進行ASR-01S模塊與STM32通信(問題與解決)

    最近在做一個智能家居的項目,需要實現(xiàn)語音控制的功能,于是我選用了ASR-01S模塊與STM32通信,這個模塊最大的好處在于有配套的編程軟件和語音庫,不用自己訓練且編程簡單(少兒編程的程度)。ASR-01S的代碼架構在這不多說,總之在收到語音后它會通過串口發(fā)送一串命令給

    2024年04月22日
    瀏覽(169)
  • MP3 Module 語音播放模塊(Arduino和串口控制)

    MP3 Module 語音播放模塊(Arduino和串口控制)

    Emakefun MP3語音模塊內(nèi)置8 MB存儲空間,無需外接SD卡,若一個音效以秒計算,8M的內(nèi)存可以存儲兩百多個音效供您選用。存儲方式和使用U盤一樣簡單,可隨時更新模塊內(nèi)的音效。使用上非常的簡單,使用PH2.0接口,減少了接線的煩惱;支持MP3、WAV音頻格式,可做指定播放,循環(huán)

    2024年02月07日
    瀏覽(128)
  • AI智能語音識別模塊(二)——基于Arduino的語音控制MP3播放器

    AI智能語音識別模塊(二)——基于Arduino的語音控制MP3播放器

    在前面一篇文章里我們對AI智能語音識別模塊進行了介紹,并對離線語音模組下載固件的過程進行了一個簡單描述,不知道大家還記不記得,這篇文章也是鴿了好久,,本文將用這個語音控制模塊結合前面介紹的DFPlayer Mini MP3模塊來做一個有趣的應用,在上一期文章中,我們只

    2024年02月03日
    瀏覽(29)
  • ASR項目實戰(zhàn)-語音識別

    本文深入探討語音識別處理環(huán)節(jié)。 本階段的重點特性為語音識別、VAD、熱詞、文本的時間偏移、講話人的識別等。 業(yè)界流派眾多,比如Kaldi、端到端等,具體選擇哪一種,需要綜合考慮人員能力、訓練數(shù)據(jù)量和質量、硬件設施、交付周期等,作出相對合理的交付規(guī)劃。 基于

    2024年02月04日
    瀏覽(31)
  • 語音識別 - ASR whisper

    語音識別 - ASR whisper

    目錄 1. 簡單介紹 2.?代碼調(diào)用 Introducing Whisper https://openai.com/blog/whisper/ OpenAI 的開源自動語音識別神經(jīng)網(wǎng)絡 whisper 安裝 Python 調(diào)用

    2024年02月12日
    瀏覽(22)
  • ASR 語音識別接口封裝和分析

    ASR 語音識別接口封裝和分析

    這個文檔主要是介紹一下我自己封裝了 6 家廠商的 短語音識別 和 實時流語音識別 接口的一個包,以及對這些接口的一個對比。分別是,阿里,快商通,百度,騰訊,科大,字節(jié)。 zxmfke/asrfactory (github.com) 之前剛好在測試各家的語音識別相關功能,但是每家的返回值都不同,

    2024年02月13日
    瀏覽(25)
  • 開源(離線)中文語音識別ASR(語音轉文本)工具整理

    開源(離線)中文語音識別ASR(語音轉文本)工具整理 Open AI在2022年9月21日開源了號稱其英文語音辨識能力已達到人類水準的Whisper神經(jīng)網(wǎng)絡,且它亦支持其它98種語言的自動語音辨識。 Whisper系統(tǒng)所提供的自動語音辨識(Automatic Speech Recognition,ASR)模型是被訓練來運行語音辨識與翻

    2024年02月13日
    瀏覽(102)
  • Python使用PaddleSpeech實現(xiàn)語音識別(ASR)、語音合成(TTS)

    Python使用PaddleSpeech實現(xiàn)語音識別(ASR)、語音合成(TTS)

    目錄 安裝 語音識別 補全標點 語音合成 參考 PaddleSpeech是百度飛槳開發(fā)的語音工具 注意,PaddleSpeech不支持過高版本的Python,因為在高版本的Python中,飛槳不再提供paddle.fluid API。這里面我用的是Python3.7 需要通過3個pip命令安裝PaddleSpeech: 在使用的時候,urllib3庫可能會報錯,因

    2024年04月25日
    瀏覽(29)
  • Python使用whisper實現(xiàn)語音識別(ASR)

    目錄 Whisper的安裝 Whisper的基本使用 識別結果轉簡體中文 斷句 Whisper是OpenAI的一個強大的語音識別庫,支持離線的語音識別。在使用之前,需要先安裝它的庫: 使用whisper,還需安裝setuptools-rust: 但是,whisper安裝時,自帶的pytorch可能有些bug,因此需要卸載重裝: 卸載: 重裝

    2024年03月20日
    瀏覽(99)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包