ch32和stm32的区别

发布者:zhihua最新更新时间:2024-07-18 来源: elecfans关键字:stm32 手机看文章 扫描二维码
随时随地手机看文章

引言

STM32是STMicroelectronics基于ARM Cortex-M处理器架构生产的一系列微控制器,而CH32是中国制造商WCH生产的一组微控制器

在本文中,我们将讨论CH32和STM32微控制器之间的差异。

处理器

这两个微控制器之间的主要区别在于它们所基于的处理器。CH32微控制器基于名为CH32F103C8T6的8位单周期RISC(精简指令集计算机)处理器,而STM32微控制器则基于32位ARM Cortex-M处理器。

ARM Cortex-M处理器比CH32微控制器中的8位RISC处理器先进得多,这使得STM32微控制器比CH32微型控制器更强大、更高效。

外围设备

这两个微控制器之间的另一个重要区别是它们提供的外围设备。STM32微控制器提供广泛的外围设备,包括USB、USART、SPI、I2C、ADC、DAC等。另一方面,CH32微控制器提供的外围设备较少,并且不如STM32微控制器通用。

存储器容量

与CH32微控制器相比,STM32微控制器具有更大的存储容量。STM32微控制器通常提供高达1MB的闪存,而CH32微控制器仅提供高达128KB的闪存。

这意味着STM32微控制器更适合于需要更大内存容量的应用,例如复杂的算法和广泛的数据存储。

软件开发

当谈到软件开发时,这两种微控制器之间存在一些差异。STM32微控制器通常与STM32CubeIDE开发环境一起使用,该环境为代码开发提供了一个免费、用户友好的集成开发环境(IDE)。

相比之下,CH32微控制器通常使用Keil开发环境进行编程,该环境不如STM32CubeIDE用户友好。

另一个重要的区别是STM32微控制器比CH32微控制器对不同的操作系统提供了更多的支持。STM32微控制器支持广泛的操作系统,包括Windows、Linux和Mac OS,而CH32微控制器则没有那么通用。

价格

在选择这两款微控制器时,价格是一个需要考虑的重要因素。CH32微控制器通常比STM32微控制器便宜。然而,考虑到STM32微控制器的附加功能和功能,价格差异并不显著。

结论

总之,STM32微控制器比CH32微控制器更先进、更通用,因为它们提供了更强大的处理器、更多的外围设备、更大的内存容量和用户友好的开发工具。尽管CH32微控制器更便宜,但STM32微控制器的附加功能使其成为大多数应用的更好选择。


关键字:stm32 引用地址:ch32和stm32的区别

上一篇:hc32和stm32的区别
下一篇:STM32四种库对比 STM32标准库和HAL库有什么不同?

推荐阅读最新更新时间:2024-11-12 15:08

STM32 SPI NSS信号理解和DMA传输遇到的问题
最近做个项目,用到了SPI,遇到一些问题。 SPI,四根线,MISO,MOSI,SCK,和NSS,这其中NSS用起来最容易踩坑。NSS是片选线,是用于选择从器件的引脚,可让SPI主器件与从器件进行单独通信,从而避免数据线上的竞争。 问题1:从机发送数据给主机 要知道,SPI主机发数据,从机去收。但是从机发数据,主机可以不理会。因为主机控制着SCK线,从机若想要发送数据,只能去通知主机来“读”。怎么通知? 从机若有数据要发送给主机,可以用一根 INT 线来通知,拉低这根线,主机检测到 INT线被拉低,就可以发送一个废字节,从而去交换从机要发送的有效数据。因为当主机往DR寄存器里面写数据时,就会自动开启SCK,在SCK的
[单片机]
<font color='red'>STM32</font> SPI NSS信号理解和DMA传输遇到的问题
STM32之USART串口接收数据处理
//原帖http://bbs.elecfans.com/forum.php?mod=viewthread&tid=445463 //在学习过程中发现几处编译错误,并改正; //主要贴出定义、和中断函数部分; uint8_t usart_rx_buf ; //接收缓冲,最大40个字节 uint8_t usart_rx_temporary ; //数据保存暂存器,最多能够缓存40个字节 uint8_t usartrxbuf_pagebuf=0; //最上面接受缓存的页码(5)缓存 uint8_t usart_rd_len=0; //有用信息的数据长度 uint8_t usart_rd_lentemp=0; //用来记录已
[单片机]
ST推出关于STM32应用设计的新软件
功能强大的STM32Cube™ 新软件平台由设计工具、中间件和硬件抽象层组成,让客户能够集中精力创新。 中国,2014年3月10日 ——横跨多重电子应用领域的全球领先的半导体供应商、全球领先的ARM® Cortex™-M-内核微控制器厂商意法半导体针对STM32微控制器推出一套免费的功能强大的设计工具及软件STM32CubeTM。新开发平台可简化客户的开发项目,缩短项目研发周期,并进一步强化STM32在电子设计人员心目中解决创新难题的首选微控制器的地位。 STM32Cube™ 开发平台包括STM32CubeMX图形界面配置器及初始化C代码生成器和各种类型的嵌入式软件。配置初始化工具能够一步一步地引导
[嵌入式]
ST推出关于<font color='red'>STM32</font>应用设计的新软件
为什么STM32从Flash地址0x08000000的启动重映射
在初写STM32程序时,遇到一个困惑,STM32的Flash在MDK里被设置为起始地址0x0800 0000,而CM3手册规定芯片复位时要从0x0000 0000地址开始取出中断向量 ,那STM32怎么样执行代码呢?地址重映射?或者在0x0000 0000里有对应有实际存储器? 仔细阅读手册,发现这件事是因为STM32设计的Flash起始地址是在0x0800 0000位置开始的。全部代码都只能从这里开始存储。详见STM32 referenc manual手册第54页。 那既然从这里才能存储代码,就必须在MDK里设置Flash地址为0x0800 0000,下面是MDK设置页面,这个应该都看到过。 这样就还有一个问题,理论上,CM3
[单片机]
STM32的输入捕获
实验目的: 在串口调试助手上打印出按键按下的时间 实验步骤: 实验程序: /*******************************timer.c********************************/ #include sys.h #include stm32f4xx.h extern u8 TIM5CHA1_CAPTURE_STA; extern u16 TIM5CHA1_CAPTURE_VAL; /* 本示例的作用就是, 当按键按下时,每次输入捕获的时间差, 然后从串口调试助手中打印出其时间差; */ /*
[单片机]
STM32关于各种头文件No such file&nb
1.首先,一定要清晰的了解工程设置路径的含义,为什么要设置这个路径而不是别的?出于什么原因设置的?答:工程设置的路径是在搜索*.h文件。 下图是我的工程路径,其中User文件夹是用来存放我自己需要编写或修改的文件。 我们再看来一下User路径下的文件。其中3个.c文件和2个.h文件都是在官方库的STM32F10x_StdPeriph_Lib_V3.5.0ProjectSTM32F10x_StdPeriph_ExamplesSDIO路径下复制过来的。 STM32_EVAL存放着从官方库里边复制过来的 stm32_eval.c stm32_eval.h stm32_eval_sdio_sd.c stm32_eval_sdio_sd
[单片机]
<font color='red'>STM32</font>关于各种头文件No such file&nb
STM32 DMA彻底研究
typedef struct { u32 DMA_PeripheralBaseAddr; u32 DMA_MemoryBaseAddr; u32 DMA_DIR; u32 DMA_BufferSize; u32 DMA_PeripheralInc; u32 DMA_MemoryInc; u32 DMA_PeripheralDataSize; u32 DMA_MemoryDataSize; u32 DMA_Mode; u32 DMA_Priority; u32 DMA_M2M; } DMA_InitTypeDef; DMA_InitTypeDef 定义于文件“stm32f10x_dma.h” DMA_PeripheralBaseA
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved