CH32V307V-EVT-R1 简单上手入门

news2024/9/21 12:35:10

文章目录

    • 〇、前言
    • 一、开发板展示以及介绍
    • 二、开发环境配置与搭建
      • 2.1 IDE 介绍
      • 2.2 IDE 环境搭建
      • 2.3 IDE 配置
        • 2.3.1 语言切换(汉化?不存在的)
    • 三、初次烧录与体验
    • 四、简单总结与心得
    • 🔗 链接直达

〇、前言

运气不错,前几天在电子发烧友社区参加每日打卡活动搞到了第一块 RISC-V 的板子。虽然我不是特别熟悉 RISC-V 的相关知识,但既然板子到手了,总不能放着吃灰;所以,接下来会有一段时间,我会更新 RISC-V 的相关内容,以此促进自己来学习 RISC-V 的相关内容。


一、开发板展示以及介绍

首先,先来开个箱,板子长这样,板子非常 nice,

对于这块板子,我在立创商城找到了一份关于该开发板的信息;其次,在该开发板的生产厂商沁恒官网中,我也找到一份较为新的 CH32V307 MCU 的资料。

  • CH32V307 MCU 相关信息:https://www.wch.cn/products/CH32V307.html

CH32V307 MCU 信息如下:

  • 青稞V4F处理器,最高144MHz系统主频
  • 支持单周期乘法和硬件除法,支持硬件浮点运算(FPU)
  • 64KB SRAM,256KB Flash
  • 供电电压:2.5/3.3V,GPIO单元独立供电
  • 多种低功耗模式:睡眠、停止、待机
  • 上/下电复位、可编程电压检测器
  • 2组18路通用DMA
  • 4组运放比较器
  • 1个随机数发生器TRNG
  • 2组12位DAC转换
  • 2单元16通道12位ADC转换,16路触摸按键TouchKey
  • 10组定时器
  • USB2.0全速OTG接口
  • USB2.0高速主机/设备接口(480Mbps 内置PHY)
  • 3个USART接口和5个UART接口
  • 2个CAN接口(2.0B主动)
  • SDIO接口、FSMC接口、DVP数字图像接口
  • 2组IIC接口、3组SPI接口、2组IIS接口
  • 千兆以太网控制器ETH(内置10M PHY)
  • 80个I/O口,可以映射到16外部中断
  • CRC计算单元,96位芯片唯一ID
  • 串行2线调试接口
  • 封装形式:LQFP64M、LQFP100

二、开发环境配置与搭建

2.1 IDE 介绍

针对开发环境,我们使用沁恒所提供的集成开发环境 —— MounRiver Studio 来帮助我完成代码编辑,编译,烧录等一站式的嵌入式开发。当然,苏州大学嵌入式学习社区也提供了兼容 MounRiver Studio(MRS)的 IDE —— AHL-GEC-IDE,由于我不是苏大的学生,进不去他们的官网,所以后面就使用 MRS 了。

2.2 IDE 环境搭建

我们可以在该网站找到适用于你的操作系统的 MounRiver Studio 安装包,下载并安装。

  • MounRiver Studio 官网:http://www.mounriver.com

在这里插入图片描述

下载后建议解压后安装,在压缩包里直接点击安装可能会卡掉压缩软件

在这里插入图片描述

之后一直点击“下一步”,等待完成即可。

在这里插入图片描述

至此,开发环境搭建部分完成。

2.3 IDE 配置

打开 MRS 后,不少学过上位机开发的小伙伴估计会觉得 MRS 非常熟悉;没错,就是 Eclipse。UI部分,MRS 就是使用 Apache 开源的 Eclipse 开发的,至于怎么使用,不少人肯定再熟悉不过了吧。

在这里插入图片描述

接下来,我就简单说几点可能你会需要配置的点。

2.3.1 语言切换(汉化?不存在的)

一般情况下,大家在使用 Eclipse 都需要进行复杂的汉化过程,而 MRS 非常贴心的把汉化给你做好了,只需依次点击 H e l p → L a n g u a g e → 简体中文 Help → Language → 简体中文 HelpLanguage简体中文,即可快速完成中英文切换。

在这里插入图片描述


三、初次烧录与体验

1、连接开发板

使用数据线连接开发板与电脑即可。

在这里插入图片描述

2、加载工程或解决方案

这里测试一下是否能够进行烧录,就先烧录官方适配 openHarmony LiteOS_m 固件。点击 文件 → 加载 文件 → 加载 文件加载 ,选择官方提供的工程并加载。

  • CH32V307EVT 官方提供工程包:https://www.wch.cn/downloads/CH32V307EVT_ZIP.html

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3、项目构建(编译)

依次点击 项目 → 构建项目 项目 → 构建项目 项目构建项目,开始构建项目。

在这里插入图片描述

在这里插入图片描述

编译成功后,我们可以在 obj 目录下找到一个后缀名为 . h e x .hex .hex . b i n .bin .bin 的机器码文件(如果没有大概率就是没成功,项目有错误什么的),这里为 L i t e O S m . h e x LiteOS_m.hex LiteOSm.hex

在这里插入图片描述

4、下载(烧写)机器码

上一步编译完成后,依次点击 闪存 → 下载 闪存→下载 闪存下载 后,MRS 便开始烧录二进制文件;

在这里插入图片描述

在这里插入图片描述

烧录完成后,会提示烧录完成。(如果烧录不成功,可以检查是否编译成功或者开发板是否正常连接到电脑哦!)

在这里插入图片描述

5、串口通信

打开设备管理器,点击 端口 端口 端口,找到你的开发板设备,并记住其端口,我这里是 C O M 7 COM7 COM7

  • Putty 官网:https://putty.org

在这里插入图片描述

打开 Putty ,切换到 S e r i a l Serial Serial S e r i a l l i n e Serial line Serialline 填写刚刚的 C O M 7 COM7 COM7,Speed 填写 115200 115200 115200

在这里插入图片描述

连接后,便可以看到开发板所打印的信息了。

在这里插入图片描述


四、简单总结与心得

总的来说,板子的设计还是非常不错的,软件生态以及资料也是非常不错,MounRiver Studio,适配了 LiteOS_m,FreeRTOS,TencentOS 等嵌入式系统,降低了开发的难度,资料也是比较全。小白学习 RISC-V 的话值得入手。

接下来的一段时间,就拿这块板子练练手,把 RISC-V 学透彻。


🔗 链接直达

  • 沁恒官网:https://www.wch.cn
  • 沁恒微电子社区:https://www.wch.cn/bbs
  • CH32V307 MCU 相关信息:https://www.wch.cn/products/CH32V307.html
  • CH32V307EVT 官方提供工程包:https://www.wch.cn/downloads/CH32V307EVT_ZIP.html
  • MounRiver Studio 官网:http://www.mounriver.com
  • Putty 官网:https://putty.org

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

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

相关文章

Oracle的存储结构

Oracle数据库的存储结构分为物理存储结构和逻辑存储结构两种。 物理存储结构:主要用于描述在 oracle 数据库外部数据的存储,即在操作系统层面中如何组织和管理数据,与具体的操作系统有关。 逻辑存储结构:主要描述oracle 数据库…

TryHackMe-EnterPrize(boot2root)

EnterPrize 端口扫描 循例nmap Web枚举 进到enterprize.thm gobuster扫 到处扫了一段时间,ffuf扫vhost扫到个maintest 进到maintest,是typo3 /typo3conf下有些文件 在LocalConfiguration.old有一个key,它应该就是提示当中所说的 在谷歌找到…

【开发工具】 什么是Office 今天让你认识它

🚀 个人主页 极客小俊 ✍🏻 作者简介:web开发者、设计师、技术分享博主 🐋 希望大家多多支持一下, 我们一起进步!😄 🏅 如果文章对你有帮助的话,欢迎评论 💬点赞&#x1…

HTML5 <select> 标签

实例 HTML5 <select>标签用于实现下拉列表。请参考下面的示例&#xff1a; 创建带有 4 个选项的选择列表&#xff1a; <select> <option value"volvo">Volvo</option> <option value"saab">Saab</option> <opti…

3 文件和目录

3.1 stat、fstat、lstat 函数 #include <sys/types.h> #include <sys/stat.h>//三个函数的返回&#xff1a;若成功则为 0&#xff0c;若出错则为-1 int stat(const char *pathname, struct stat *buf) ; int fstat(int filedes,struct stat * buf) ; int lstat(co…

嵌入式Sqlite数据库【基本语法、Sqlite-JDBC、嵌入到Java程序】

目录 前言 基本介绍 Sqlite 对比 MySQL 字段类型 语法 创建表 插入数据 更新数据 查询数据 删除数据 查看建表语句 Sqlite-JDBC 嵌入到Java程序 前言 最近在用JavaFX做一个桌面软件需要用到数据库&#xff0c;但MySQL这种数据库明显只能本地访问&#xff0c;把软…

gdb server简单探索

前言 gdb server运行于嵌入式设备&#xff0c;比如arm或arm64体系结构&#xff0c;体积小&#xff0c;占用资源少&#xff0c;相当于一个前端。gdb server可以attach到一个strip的进程。 gdb运行于性能更高的主机&#xff0c;如x86设备上&#xff0c;需要有带符号表的相应进程…

【IPv6】基本概念及字段

IPV4知识点&#xff1a; 字段值 IPv4字段共 字段值解释Version版本版本字段&#xff0c;可以区分V4和V6版本&#xff0c;V4是0100&#xff0c;V6是0110&#xff0c;需要注意的是V4和V6头部除了版本字段位置相同外&#xff0c;其他都是不一样的&#xff0c;因此两个协议不能直…

如何编写高质量代码

如何编写高质量代码 1. 前言2. 明确业务场景和用户需求3. 编程实践技巧3.1 提高命名规范3.2 保持代码简洁3.3 好的注释 4. 软件测试5. 总结 1. 前言 现代软件开发中&#xff0c;代码是构建高质量软件的核心。高质量代码能够提高软件系统的可靠性、可维护性和可扩展性&#xff…

3.3 动态存储随机存储器

学习目标&#xff1a; 理解动态随机存取存储器的基本原理和工作机制。掌握动态随机存取存储器的读写操作及时序。理解动态随机存取存储器的存储单元结构和电路设计。熟悉动态随机存取存储器的刷新技术及其影响因素。理解动态随机存取存储器与静态随机存取存储器的异同。掌握动态…

2008-2019年主要城市PITI指数

2008-2019年主要城市PITI指数 1、来源&#xff1a;附在文件内 2、时间区间&#xff1a;2008-2019年 3、具体时间分布&#xff1a;、2008、2009-2010、2011、2012、2013-2014、2014-2015、2015-2016、2016-2017、2017-2018、2018-2019、 4、范围&#xff1a;包括110个城市&a…

Runtime Data Area(运行时数据区域)

运行时数据区是JVM用来管理和存储Java程序执行过程中所需要的各种数据的区域&#xff0c;也成为JVM内存结构。JVM内存结构主要包括以下几个部分&#xff1a; 程序计数器&#xff08;Program Counter Register&#xff09; 程序计数器是一种特殊的内存区域&#xff0c;它可以在…

线索二叉树(前中后序线索化/遍历/画线索)

线索二叉树 文章目录 线索二叉树1 线索二叉树的基本概念2 线索二叉树的构造2.1 线索二叉树的存储结构2.2 给线索二叉树画线索2.2.1 中序2.2.2 先序2.2.3 后序 2.3 二叉树线索化代码实现2.3.1 通过中序遍历线索化2.3.2 通过先序遍历线索化2.3.3 通过后序遍历线索化 3 线索二叉树…

五一欢乐赛!题解

前言 有点一言难尽, 这次本来想的给大火减减压放了很多区域赛和省赛的签到题(还有一些是写过的题), 没想到打的并不是很理想, 还用了分数值想减少一些差距, 结果看起来好像让差距更大了, 尴尬 A题 Frozen Scoreboard https://codeforces.com/gym/104076/problem/D 济南站的中…

【MST+离线】ABC235 E - MST + 1

一开始想的是分类讨论&#xff0c;看那条边加了之后成不成环&#xff0c;如果不成环且权值在前n-1&#xff0c;则一定在MST里&#xff0c;不在前n-1则不在MST里&#xff1b;如果成环了&#xff0c;如果权值不在前n-1&#xff0c;则不在MST里&#xff0c;如果权值在前n-1&#x…

InstructGPT怎么准备和标记数据集

目录 1. 谁标记数据集 2. 数据集的来源 3.数据预处理 4. 标记数据集的方法 5. 数据多样性 6. 这样标记的数据的不足之处 名词解释 1. 谁标记数据集 OpenAI 公司在Upwork平台上和Scale AI公司聘请了大约 40 名承包商为他们标记数据&#xff0c;通过筛选测试(screening tes…

ros基础笔记

1创建工作空间 catkin_init_workspace 将文件夹初始化成ros文件 编译工作空间catkin_make vi ~/.bashrc 加入环境变量bashrc一下在任何终端都生效 catkin_create_pkg learning_communication通讯机制 std_msgs数据结构 rospy roscpp catkin_create_pkg mbot_description ur…

【C++】string类常用接口

目录 一、string类二、string类的常用接口1.string类对象的常见构造2.string类对象的容量操作3.string类对象的访问及遍历操作4.string类对象的修改操作5.string类非成员函数6.vs和g下string结构的说明 一、string类 STL的六大组件&#xff1a; 字符串是表示字符序列的类标准…

E. Train Hard, Win Easy(数学推导 + 前缀和)

Problem - E - Codeforces 这是一个有关竞赛编程的问题。Zibi 是一名竞赛编程教练&#xff0c;有 n 名选手想要备战。培训比赛具有一些不同寻常的规则——每个团队有两名成员和两个问题&#xff0c;每个选手都会编写其中一个问题的代码。当然&#xff0c;一个团队中的人将编写不…