學習STC51單片機43(芯片為STC89C52RCRC)智能小車9(語音識別小車)

每日一言

????????不必與他人比較速度,你走的每一步都在書寫自己的傳奇。

案例:語音識別小車

這個是最后一個功能了,其實就是用語音功能讓小車自己切換各種模式,當然了我們需要先學習一下語音模塊

硬件:SU-03T

這個叫做非特定語音識別模塊:就是不分辨聲調音色,同一個指令大家的聲音都會可以識別,這個就叫做非特定語音識別模塊,

還有一個叫做特定語音識別模塊,比如我們熟悉的蘋果的siri就是可以識別音色和音調等等確保只有你的聲音可以識別

我們這個非特定語音模塊的話用于一些項目,還有玩具上面,還有一些公司的小產品上是一個非常好的模塊,實際上就是結合我們的代碼層面就是將多個功能的代碼進行整合在一個程序里,然后我們用語音模塊的觸發條件進行判斷,就可以實現某個功能

怎么使用:

我們拿到模塊之后廠家有一個說明書,我就直接說了,就是我們需要用一個USB轉TTL的模塊將

就是這樣,還有一個是VCC接串口工具的5v,就一定要記住模塊的vcc是接串口工具的5V而不是VCC,我之前TM的接的是VCC搞了我好久才發現的是我接錯了

任何時候一定不能怪硬件,肯定是自己的問題

好了接好線后我們去打開這個網址智能公元/AI產品零代碼平臺

步驟

最后完成保存后發布版本,然后下載SDK

以上就是所有的步驟了,對這個模塊的簡單使用

最重要的是這個步驟了,配置控制條件,就是我們說的命令,語音模塊識別到后會給出相應的反應,比如這邊我們使用的是電平控制,如果說打開循跡模式,那么A252627就會根據我們的配置傳出不同的高低電平給單片機比如下發的代碼

因為對應著我們的代碼實現,我們進行對端口的電平設置來實現我們的需要實現的功能,

好了這個配置就這樣講完了

現在講我們怎么進行燒錄呢,首先要進行串口的連接上面已經講過了

用這個串口工具哈

隨后我們下載好的SDK進行解壓,一定是要是全英文的路徑,不然容易出錯

根據以上的步驟一路下來就可以啦,記得這個點擊燒錄的時候要將模塊上面的電源從0ff到ON這樣才可以燒錄,或者是接一個安卓的線那也可以直接進行燒錄

燒錄完之后就可以進行對話啦

代碼層面我們怎么寫呢???

現在輪到是代碼層面

我們先將循跡、避障、跟隨三種模式融合到一起

當然了我們先想一下我們的每個程序如果都要融合在一個程序里面,那么是不是就是要考慮定時器的占用,當然了我們的舵機和超聲波的測距這兩個都需要各自占用一個定時器,真的沒有辦法去通過軟件來進行設計來進行定時器的占用,然后我們電機的差速行駛這邊是不是也需要一個定時器,但是真的沒有辦法在占用了,因為電機要是占用一個的話,因為電機是永遠在占用的無法通過軟件的設計去控制定時器的使用,所以我們要取消電機的差速行駛了,所以我們的藍牙小車的功能也加不進去了,因為串口中斷也需要用一個定時器主要就是配置是不一樣的,我們超聲波的定時器唄不能先開始計時的,要等ECHO收到高電平才能開始,所以藍牙小車加不進去了,好了,現在我們分析好了現狀我們來寫代碼

整合代碼

主要就是講main.c文件的代碼,因為其他的都不變

這個的話就是我們將避障的代碼封裝成一個函數,利于我們的調用,當然那些該移植引腳的代碼,要自己去移植,我不講,之前都講過了

這個的話就是我們將循跡的代碼封裝成一個函數,利于我們的調用,當然那些該移植引腳的代碼,要自己去移植,我不講,之前都講過了

這個的話就是我們將跟隨小車的代碼封裝成一個函數,利于我們的調用,當然那些該移植引腳的代碼,要自己去移植,我不講,之前都講過了

主要就是這邊了,因為我們模塊的引腳我們使用的是A25 A26 A27 在教配置的時候也有說過,并配置好了電平,所以啊我們說話說到關鍵詞的時候單片機就會接受到這些高低電平的信號,所以我們就可以根據這個特性進行調用想要執行的功能。另外我們這邊也應用了OLED屏,加入一些有意思的元素,這個也是需要移植的,將之前代碼的OLED二次開發的案例中的OLED.c和OLED.h還有OledFont.h都移植到程序中,然后我們就在main函數中班添加OLED的初始化、清屏函數、必要的,然后再用那個你要顯示的內容寫上就可以了

這個是全部的引腳聲明

這些就是我的語音控制小車的所有內容了

先暫時展示沒有下地跑的視頻(等鋰電池到還有電烙鐵到、后續更新下地跑的小車)

語音控制小車

以后要學習C++了先提升代碼能力,學完C++在學stm32,學完32再學Linux

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/85552.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/85552.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/85552.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Android 中 解析 XML 字符串的幾種方式

在 Android 開發中,解析 XML 文件有多種方式,每種方式都有其特點和適用場景。常見的 XML 解析方式有 DOM 解析、SAX 解析 和 XmlPullParser 解析。 1、DOM 解析 DOM(Document Object Model)解析是一種基于樹結構的解析方式&#…

云端算力革命:川翔云電腦如何重新定義創作自由

在設計與科技深度融合的時代,高性能硬件的桎梏正成為創意釋放的最大障礙。川翔云電腦以云端算力為支點,通過彈性算力、高效存儲、多端接入三大核心優勢,讓頂級 GPU 資源觸手可及。 一、核心優勢:突破物理極限的云端工作站 彈性算…

1.容器技術與docker環境部署

一:docker概述 因為 Docker 輕便、快速的特性,可以使應用達到快速迭代的目的。每次小的變更,馬上就可以看到效果,而不用將若干個小變更積攢到一定程度再變更。每次變更一小部分其實是一種非常安全的方式,在開發環境中…

關于 RSA:RSA 加密算法過程

RSA 是一種非對稱加密算法,用“公鑰”加密,用“私鑰”解密,保證數據傳輸安全。 比喻理解:鎖和鑰匙 想象一下: 公鑰是“上鎖的鎖”,別人可以用它鎖住箱子(加密),但打不開…

SM3算法C語言實現(無第三方庫,帶測試)

一、SM3算法介紹 SM3算法是中國國家密碼管理局(OSCCA)于2010年發布的商用密碼散列函數標準,屬于我國自主設計的密碼算法體系之一 ,標準文檔下載地址為:SM3密碼雜湊算法 。SM3算法輸出長度為256位(32字節&a…

搜索二叉數(c++)

前言 在學習數據結構的時候我們學習過二叉樹,那啥是搜索二叉樹呢?我們知道單純的二叉樹沒有增刪查改的實際意義,因為沒有任何限制條件的二叉樹其實用處很局限。但是堆就不一樣了,他就是一個二叉樹加上了大小堆的限制條件&#xf…

vc MFC在opencv的Mat圖像上顯示中文:Mat轉位MFC的CImage,畫圖寫文字,再轉回Mat

vc MFC在opencv的Mat圖像上顯示中文:Mat轉位MFC的CImage,畫圖寫文字,再轉回Mat // Step 1 創建CImage獲取dc int iImgW matImgSized.cols; int iImgH matImgSized.rows; int iChannel matImgSized.channels(); bool bCon matImgSized.is…

Docker環境部署

目錄 一:Docker 概述 1.什么是 Docker 2:Docker 的優勢 3.Docker 的應用場景 4:Docker 核心概念 二:Docker 安裝 1:本安裝方式使用阿里的軟件倉庫 三:Docker 鏡像操作 1:獲取鏡像 2.查看鏡像信息 3.查看鏡像詳細信息 4.修改鏡像標簽(老名字新名字) 5:刪…

Axios 攔截器實現原理深度剖析:構建優雅的請求處理管道

在構建現代前端應用時,網絡請求處理是關鍵環節。作為最流行的HTTP客戶端庫之一,Axios通過其攔截器機制(Interceptors)提供了強大的請求/響應處理能力。本文將深入Axios源碼,揭示攔截器背后的精妙設計與實現原理。 一、…

寶塔安裝nginx-http-flv-module,音視頻直播,第二篇

1,先安裝環境安裝nginx 先卸載原有nigix nigix 大于等于 1.2.6 cd /www/server # 進入寶塔目錄 yum install git -y git clone https://gitee.com/winshining/nginx-http-flv-module.git 使用源碼安裝nigix 在 自定義模塊 區域點擊「添加」,填寫以下參…

低延遲4G專網:保障關鍵業務的實時通信

在工業互聯網、智慧園區、應急通信等對“實時性”要求極高的場景中,網絡延遲的高低,直接決定了業務運行的可靠性與安全性。IPLOOK依托多年核心網研發經驗,推出的低延遲4G專網解決方案,正是為此類關鍵業務打造的“通信專線”&#…

NLP語言發展路徑分享

自然語言處理初期發展歷程 早期:離散表示 one-hot(只表達“有/無”,語義完全丟失)→ n-gram(局部上下文,但高維稀疏)→ TF-IDF(考慮詞頻與權重,但不能表達詞關聯&#x…

如何將文件從安卓設備傳輸到電腦?

將文件從 Android 手機傳輸到 PC 是例行公事嗎?想讓文件傳輸更輕松嗎?幸運的是,您可以從本文中獲得 7 種方法,其中包含詳細的步驟,幫助您輕松了解如何將文件從 Android 傳輸到 PC,涵蓋了從無線工具到傳統 U…

【經驗分享】淺談京東商品SKU接口的技術實現原理

京東商品 SKU 接口的技術實現原理涉及數據建模、架構設計、接口協議、安全機制及性能優化等多個技術層面。以下從技術角度詳細拆解其實現邏輯: 一、SKU 數據模型與存儲架構 1. SKU 數據模型設計 核心字段定義: 基礎屬性:SKU ID、商品名稱、…

虛擬機配置node.js(前端環境搭建)

1.在windows下安裝node.js(以及npm) 修改npm鏡像為阿里云的 npm install --registryhttps://registry.npmmirror.com 2.在Linux下安裝node.js(Centos7 只支持16版本之前的) wget https://npmmirror.com/mirrors/node/v15.14.0/n…

多模態大語言模型arxiv論文略讀(129)

Task Success Prediction for Open-Vocabulary Manipulation Based on Multi-Level Aligned Representations ?? 論文標題:Task Success Prediction for Open-Vocabulary Manipulation Based on Multi-Level Aligned Representations ?? 論文作者:M…

【Redis】Redis 關于 BigKey 的實踐規約

目錄 一、BigKey 的概念 1.1 普通 key 的設計規則 1.2 BigKey 的定義 1.3 BigKey 存在的問題 二、BigKey 的發現與解決方案 第一種方式:redis-cli --bigkeys 第二種方式:scan掃描 第三種方式:第三方工具 第四種方式:網絡…

Golang 與 C/C++ 交互實踐

在軟件開發的實際場景中,我們常常會遇到需要將不同語言的優勢結合起來的情況。Golang 憑借其高效的并發性能和簡潔的語法,在網絡編程和系統開發領域備受青睞;而 C/C 則以其強大的底層操作能力,在系統資源管理方面具有獨特優勢。那…

五子棋流量主小程序單模式多模式開源版

功能和特點: 核心游戲功能: 1515 標準棋盤 黑白棋交替落子 自動判斷勝負和平局 悔棋功能 計時功能 UI 設計: 木紋風格棋盤 立體感棋子(使用陰影和漸變) 響應式布局,適配不同屏幕尺寸 勝利彈窗動畫 交互體驗…

Python古代文物成分分析與鑒別研究:灰色關聯度、嶺回歸、K-means聚類、決策樹分析

原文鏈接:tecdat.cn/?p42718分析師:Gan Tian 在文化遺產保護領域,古代玻璃制品的成分分析一直是研究中西方文化交流的關鍵課題。作為數據科學家,我們在處理某博物館委托的古代玻璃文物保護咨詢項目時,發現傳統分析方法…