沁恒CH552G实现最小系统[沁恒8位机MCU最小系统]

转载著名出处。

一、目标:

学习沁恒的8位机最小系统的实现。
最小系统连接方式通用下面所有常规8位MCU
在这里插入图片描述


二、资料获取:

1、首先从沁恒官网下载CH552的datasheet: CH552官网手册下载链接.
2、开发资料,包括示例代码,评估板说明书、原理图:官网链接.
  (沁恒还是比较接地气的,资料网站上比较全,而且都能下载到。。。。懂得自懂)


  沁恒的8位机全部支持芯片内置晶振,所以最小系统可以不需要单独的晶振,而且他们的Bootloader也是用的内置晶振实现的烧录。所以我们的最小系统只需要处理芯片的供电就可以了。
  ①先看手册的引脚描述,芯片一共有两个电源引脚,一个GND引脚,还有一个RST引脚:

在这里插入图片描述
②再来看下手册中对于芯片电源处理部分的描述:

在这里插入图片描述
③看一下原理图上电源的处理:
在这里插入图片描述
在这里插入图片描述
常见的单片机系统分为5V系统和3.3V系统,可以发现:
CH552工作在不同电压时,VCC和V33引脚供电接法不同
这点在原理图中直接写明了。

三、绘制最小系统原理图:

以3.6V电压为分界点:

1、供电电压大于3.6V的最小系统如下:

在这里插入图片描述

2、供电电压小于3.6V的最小系统如下:

在这里插入图片描述

复位引脚

  关于芯片RST引脚,芯片是外加高电平复位的,而且RST引脚内置了下拉电阻,内置了上电复位电路。之前和沁恒工程师咨询过,如果产品中用不到外部复位功能,可以直接把RST脚悬空处理,依靠内置的上电复位电路就可以了(上电复位时间典型值11毫秒)。也可以直接在下载代码过程中在WCHISPTool工具中直接关闭RST功能。
  这里就直接悬空处理了,产品外壳做好也没有办法提供复位按键了。


三、注意事项:

0、

CH554/CH552不支持3.3V供电电压下烧录程序!!!因此踩坑了!!!
在这里插入图片描述

1、

电源引脚上的0.1uF电容不能省略,不然就会出现单片机跑不起来的现象。老老实实按照手册说的来放置外围器件吧。
最小系统原理图中的电源引脚上的所有电容,都应当尽可能的靠近芯片放置,且电容接地一端,地的回路要短(和芯片GND脚连在同一片完整的铺铜上)。

2、

芯片工作在5V电路时,V33引脚会输出一个3.3V的电压,这个电压不能给外部器件供电,也就能够给BOOT引脚提供一个高电平上拉。

3、

因为USB数据线的电压时3.3V的,所以要注意芯片的USB通讯引脚最高只能承受3.3V,和其余的GPIO(最高承受VCC电压)不太一样。
在这里插入图片描述
在这里插入图片描述

4、

芯片冷启动过程中检测引脚电平,默认boot脚都是UD+,需要外接4.7~10K的上拉电阻实现,直接短接到3.3V电压就会导致电平钳位无法实现USB通讯。

5、

通常情况下供电电压主要考虑外围电路电压匹配的问题,仔细翻看参数可以发现系统主频和芯片供电电压有关系
在这里插入图片描述
想要主频跑的高,就要确保芯片供电电压在范围内。不然就会出现程序能下载,但是死活运行不起来的情况。

6、

在我们实际做产品板子的时候,一般会将电源和通讯引脚做成测试点的形式,用烧录探针压上去实现烧录。可以省略下载电路(按键+上拉电阻)。在烧录工装上(探针)实现UD+的上拉,这样会降低PCB复杂度。

7、

CH559\558的IO电压比较特殊,其余的8位机IO引脚支持的电压范围都是 0 ~ VCC,而CH559\558为0 ~ VDD33。

### 基于沁恒 CH32V307 芯片的最小嵌入式系统设计方案 #### 1. 系统概述 CH32V307 是一款基于 RISC-V 架构的高性能微控制器,具备丰富的外设资源和支持多种高速通信接口。为了构建一个稳定可靠的最小嵌入式系统,在设计过程中需考虑电源管理、时钟配置以及必要的外围电路。 #### 2. 电源供应 对于 CH32V307 的最小系统而言,确保稳定的电压输入至关重要。该芯片工作电压范围为 2.0V 至 3.6V[^1]。因此建议采用线性稳压器或低压差 (LDO) 稳压器来提供干净且稳定的供电环境。通常情况下可以选择 AMS1117 或者其他类似的 LDO 来满足需求。 #### 3. 复与调试接口 除了基本的电源引脚之外,还需要关注复(RST) 和调试(SWD) 接口的设计。复按钮应当连接到 RST 引脚以便手动重启设备;而 SWD 则用于程序下载及在线调试目的。SWD 接口至少应包含 GND、SWCLK、SWDIO 及 VCC 四条信号线[^3]。 #### 4. 晶振与时钟源选择 虽然 CH32V307 内置了 RC 振荡器作为默认时钟源,但在追求更高精度的应用场景下推荐使用外部晶体振荡器(XTAL),比如常见的 8 MHz 或 12 MHz XTAL。这不仅有助于提高系统的稳定性还能改善定时准确性。 #### 5. 最小化外围组件数量 考虑到成本控制和 PCB 尺寸优化的需求,在不影响核心功能的前提下尽可能减少不必要的元器件。例如利用内部集成的功能模块代替外部传感器或其他专用 ICs。此外还可以借助软件手段补偿硬件上的不足之处。 ```c // 初始化系统时钟并启用HSE(假设使用8Mhz外部晶振) void SystemClock_Config(void){ RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; // 配置 HSE 模式为开启状态 RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; RCC_OscInitStruct.HSEState = RCC_HSE_ON; HAL_RCC_OscConfig(&RCC_OscInitStruct); // 设置AHB/APB分频因子 RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSE; RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0); } ```
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值