沁恒专题

沁恒CH32在MounRiver Studio上环境配置以及使用详细教程

目录 1.  RISC-V简介 2.  CPU架构现状 3.  MounRiver Studio软件下载 4.  MounRiver Studio软件安装 5.  MounRiver Studio软件介绍 6.  创建工程 7.  编译代码 1.  RISC-V简介         RISC就是精简指令集计算机(Reduced Instruction SetCom

解决沁恒ch592单片机在tmos中使用USB总线时,接入USB Hub无法枚举频繁Reset的问题

开发产品时采用了沁恒ch592,做USB开发时遇到了一个奇葩的无法枚举问题。 典型症状 使用USB线直连电脑时没有问题,可以正常使用。 如果接入某些特定方案的USB Hub(例如GL3510、GL3520),可能会出现以下2种情况: 无法枚举,USB Hub会频繁发送Reset请求,最后系统停止识别而报错复位请求无法触发USB中断函数 此时代码具备如下特征: 使用tmos启用了低功耗设

沁恒蓝牙芯片CH582:蓝牙OTA升级技术详解与应用探索

文章目录 一、前言1.WCH 蓝牙空中升级(BLE OTA)概述2. WCH BLE SDK DFU 工作原理(方式一) 二、移植程序1.找到BackUpgrade_OTA例程2.添加文件到工程2.1 添加文件2.2 如何添加 3.修改APP工程3.1 修改peripheral_main.c文件3.2 修改peripheral.c文件 4.修改Link.Ld文件 三、OTA升级1.合并文件2

沁恒CH32V30X学习笔记08---基本定时器超时功能

TIM 基本定时器 高级定时器模块包含一个功能强大的 16 位自动重装定时器(TIM1、TIM8、TIM9 和 TIM10) 通用定时器模块包含一个 16 位可自动重装的定时器(TIM2、TIM3、TIM4 和 TIM5) 基本定时器模块包含一个 16 位可自动重装的定时器(TIM6 和 TIM7) 定时器的结构大致可以分为三部分, 输入时钟部分核心计数器部分比较捕获通道部分 时钟源

沁恒CH32V30X学习笔记07---多功能按键框架使用

多功能按键框架使用 参考开源框架: GitHub - 0x1abin/MultiButton: Button driver for embedded system 框架使用说明: ch32gpio基本驱动 https://blog.csdn.net/u010261063/article/details/136157718 MultiButton 简介 MultiButton 是一个小

沁恒CH32V30X学习笔记11---使用外部时钟模式2采集脉冲计数

使用外部时钟模式2采集脉冲计数 使用外部触发模式 2 能在外部时钟引脚输入的每一个上升沿或下降沿计数。将 ECE 位置位时,将使用外部时钟源模式 2。使用外部时钟源模式 2 时,ETRF 被选定为 CK_PSC。ETR 引脚经过可选的反相器(ETP),分频器(ETPS)后成为 ETRP,再经过滤波器(ETF)后即成为 ETRF。 在 ECE 位置位且将 SMS 设为 111b 时,那么,相当于

沁恒CH32V30X学习笔记10---pwm输出

PWM输出 PWM 输出模式 PWM 输出模式是定时器的基本功能之一。PWM 输出模式最常见的是使用重装值确定 PWM 频率,使用捕获比较寄存器确定占空比的方法。将 OCxM 域中置 110b 或者 111b 使用 PWM 模式 1 或者模式 2,置 OCxPE 位使能预装载寄存器,最后置 ARPE 位使能预装载寄存器的自动重装载。在发生一个更新事件时,预装载寄存器的值才能被送到影子寄存器,所

沁恒CH32V30X学习笔记06---串口dma接收+空闲中断组合接收数据

DMA 控制器提供 18 个通道,其中 DMA1 包含 7 个通道,DMA2 包含 11 个通道,每个通 道对应多个外设请求,通过设置相应外设寄存器中对应 DMA 控制位 通道映射 dma1 dma2 示例代码 bsp_usart_it.c /** bsp_usart_it.c** Created on: 2024年2月18日* Author: admin

沁恒CH32V30X学习笔记02--GPIO的使用教程及2次封装驱动

gpio 概述 刚复位后,GPIO 口运行在初始状态,这时大多数 IO 口都是运行在浮空输入状态 外部中断 所有的 GPIO 口都可以被配置外部中断输入通道,但一个外部中断输入通道最多只能映射到一个 GPIO 引脚上,且外部中断通道的序号必须和 GPIO 端口的位号一致,比如 PA1(或 PB1、PC1、PD1、PE1 等)只能映射到 EXTI1 上,且 EXTI1 只能接受 PA1、

沁恒CH571 CH573 CH582 CH583蓝牙芯片GPIO的基本操作

摘要:本文介绍一下沁恒蓝牙芯片GPIO点亮小灯时所需的一些基本GPIO函数。 初始化代码可以放在main函数中,也可以放在其他函数中(低电量模式下)。对,下面这一个语句就行了。模式有很多种: GPIO_ModeIN_Floating, //浮空输入                                             GPIO_ModeIN_PU,       //上拉

【沁恒蓝牙mesh】CH58x DataFlash 详解

本文主要介绍了 沁恒蓝牙芯片 CH58x 的 DataFlash 分区以及读写操作以及原理 📋 个人简介 💖 作者简介:大家好,我是喜欢记录零碎知识点的小菜鸟。😎📝 个人主页:欢迎访问我的 Ethernet_Comm 博客主页🔥🎉 支持我:点赞👍+收藏⭐️+留言📝📣 系列专栏:沁恒蓝牙mesh二次开发 🍁💬格言:写文档啊不是写文章,重要的还是直白!🔥 【沁

【沁恒蓝牙MESH】CH582串口中断内存溢出导致MCU频繁重启

本文主要记录了【沁恒蓝牙mesh】CH582串口中断内存溢出导致MCU频繁重启 由于开发疏忽,导致的数组内存溢出,是入门嵌入式开发经常忽视的错误,用以记录,共勉!! 目录 1. 遇到问题描述以及解决1.1 问题一:串口中断导致MCU频繁重启1.1.1【场景描述】1.1.2 【问题描述】1.1.3 【问题定位】1.1.4 【问题解决】 💖 作者简介:大家好,我是喜欢记

【沁恒蓝牙mesh】OTA功能详解

本文基于沁恒CH58X 单片机的OTA功能 一键三连,收藏+点赞+评论 私信可获取原文 📋 个人简介 💖 作者简介:大家好,我是喜欢记录零碎知识点的小菜鸟。😎📝 个人主页:欢迎访问我的 Ethernet_Comm 博客主页🔥🎉 支持我:点赞👍+收藏⭐️+留言📝📣 系列专栏:沁恒蓝牙mesh二次开发 🍁💬格言:写文档啊不是写文章,重要的还是直白!🔥 OTA 下位机

沁恒 CH32V208(一): CH32V208WBU6 评估板上手报告和Win10环境配置

目录 沁恒 CH32V208(一): CH32V208WBU6 评估板上手报告和Win10环境配置沁恒 CH32V208(二): CH32V208的储存结构, 启动模式和时钟沁恒 CH32V208(三): CH32V208 Ubuntu22.04 Makefile VSCode环境配置沁恒 CH32V208(四): CH32V208 网络DHCP示例代码分析沁恒 CH32V208(五): CH3

沁恒CH582

目录 一、串口打印 二、SD卡 2.1:SD卡容量读取 2.2 :由模拟SPI读写改成硬件SPI 2.2.1 模拟SPI 2.2.2 模拟SPI         2.2.3 SPI速率问题 三、触摸 四、TMR定时器 (22.11.1)  五、BLE(22.11.2) 六、ADC采样 七、低功耗 一、串口打印 新板的串口为UART3,默认配置的是UART

沁恒CH32V307以及CH32VF103中断只能进一次的解决方法

文章背景 ​ 笔者最近使用沁恒CH32V307处理器进行应用开发,基于RT Thread实时操作系统和LWIP做TCP和CAN的透传。因为官方BSP并没有适配RT Thread的CAN驱动,暂时将RT Thread作为普通实时系统使用,先不对CAN外设进行系统抽象。但写完调试程序后发现中断只能进入一次,遂开始研究解决,将解决过程撰文记录,供后来人参考。 解决方法 ​ 先不过多的说废话,直接贴

沁恒 CH32V203C8T6 RISC-V 单片机无法烧写

单片机:CH32V203C8T6 IDE: MounRiver Studio v1.90 单片机架构:RISC-V 问题描述: 新打回来的板子,无法烧写程序,提示如下: ------------ Begin flash process of "obj\TR350.hex" ------------ 10:24:46:546 >> Current proj