21-22集 ESP32-IDF开发教程编译运行机器人对话工程-《MCU嵌入式AI开发笔记》

21集 ESP32-IDF开发教程-《MCU嵌入式AI开发笔记》

之前我们用了windows系统搭建了ESP-IDF的开发环境,
我们还是参考这个官方文档https://docs.espressif.com/projects/esp-idf/zh_CN/release-v5.1/esp32s3/get-started/index.html
在这里插入图片描述
同时我们也参考之前讲到的,力创开发板开发教程
https://lceda001.feishu.cn/wiki/Xqx3wH8wMi3BrrkmeTXcgLL7nQk
在这里插入图片描述
思路明确我们一步一步的往下学习!
在之前我们用wscode和安装包的两种方式安装了ESP-IDF的开发环境。我们安装到了D盘ESP-IDF目录中。
那我们直接看一下力创的这个例程,如何跑起来。
在这里插入图片描述
我们把ai_chat copy到这里:
D:\workspace\esp-idf\ai_chat
今天到这里吧,关注三哥我们继续码笔记

之后打开VSCode,要安装ESP-ADF,

我们输入命令 ESP-IDF Install ESP-ADF,进行安装。
在这里插入图片描述
这里要配置git服务器,我们选择Gitee,比较快。
安装好后我们看一下
C:\Users\phlr\AppData\Roaming\Code\User\settings.json
在这里插入图片描述
应该安装成功了。
下载例程到你的开发板之前,需要“在源程序中添加百度和minimax的密钥信息”以及“修改menuconfig”。然后就可以编译下载程序到开发板运行。
那我们看一下如何得到密钥。
上面说的例程实现原理中,第1步的语音转文字和第3步的文字转语音,我们使用百度智能云,第2步的大模型,我们是用minimax开放平台。

百度智能云密钥获取

浏览器中输入网址:https://console.bce.baidu.com/ 进入百度智能云,使用百度账号登录,如果没有账号就注册后登录,使用百度智能云,需要实名认证,个人认证和企业认证都可以。
进入百度智能云控制台后,点击左上角三个横杠,展开全部应用,找到“语音技术”点击进入,如下图所示:
在这里插入图片描述
之后免费领取以下两个功能:
在这里插入图片描述
之后我们去创建应用。
在这里插入图片描述
这就是三哥创建的应用。
这样里面AppID API Key就有了。
在这里插入图片描述
在这里,复制API Key和Secret Key到工程main.c文件里面,替换代码中的xxx,在第37行左右。
CONFIG_BAIDU_ACCESS_KEY对应的是API Key。
CONFIG_BAIDU_SECRET_KEY对应的是Secret Key。
这里顺便把WiFi名称和密码也改了。
在这里插入图片描述
到这里,百度的密钥就修改好了。
那我们下接口后去minimax密钥:
minimax密钥获取
https://www.minimaxi.com/platform
进入minimax网站,注册登录后,进入“账户管理”,然后再点击“接口密钥”,然后再点击“创建新的密钥”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/47762.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GIT--git clone fatal [文件过大或网络不稳定] [大型仓库]

GIT--git clone fatal 1 介绍1.1 原因分类1.2 文件过大或网络不稳定 2 分析3 操作3.1 指定克隆深度【浅克隆】3.2 分批次下载3.3 增大Git的HTTP POST缓冲区大小3.4 配置git的最低速度和最低速度时间(单位:秒)3.5 压缩3.6 过滤下载 git filter branch3.7 仅克隆一个分…

OJ-0718

示例1 input 3 1 1 1 output 0示例2 input 3 3 7 10 output 1示例3 input 4 3 7 10 16 output 3题解1&#xff1a;List {public static void main(String[] args) {Scanner in new Scanner(System.in);int num in.nextInt();List<Integer> list new ArrayList<…

【总结】nginx源码编译安装报错./configure: error: SSL modules require the OpenSSL library.

问题现象 源码编译安装nginx时&#xff0c;执行./configure …… --with-http_ssl_module 命令安装https模块&#xff0c;需要用到openssl&#xff0c;由于机器缺少openssl库&#xff0c;报如下错误。 …… checking for openat(), fstatat() ... found checking for getaddr…

开源模型应用落地-FastAPI-助力模型交互-进阶篇(三)

一、前言 FastAPI 的高级用法可以为开发人员带来许多好处。它能帮助实现更复杂的路由逻辑和参数处理&#xff0c;使应用程序能够处理各种不同的请求场景&#xff0c;提高应用程序的灵活性和可扩展性。 在数据验证和转换方面&#xff0c;高级用法提供了更精细和准确的控制&#…

Go网络编程-RPC程序设计

gRPC 通信 RPC 介绍 RPC, Remote Procedure Call&#xff0c;远程过程调用。与 HTTP 一致&#xff0c;也是应用层协议。该协议的目标是实现&#xff1a;调用远程过程&#xff08;方法、函数&#xff09;就如调用本地方法一致。 如图所示&#xff1a; 说明&#xff1a; Servi…

windows下安装启动运行MinIO

MinIO服务器本身是采用Go语言开发的&#xff1b; 编程操作MinIO服务器的客户端有很多&#xff1a; Go&#xff0c;Python&#xff0c;Java&#xff0c;.NET&#xff0c;JavaScript&#xff0c;Haskell&#xff0c;C 官方文档&#xff1a;https://min.io/docs/minio/linux/dev…

MySQL下载安装使用教程图文教程(超详细)

「作者简介」&#xff1a;冬奥会网络安全中国代表队&#xff0c;CSDN Top100&#xff0c;就职奇安信多年&#xff0c;以实战工作为基础著作 《网络安全自学教程》&#xff0c;适合基础薄弱的同学系统化的学习网络安全&#xff0c;用最短的时间掌握最核心的技术。 这一章节我们使…

Jenkins-zookeeper-docker-xxljob-rancher

文章目录 Jenkins实战1 新建任务需要的配置pipeline Zookeeper基础 Docker基础实操windows11 docker mysql DockerhouseDockerhubxxl-Job基础实战 Rancher基础思考 实战1 Rancher的某个namespace的scale为0 Jenkins 实战 1 新建任务需要的配置pipeline 该代码是Jenkinsfile&…

版本控制工具

版本控制工具是用于记录代码文件变化历史、方便查阅特定版本修改情况的系统&#xff0c;一般分为集中式和分布式两种。以下是一些常见的版本控制工具&#xff1a; 集中式版本控制工具 Subversion&#xff08;SVN&#xff09; 简介&#xff1a;Subversion是一种集中式版本控制…

《基于 CDC、Spark Streaming、Kafka 实现患者指标采集》

&#x1f4e2; 大家好&#xff0c;我是 【战神刘玉栋】&#xff0c;有10多年的研发经验&#xff0c;致力于前后端技术栈的知识沉淀和传播。 &#x1f497; &#x1f33b; CSDN入驻不久&#xff0c;希望大家多多支持&#xff0c;后续会继续提升文章质量&#xff0c;绝不滥竽充数…

如何获得Cesium的TileSet并设置本地服务器的Url

一.总体思路 首先使用管理者获得TileSet&#xff0c;通过JSON文件读写&#xff0c;调用对应的Cesium内部提供的函数。 UE5中Json文件的读取与解析 - 知乎 (zhihu.com) 不太了解JSON的可以学习这个。 二.具体实现 1.创建Actor,并且 如何获得Cesium的TileSet,设置本地Url 一…

关于Flutter的build

框架是什么&#xff1f; 就是你按照约定去写 具体什么时候调用什么&#xff0c;他说了算 你只能按照它的规则去编写你的业务代码&#xff0c;然后就一切正常&#xff0c;你要是不遵循他的方法&#xff0c;就出错 就像你在 viewDidLoad 中直接把资源销毁&#xff0c;然后这个…

实现了一个心理测试的小程序,微信小程序学习使用问题总结

1. 如何在跳转页面中传递参数 &#xff0c;在 onLoad 方法中通过 options 接收 2. radio 如何获取选中的值&#xff1f; bindchange 方法 参数e, e.detail.value 。 如果想要获取其他属性&#xff0c;使用data-xx 指定&#xff0c;然后 e.target.dataset.xx 获取。 3. 不刷…

全国媒体邀约,主流媒体到场出席采访报道

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 全国媒体邀约&#xff0c;确保主流媒体到场出席采访报道&#xff0c;可以带来一系列的好处&#xff0c;这些好处不仅能够增强活动的可见度&#xff0c;还能对品牌或组织的长期形象产生积…

【19】读感 - 架构整洁之道(一)

概述 《架构整洁之道》一书中有提到设计和架构的感念&#xff0c;它们究竟是什么&#xff1f;书是这么说的&#xff0c;它们的层次不一样&#xff0c;架构更“高层级”的说法&#xff0c;这类讨论一般都把“底层”的实现细节排除在外。而设计往往指代的具体的系统底层组织结构…

遍历Pandas DataFrame数据的行:方法与实践

遍历Pandas DataFrame数据的行&#xff1a;方法与实践 在数据分析和处理过程中&#xff0c;我们经常需要遍历Pandas DataFrame中的每一行数据。Pandas提供了多种方法来满足这一需求。本文将介绍几种常见的遍历DataFrame行的方法&#xff0c;并讨论它们的使用场景和注意事项。 …

将iPad 作为Windows电脑副屏的几种方法(二)

将iPad 作为Windows电脑副屏的几种方法&#xff08;二&#xff09; 1. 前言2. EV 扩展屏2.1 概述2.2 下载、安装、连接教程2.3 遇到的问题和解决方法2.3.1 平板连接不上电脑 3. Twomon SE3.1 概述3.2 下载安装教程 4. 多屏中心&#xff08;GlideX&#xff09;4.1 概述4.2 下载安…

基于FPGA的多路选择器

目录 一、组合逻辑 二、多路选择器简介&#xff1a; 三、实战演练 摘要&#xff1a;本实验设计并实现了一个简单的多路选择器&#xff0c;文章后附工程代码 一、组合逻辑 组合逻辑是VerilogHDL设计中的一个重要组成部分。从电路本质上讲&#xff0c;组合逻辑电路的特点是输…

数据结构(单链表算法题)

1.删除链表中等于给定值 val 的所有节点。 OJ链接 typedef struct ListNode ListNode;struct ListNode {int val;struct ListNode* next; };struct ListNode* removeElements(struct ListNode* head, int val) {//创建新链表ListNode* newhead, *newtail;newhead newtail N…

Vue3 之 computed 属性,实现日历翻月份功能

1. Vue3中的computed函数 1.1. 什么是computed&#xff1f; computed属性是Vue3中的一个响应式计算属性&#xff0c;它可以根据其他响应式数据的变化而自动更新其自身的值。computed属性可以接收一个计算函数&#xff0c;并在计算函数中使用其他响应式数据的值进行计算。当任何…