Ai-WB2-32S在window下使用vs 和 msys2编译以及烧录

文章目录

  • 前言
  • 一、使用前准备
    • 第一步 安装vscode
    • 第二步 安装msys2
  • 二、使用步骤
    • 1.打开MSYS2 MINGW64
      • (1)在开始栏中找到MSYS2 MINGW64并打开
      • (2)安装git
      • (3)安装make
      • (4)安装好之后的文件存在位置
    • 2.克隆项目
      • (1)从仓库里将项目克隆到本地
      • (2)如下地址可看到拷贝下来的目录
    • 3.配置环境
    • 4.使用vscode
      • (1)打开vscode
      • (2)选择文件夹
      • (3)选择文件夹hello并在集成环境中打开
    • 5.进入MSYS2 mingw64环境并
    • 6.切换到Ai-Thinker-WB2
  • 三、编译
  • 四、烧录
  • 总结


前言

应为电脑虚拟机不方便使用vs(有点卡),所以博主搜集了一些资料选择在windows下进行编译和烧录,过程虽然复杂,但是对于电脑配置不太高的用户挺友好的。

一、使用前准备

第一步 安装vscode

关于安装vscode博主就不献丑了,大家可以参考下面链接:
vscode安装教程

第二步 安装msys2

关于msys2的安装,大家可以参考下面链接:
超详细教程:windows安装MSYS2
关于msys2的详细使用,大家可以参考下面链接:
MSYS2 的介绍与使用

二、使用步骤

下面就开始介绍怎么使用msys2和vs来使用AI-THINKER-WB2仓库的demo了;

1.打开MSYS2 MINGW64

(1)在开始栏中找到MSYS2 MINGW64并打开

图一

(2)安装git

pacman -S git
图二
应为博主以前已经装好了,以前装的时候的正好有个截图,大家做个参考吧
图三
下面是安装好之后再此安装的截图
图四

(3)安装make

pacman -S make
图五

(4)安装好之后的文件存在位置

安装完成后,会在msys2的安装路径中的usr\bin目录下生成git和make系列文件
图六
图七

2.克隆项目

(1)从仓库里将项目克隆到本地

git clone --recursive https://gitee.com/Ai-Thinker-Open/Ai-Thinker-WB2
图八
图九

(2)如下地址可看到拷贝下来的目录

图十

3.配置环境

图十一
图十二
图十三
MSYS2_PATH_TYPE
inherit
图十四图十五
图十六
图十七
以上两个路径就是需要加入环境变量的路径

4.使用vscode

(1)打开vscode

图十八

(2)选择文件夹

图十九
图二十

(3)选择文件夹hello并在集成环境中打开

图二十一

5.进入MSYS2 mingw64环境并

d:\mys64\msys2_shell.cmd -defterm -no-start(博主这里对文件命名的是mys64,一般都是msys64,找到自己的安装路径加上\msys2_shell.cmd -defterm -no-start就好了)
图二十二

6.切换到Ai-Thinker-WB2

因此需要切换到helloworld目录
cd Ai-Thinker-WB2/applications/get-started/helloworld/
图二十三

三、编译

make -j8
图二十四
编译成功
图二十五

四、烧录

打开下面软件
图二十六
二十七

图二十八
图二十九
图三十
图三十一
图三十二
图三十三
此目录:D:\mys64\home\Administrator\Ai-Thinker-WB2\tools\flash_tool\chips\bl602\builtin_imgs\boot2_isp_bl602_v6.5.1
图三十四
模组连接电脑

图三十五
图三十六
图三十七图三十八
图三十九

图四十

总结

以上就是本期分享的内容,目的为了介绍一下模组在windows下使用vs和msys2如何进行编译和烧录,更多资料可从安信可官网上获取。

官方官网:https://www.ai-thinker.com
开发资料:https://docs.ai-thinker.com/
官方论坛:http://bbs.ai-thinker.com
技术支持:support@aithinker.com

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

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

相关文章

C# 中 Interpreter 用于解释执行代码的工具

在 C# 中,Interpreter 是一个用于解释执行代码的工具,它提供了一种在运行时动态解释和执行 C# 代码的方式。Interpreter 类位于 Microsoft.CodeAnalysis.CSharp.Scripting 命名空间中,它允许你通过编写代码字符串来执行 C# 代码。 下面是一些…

每日一题——LeetCode1576.替换所有的问号

方法一 3个字母原则 把?替换为和他左右都不相等的字符,那么找3个字符abc,?总能替换为abc中的一个字符,遍历字符串找到所有?,再遍历abc把?替换为abc中的一个字符 var modifyString …

Redis缓存【重点】

参考链接 https://xiaolincoding.com/redis/cluster/cache_problem.html#%E7%BC%93%E5%AD%98%E9%9B%AA%E5%B4%A9 目录 缓存雪崩大量数据同时过期Redis 故障宕机 缓存击穿第一种方案,非法请求的限制第二种方案,缓存空值或者默认值第三种方案,使…

【C++】继续学习 string类 吧

开始使用 string类 吧 1 继续学习1.1 扩容机制1.2 string类对象的访问及遍历操作1.3 string类对象的修改操作1.4 其他一些成员函数 2 实践解决问题:Thanks♪(・ω・)ノ谢谢阅读!!!下一篇文章见&…

透明玻璃屏幕为什么那么贵

透明玻璃屏幕之所以价格较高,主要是由于以下几个方面的原因: 技术研发与创新:透明玻璃屏幕作为一种先进的显示技术,其研发和制造过程涉及到许多复杂的技术。这些技术的研发和创新需要投入大量的资金和时间。此外,透明玻…

操作系统概念概述

软件设计师11--操作系统 考点1:操作系统的作用操作系统概述例题: 考点2:特殊的操作系统例题: 考点1:操作系统的作用 操作系统概述 管理系统的硬件、软件、数据资源控制程序运行人机之间的接口应用软件与硬件之间的接口…

MySQL 缓存策略

MySQL 缓存方案用来干什么 ? 缓存用户定义的热点数据,用户直接从缓存中获取热点数据,降低数据的读写压力。场景分析 内存访问速度是磁盘访问速度的 10 万倍。读的需求远远大于写的需求MySQL 自身缓冲层跟业务无关。MySQL 作为项目主要数据库&#xff0…

winui开发笔记(五)应用程序图标

应用程序图标、发布者、显示名称大部分都在package.appxmanifest清单文件中,可以正常打开,也可以使用xml文本编辑器打开。 以下是一个正常的应用程序中所有的与图标相关的图片: 但是设置之后会有一圈白,包括在电脑最下边一行&…

Python异步IO库之uvloop使用详解

概要 在Python中,异步编程已经成为处理高并发和IO密集型任务的主要方式之一。而uvloop库则是一个专门针对异步IO操作进行优化的库,它能够显著提高异步程序的性能。本文将深入探讨uvloop库的使用方法、功能特性以及如何利用它来加速异步IO编程。 什么是uvloop库? uvloop是一…

Tensorflow2.0笔记 - 计算梯度

本笔记主要记录tf.GradientTape和tf.gradient的用法 import tensorflow as tf import numpy as nptf.__version__#要计算梯度的所有参数计算过程必须放到gradient tape中 #with tf.GradientTape as tape: w tf.constant(1.) x tf.constant(2.)with tf.GradientTape() as tap…

防御保护--课程笔记

一、内容安全 攻击可能只是一个点,防御需要全方面进行 IAE引擎 1、DFI和DPI技术 --- 深度检测技术 (1)DPI --- 深度包检测技术 --- 主要针对完整的数据包(数据包分片,分段需要重组),之后对 数据…

C#高级:Winform桌面开发中DataGridView的详解

一、每条数据增加一个按钮&#xff0c;点击输出对应实体 请先确保正确添加实体的名称和文本&#xff1a; private void button6_Click(object sender, EventArgs e) {//SQL查询到数据&#xff0c;存于list中List<InforMessage> list bll.QueryInforMessage();//含有字段…