发布网友 发布时间:2022-04-02 13:24
共4个回答
热心网友 时间:2022-04-02 14:54
如果用C编程,差别不是很大,51代码移植到STM32也不是很麻烦。
主要有以下不同:
1.库函数。ST厂家给了丰富的函数库,直接使用库函数,基本就能搞定所有事情。省时省力。
2.速度。STM32主频72MHZ,飞一般的速度,超级爽。基本上不用考虑处理能力的问题,不论你的算法有多笨拙,STM32会瞬间帮你执行完。
3.管脚。什么地址锁存,什么3-8译码器,统统忘掉吧,充足的IO接口让你爽歪歪。
4.外设。3个串口,2个SPI,3个CAN,两个USB,n个Timer。。。你会发现51真傻*。
5.薪酬。嘿嘿,你学会了,老板会给你涨工资的。
热心网友 时间:2022-04-02 16:12
完全可以,其实也很简单。
ST提供了比较完善的固件库,把STM32的各种寄存器等等东西都用结构体等等组织好了,你只要直接使用,很方便,没有了研究寄存器的繁琐事了。而且官方提供了很多例程,很多东西改动改动就OK了。
在编程上,和51还是有差别的。STM32的GPIO比51单片机强大很多倍,51单片机的P0口你可能需要外接上拉电阻,STM32的GPIO可以通过相关寄存器配置上拉、下拉、浮空、开漏、推挽等等模式,灵活方便。
热心网友 时间:2022-04-02 17:46
基本概念stm32和51差不多,但是编程方式及思考编程的思路方面还是有差距的,可能需要改变一下51时候的编程方式及思路。
热心网友 时间:2022-04-02 19:38
51和大多数单片机一样,是没有固定的书写方式的,也就是编程风格自由确定,自己想怎么来就怎么写,但是需要详细连接芯片内部结构,寄存器等,才能很好的书写程序,前后排序,但stm公司却出了一个所谓的库,用的是位段,结构+共用+链表的方式来控制端口控制寄存器等,初学者不需要了解芯片内部结构,只需读懂库,就可以对应其功能的控制,看起来旨在模仿C++的动态库了,但是你一旦习惯了这种独家风格,以后写其他芯片就受限了,因为没有库可调用,特别是到了arm9,A8等高端芯片,都是linux内核+驱动程序的,这时就感觉到苦头了,如果定位在永远不上系统,一辈子裸跑,那就沉浸在stm的库里吧,如果想升级到系统架构,那就最好不要受他独家库的影响