51单片机是8位单片机,结构简单,寄存器很少,价格便宜,非常适合功能单一的控制场合。所以在一些儿童玩具,门锁控制的功能单一的场合很适合。
STM32单片机内核是基于Arm Cortex M内核的,功能强大,价格相对较高,片上资源相对丰富,同样学习起来相对复杂,但是适合多种控制场合,现在的智能设备越来越多,功能也越来越复杂,所以STM32这种功能强大的单片机市场占有率越来越高。现在新学的话还是建议直接学习STM32,毕竟功能强大,并且应用也广泛。ST对于其单片机的生态系统提供非常完善的方案,使用STM32CubeMX,配合HAL库和LL库能够快速建立工程,配置引脚和时钟,加上官方的HAL驱动库,用户只需要吧精力放在业务逻辑处理上就可以,已经大大降低了STM32的学习难度。所以还是建议直接学习STM32.
51简单stm32性能强大
所以要简单就学51要强大运算能力就学stm32
还有一个选择如果不高兴折腾硬件直接arduino有各种现成模块拼起来写点程序就好用了
51单片机和STM32单片机是现在产品开发中很常见的芯片。
51是8位单片机,内核是51的内核;STM32是32位单片机,内核有Cortex-M3,M4,M7。
51单片机开发还是以操作寄存器为主,因为寄存器少,所以入门简单些,但也决定了性能比不上STM32。
STM32的性能强很多,开发时可以操作寄存器,可以使用ST公司推出的固件库进行开发。而且STM32的开发生态环境越来越完善,开发起来也不难。
建议学习STM32吧,毕竟STM32在国内的使用应该是第一了吧,用的人多,资料也越多。
51单片机是51内核,是8位单片机,适合入门学习,简单,便宜,但是性能相对比较差
32是CortexM内核,是32为单片机,适合深入学习,性价比高,性能较好,现在很多产品就是用32开发
当然直接学32也不难,它的库函数开发方式和学习资料也是非常多
51优势很明显是价格低廉,上手简单,满足初学者和基础应用的需求
而32性能强大,性价比高,适合深入的学习研究,适合对引脚数和性能要求较高的场合
51就是价格低 ,开发简单
32是外设多,主频高,功能强大
51单片机目前的优势应该是上手简单,因为寄存器少,所以学习起来不会花太长时间,同时成本也低;而且很多51内核的单片机都推出针对性功能的芯片。
同时51单片机是8位的,性能远比不上STM32。
STM32性能强,外设多,价格也高一些。STM32虽然寄存器很多,但是现在很少用寄存器方式,都是使用库函数,这样开发效率就提高不少。
至于学哪个,看兴趣和工作需要。不过就国内市场而言,STM32用的更多。
51学习简单,好入门的,而且成本低,应用广,只是性能不太高
32的性能比较高,协议与外设是很多的,可以接很多电路,学习资料也多,只是比51复杂一些
51的最大的优势就是价格了,比32的价格要高不少的,
32的最大优势就是性价比了,同样的性能,价格是比较可观的
现在用最老的那种89C51的已经比较少了,一般是用STC12 STC15这种改良版本的51,优势是价格比较低,适用于那种对性能外设都没什么特别要求的场合
STM32的优势则是性能较强,用的是32位的ARM核,外设也比较丰富,然后它的产品线,覆盖从低功耗的L0,一直到高性能的H7,适用于多种不同的场合