CH32V208系列是沁恒32位RISC-V中比较新的一个系列, 基于青稞RISC-V4C内核, 最高144MHz主频, 64KB SRAM,128KB Flash, 供电电压2.5/3.3V.
这个型号的特点: 除了特有的硬件堆栈区、快速中断入口, 片上集成了 2Mbps低功耗蓝牙BLE 5.3, 10M以太网MAC+PHY, USB2.0全速设备+主机/设备接口, CAN控制器.
10M以太网是带 PHY 的, 可以直连网口, 省掉焊接LAN8720了


这个板比较大, 尺寸8.6cm * 9.5cm, 上面集成了蓝牙天线, RJ45网口, 两个USB-A母口

烧录 CH32V208 可以用 WCH-Link 或 WCH-LinkE
Win10下的开发环境比较简单, 使用软件 MounRiver, 当前版本v1.84, 可以支持沁恒全系列的RISC-V芯片. 下载地址 http://mounriver.com/download
软件集成了代码编辑, 编译环境和烧录工具. 直接安装即可. 基于 Eclipse 开发, 需要熟悉一下 Eclipse 的快捷键.
注意要使用较新的版本, 旧版本不支持 CH32V208
MounRiver的使用说明参考官方专栏, 介绍得较为详细
从 CH32V208 产品页 https://www.wch.cn/products/CH32V208.html 可以找到 CH32V208 评估板说明及应用参考例程 CH32V20xEVT.ZIP
下载后, 解压得到的目录结构如下, 其中 PUB 下是评估板的说明和电路图, EXAM 下是按外设区分的各个例程的子目录
|-- PUB:
| |-- CH32V20x评估板说明书.pdf:CH32V20x评估板说明及工程创建说明
| |-- CH32V20xSCH.pdf:CH32V20x评估板原理图
|-- EXAM:
| |-- SRC
| | |-- Core:内核系统头文件
| | |-- Debug:延时函数、串口调试源文件及头文件
| | |-- Ld:ld文件
| | |-- Peripheral:基本外设驱动源文件及头文件
| | |-- Startup:启动文件。针对用户使用芯片型号包含下列相应的启动文件,同时在ch32v20x.h文件中选择匹配芯片型号定义
| | | |-- startup_ch32v20x_D6.S:适用于CH32V203F6-CH32V203G6-CH32V203K6-CH32V203K8-CH32V203C6-CH32V203C8系列
| | | |-- startup_ch32v20x_D8.S:适用于CH32V203RB系列
| | | |-- startup_ch32v20x_D8W.S:适用于CH32V208系列
| |-- ADC ADC 例程
| |-- BLE ——仅适用于CH32V20x_D8W
| |-- BKP:BKP例程
| |-- CAN ——仅适用于CH32V20x_D6-CH32V20x_D8W
| |-- CRC:CRC例程
| |-- DMA
| |-- ETH ——仅适用于CH32V20x_D8-CH32V20x_D8W
| |-- EXTI:外部中断线例程
| |-- FLASH:FLASH的擦/读/写,以及快速编程
| |-- FreeRTOS:FreeRTOS移植例程
| |-- GPIO:GPIO例程
| |-- HarmonyOS:HarmonyOS移植例程
| |-- I2C
| |-- INT
| |-- IAP:IAP升级例程-内置Hex转Bin工具和IAP升级工具
| |-- IWDG:独立看门狗例程
| |-- OPA:OPA4作电压跟随器输出例程
| |-- PWR
| |-- RCC
| |-- RT-Thread:RT-Thread移植例程
| |-- RTC:日历例程
| |-- SPI
| |-- TencentOS:TencentOS移植例程
| |-- TIM
| |-- TOUCHKEY:TouchKey检测例程
| |-- USART
| |-- USB
| |-- WWDG:窗口看门狗例程
下面以最简单的GPIO示例走一遍编译烧录的过程
开发板 ---> WCHLink, 注意不要连USB口, 如果已经通过PC的USB口连接了开发板, 就不要连WCHLink VCC, 如果连了WCHLink VCC, 就不要接USB口
开发板本身
下载的示例代码解压后, 在MounRiver中 File -> Load -> Project, 打开 EVT\EXAM\GPIO\GPIO_Toggle目录下的 GPIO_Toggle.wvproj
按 Shift + F7 或通过工具栏按钮编译即可. 编译正常会显示
12:08:14 **** Build of configuration obj for project GPIO_Toggle ****
make -j4 all
text data bss dec hex filename
6908 136 2072 9116 239c GPIO_Toggle.elf
12:08:19 Build Finished. 0 errors, 0 warnings. (took 5s.11ms)
示例项目中默认的构建结果为 hex 文件, 编译结束后在 obj 目录下能看到 GPIO_Toggle.hex
通过 WCH-Link 连接开发板之后, 在 MounRiver 中通过菜单 Flash -> Configuration 可以打开下载设置
点击第一个图标 Query Status 查询芯片状态, 连接成功后底下会显示 0000#07:48:33:283>> Query Success, 同时会显示红色的 Code Read-Protect Status Disabled 或绿色的 Code Read-Protect Status Enabled, 红色的表示读保护关闭, 这时候可以烧录, 如果是绿色表示读保护打开, 需要关闭后才能烧录. 下面 Target 中会显示检测到的MCU类型, 写入开始地址 0x08000000, 以及要写入的文件 obj\GPIO_Toggle.hex
以上无误后, 应用保存, 按 F8 或点击工具栏图标烧录, 烧录过程输出
------------ Begin flash process of "obj\GPIO_Toggle.hex" ------------
12:14:11:930 >> Current project vendor is WCH, debugger is WCH-Link
12:14:11:930 >> Attempt to open link device and upgrade firmware if necessary...
12:14:11:987 >> Link Device is CH549. Already the latest version v2.8, no need to upgrade
12:14:12:059 >> Starting to Send Chip Type...
12:14:12:102 >> Send Chip Type Success
12:14:12:102 >> Starting to Check Read-Protect Status...
12:14:12:103 >> Read-Protect Status Currently Disabled
12:14:12:103 >> Starting to Erase All...
12:14:12:242 >> Erase All Success
12:14:12:244 >> Starting to Download & Verify...
12:14:13:077 >> Download & Verify Success
12:14:13:077 >> Starting to Reset...
12:14:13:090 >> Reset Success
12:14:13:090 >> Starting to Close Link...
12:14:13:092 >> Close Link Success
---------------------------------End ---------------------------------
Operation Finished (took 1s.166ms)
烧录成功后就能看到连接的LED开始闪烁
当使用过旧版 WCH-DAPLink 或者安装中未正常升级, 在连接DAPLink模式的 WCH-Link 后, 设备管理器显示带黄色警告的WCH CMSIS-DAP, 此时在 WCH-LinkUtility里是无法找到WCHLink的, 需要先安装驱动. 沁恒并没有单独提供这个驱动的下载, 但是在安装了 MounRiver 之后, 其目录下实际上是包含了对应驱动的.
首先电脑要能正确识别 CMSIS-DAP 模式的 WCH-Link, 如果驱动未安装, 可以参考上一步. 在 CMSIS-DAP 模式下, WCH-Link 的 CON 灯是常亮的.
文章目录1.开发板选择*用到的资源2.串口通信(个人理解)3.代码分析(注释比较详细)1.主函数2.串口1配置3.串口2配置以及中断函数4.注意问题5.源码链接1.开发板选择我用的是STM32F103RCT6的板子,不过代码大概在F103系列的板子上都可以运行,我试过在野火103的霸道板上也可以,主要看一下串口对应的引脚一不一样就行了,不一样的就更改一下。*用到的资源keil5软件这里用到了两个串口资源,采集数据一个,串口通信一个,板子对应引脚如下:串口1,TX:PA9,RX:PA10串口2,TX:PA2,RX:PA32.串口通信(个人理解)我就从串口采集传感器数据这个过程说一下我自己的理解,
下载微PE工具箱进入官网下载微PE工具箱-下载 安装好后,打开微PE工具箱客户端,选择安装PE到U盘 PE壁纸可选择自己喜欢的壁纸,勾选上包含DOS工具箱,个性化盘符图标 下载原版系统进入网站下载镜像NEXT,ITELLYOU如果没有账号,注册一下就好进入选择开始使用选择win10 这里我们选择消费者版,用迅雷把BT种子下载下来 下面的两个盘符,是PE工具箱安装进U盘后,分成的盘符,注意EFI的盘符,这里面不能删东西,也不能添东西,另一个盘符可以当做正常的U盘空间使用,我们现在需要把下载下来的景象文件复制到正常的U盘空间中去 这个时候我们的系统U盘就只做好了 安装系统我们将U盘插入电脑,开机,
LL库和HAL库简介LL:Low-Layer,底层库HAL:HardwareAbstractionLayer,硬件抽象层库LL库和hal库对比,很精简,这实际上是一个精简的库。LL库的配置选择如下:在STM32CUBEMX中,点击菜单的“ProjectManager”–>“AdvancedSettings”,在下面的界面中选择“AdvancedSettings”,然后在每个模块后面选择使用的库总结:1、如果使用的MCU是小容量的,那么STM32CubeLL将是最佳选择;2、如果结合可移植性和优化,使用STM32CubeHAL并使用特定的优化实现替换一些调用,可保持最大的可移植性。另外HAL和L
跳过联网激活:OOBE界面直接按Ctrl+Shift+F3进入审核模式。这样就可以直接进入系统进行一些硬件测试等,而不用联网激活导致新机无法退货。需要注意的是,在审核模式下进行的一些操作都会保留,并不会在退出后自动还原!安装的软件在正常开机进系统后还会看见!如果电脑确实没连互联网又不想强行跳过OOBE(网上很多教程会叫你直接结束OOBE进程,但这是不推荐的,因为一些厂商自带优化程序和系统初始化设置在后面都会应用,对于笔记本跳过的话你会发现驱动和内置应用都没有装上。其实这部分脚本就在系统盘的Recovery隐藏文件夹下),可以参考以下方式:https://www.landiannews.com/
目录一、ESP32简单介绍二、ESP32Wi-Fi模块介绍三、ESP32Wi-Fi编程模型四、ESP32Wi-Fi事件处理流程 五、ESP32Wi-Fi开发环境六、ESP32Wi-Fi具体代码七、ESP32Wi-Fi代码解读6.1主程序app_main7.2自定义代码wifi_init_sta()八、ESP32Wi-Fi连接验证8.1测试方法8.2服务器模拟工具sscom58.3测试代码8.4测试结果前言为了开发一款亚马逊物联网产品,开始入手ESP32模块。为了能够记录自己的学习过程,特记录如下操作过程。一、ESP32简单介绍ESP32是一套Wi-Fi(2.4GHz)和蓝牙(4.2)双模解决方
有道无术,术尚可求,有术无道,止于术。本系列SpringBoot版本3.0.4本系列SpringSecurity版本6.0.2本系列SpringAuthorizationServer版本1.0.2源码地址:https://gitee.com/pearl-organization/study-spring-security-demo文章目录前言1.OAuth2AuthorizationServerMetadataEndpointFilter2.OAuth2AuthorizationEndpointFilter3.OidcProviderConfigurationEndpointFilter4.N
在我的代码中,我需要使用各种算法(包括CRC32)对文件进行哈希处理。因为我还在Digest系列中使用其他加密哈希函数,所以我认为为它们维护一个一致的接口(interface)会很好。为了记录,我确实找到了digest-crc,一颗完全符合我要求的gem。问题是,Zlib是标准库的一部分,并且有一个我想重用的CRC32工作实现。此外,它是用C编写的,因此它应该提供与digest-crc相关的卓越性能,后者是纯ruby实现。实现Digest::CRC32一开始看起来非常简单:%w(digestzlib).each{|f|requiref}classDigest::CRC32一切正常:
我正在尝试在我的机器上安装win32-apigem,但在构建native扩展时我遇到了一些问题:$geminstallwin32-api--no-ri--rdocTemporarilyenhancingPATHtoincludeDevKit...Buildingnativeextensions.Thiscouldtakeawhile...C:\Programs\dev_kit\bin\make.exe:***Couldn'treservespaceforcygwin'sheap,Win32error0ERROR:Errorinstallingwin32-api:ERROR:Failed
我在Windows上运行ruby1.9.2并试图移植在Ruby1.8中工作的代码。该代码使用以前运行良好的Open4.popen4。对于1.9.2,我做了以下事情:通过geminstallPOpen4安装了POpen4需要POpen4通过require'popen4'尝试像这样使用POpen4:Open4.popen4("cmd"){|io_in,io_out,io_er|...}当我这样做时,我得到了错误:nosuchfiletoload--win32/open3如果我尝试安装win32-open3(geminstallwin32-open3),我会收到错误消息:win32-op
DellInspiron5488加内存32G 原装内置内存仅仅8G,目前看,真的太小了! 1.内存型号Dell5488内存型号:DDR42666。笔记本有两个内存插槽,原装占了一个,还能扩展一个。 2.买内存如果买Dell原装笔记本内存,8G就得500块左右。 我咨询了一下,三星的笔记本内存,可以兼容。16G,299块(2023年2月23日,京东价) Dell5488内存组合,最多只能插两根16G内存。 我于是买了两根三星16G内存。装上,很爽😄 跑国产系统统信UOS,再也看不到用交换区了,32G内存,爽!