摘要:
串口通讯波特率出现误差的因素 串口通讯是一种异步通讯,收发双方需要按照约定的波特率进行通讯。当波特率出现误差时,在一些高精度要求场所可能会导致通讯出错。 那导致波特率出现误差的因素都有哪些呢,今天就来分析一下。 1.分频误差 首先,波特率是根据系统时钟分频产生的,而系统时钟和波特率可能不是整数倍的关 阅读全文
摘要:
可编程电压监视器PVD,主要被用于监控系统主电源的变化,与电源控制寄存器PWR_CTLR 的PLS[2:0]所设置的门槛电压相比较,配合外部中断寄存器(EXTI)设置,可产生相关中断,以便及时通知系统进行数据保存等掉电前操作。 配置方法如下: 先使能PWR时钟,然后设置电压监视阈值,随后使能PVDE 阅读全文
摘要:
SPI主机硬件片选功能使用说明 SPI协议最早的标准,是由摩托罗拉公司制定。在协议使用的过程中,根据实际需求可能会进行一些扩展和修改。 在一份由飞思卡尔半导体发布的SPI V4.01版本规范中,对片选引脚做了如下的描述:The SS/ output feature automatically dri 阅读全文
摘要:
本文主要实现将FLASH中的代码搬运到RAM运行 我们的CH32V2/3系列MCU有几十K,几百K的非零等待FLASH,遇到FLASH不够用的情况实在可惜。主要以V307举例,针对零等待FLASH不够用的情况。 典型应用: 1.IAP占用了几K空间,搬到RAM后,可以让IAP所占零等待FLASH大幅 阅读全文
摘要:
一、实验概述 以下说明描述三种改变PWM占空比的方式,对于当前PWM输出波形的影响 1、禁止预装载功能,在PWM某一周期波形输出过程中改变占空比值(ccp) 2、禁止预装载功能,在PWM某周期波形输出完成后改变占空比值(ccp) 3、使能预装载功能,在PWM某一周期波形输出过程中改变占空比值(ccp 阅读全文
摘要:
芯片睡眠模式下看门狗的使用: 由于独立看门狗的特殊性,一旦开启就不能再被关闭,除非发生复位。而睡眠时程序又是停止运行的,这样就无法及时喂狗,从而导致看门狗复位。那么就需要软件上做些特殊 处理 方法1:在低功耗模式下进行RTC定时唤醒CPU进行喂狗操作之后在进入低功耗睡眠模式,因为在睡眠模式下是无法进 阅读全文
摘要:
重映射功能 外设引脚重映射的概念,即一个外设的引脚除了具有默认的端口外,还可以通过设置重映射寄存器的方式,把这个外设的引脚映射到其它的端口。 简单的讲就是把管脚的外设功能映射到另一个管脚,但不是可以随便映射的。 部分重映射 & 完全重映射 部分重映射: 功能外设的部分引脚重新映射,还有一部分引脚是原 阅读全文
摘要:
以CH32V307EVT中IAP例程举例。 代码结构分为IAP+APP,共有两个工程,先下载IAP,再通过WCHMcuIAP_WinAPP工具下载APP,实现在应用升级功能。 IAP例程在flash 0地址起始,所以无需关注中断向量偏移,IAP例程可以实现USB和串口下载。在IAP例程中配置APP跳 阅读全文
摘要:
一、CH32V003、以F4P6封装为例: 1、PA1、PA2为外部晶振输入,如果程序内部使用的时外部晶振,单没有外接晶振,芯片将以HSI(8M)运行,会导致延时与外设时序错误。如果需要使用外部晶振,需要关闭PA1、PA2的GPIO功能。具体配置 /* Close PA0-PA1 GPIO func 阅读全文
摘要:
Keil无法识别WCHLink解决方法 一、查看link状态: 将link切换到ARM模式即蓝灯常亮状态。 二、Keil-ARM 模式-WinUSB 使用条件: Keil V5.25 及以上版本; ARM-CMSIS V5.3.0 及以上版本。 注:若使用 Keil-V5.25 以下版本,可将 WC 阅读全文