行空板 K10 语音识别小车

2026-07-17303
AI 快速预览详细 收起
行空板 K10 语音识别小车是一个适合初学者和学生的项目。通过ASR模块,用户可以添加自定义语音命令,如“前进”、“停止”、“后退”和“转向”。项目中使用了行空板 K10 和ASR模块,通过简单的代码设置,实现对小车的语音控制。这个项目不仅能够激发孩子的创造力,还能帮助他们理解语音识别技术的基本原理。
/*!
* MindPlus
* esp32s3bit
*
*/
#include "asr.h"
#include "unihiker_k10.h"
// 创建对象
UNIHIKER_K10 k10;
uint8_t      screen_dir=2;
ASR          asr;


// 主程序开始
void setup() {
        k10.begin();
        k10.initScreen(screen_dir);
        k10.creatCanvas();
        asr.asrInit(CONTINUOUS, CN_MODE, 12000);
        while(asr._asrState == 0){delay(100);}
        k10.setScreenBackground(0xFFFFFF);
        asr.addASRCommand(0+1, "qian jin");
        asr.addASRCommand(1+1, "ting zhi");
        asr.addASRCommand(2+1, "hou tui");
        asr.addASRCommand(3+1, "you zhuan");
        asr.addASRCommand(4+1, "zuo zhuan");
}
void loop() {
        if (asr.isWakeUp()) {
                k10.canvas->canvasText("以唤醒行空板", 4, 0x33FFFF);
                k10.canvas->updateCanvas();
        }
        else {
                k10.canvas->canvasText("唤醒词为“你好小新”", 7, 0x33FFFF);
                k10.canvas->updateCanvas();
        }
        if (asr.isDetectCmdID(0+1)) {
                k10.canvas->canvasText("K10 小车前进", 0, 180, 0x0000FF, k10.canvas->eCNAndENFont24, 50, true);
                k10.canvas->updateCanvas();
                digital_write(eP12, HIGH);
                digital_write(eP13, LOW);
                digital_write(eP14, HIGH);
                digital_write(eP15, LOW);
        }
        if (asr.isDetectCmdID(1+1)) {
                k10.canvas->canvasText("K10 小车停止", 0, 180, 0x0000FF, k10.canvas->eCNAndENFont24, 50, true);
                k10.canvas->updateCanvas();
                digital_write(eP12, LOW);
                digital_write(eP13, LOW);
                digital_write(eP14, LOW);
                digital_write(eP15, LOW);
        }
        if (asr.isDetectCmdID(2+1)) {
                k10.canvas->canvasText("K10 小车后退", 0, 180, 0x0000FF, k10.canvas->eCNAndENFont24, 50, true);
                k10.canvas->updateCanvas();
                digital_write(eP12, LOW);
                digital_write(eP13, HIGH);
                digital_write(eP14, LOW);
                digital_write(eP15, HIGH);
        }
        if (asr.isDetectCmdID(3+1)) {
                k10.canvas->canvasText("K10 小车右转", 0, 180, 0x0000FF, k10.canvas->eCNAndENFont24, 50, true);
                k10.canvas->updateCanvas();
                digital_write(eP12, LOW);
                digital_write(eP13, HIGH);
                digital_write(eP14, HIGH);
                digital_write(eP15, LOW);
        }
        if (asr.isDetectCmdID(4+1)) {
                k10.canvas->canvasText("K10 小车左转", 0, 180, 0x0000FF, k10.canvas->eCNAndENFont24, 50, true);
                k10.canvas->updateCanvas();
                digital_write(eP12, HIGH);
                digital_write(eP13, LOW);
                digital_write(eP14, LOW);
                digital_write(eP15, HIGH);
        }
        k10.canvas->canvasClear(4);
}行空板 K10 语音识别小车图1

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -