stm32跟普通的51单片机在程序编写方面有什么区别?

如题所述

第1个回答  2018-10-13
区别主要在于使用的编程软件不同。如果想学习STM32单片机应用,只要有了实验板、下载配置好相关编程软件,实验一个例程就啥都懂了。如果采用寄存器方式编程,倒是可以借鉴51单片机的编程模式,但需要设置的东西非常多,如果采用库函数方式编程,就与51单片机编程方式不同了。
第2个回答  2018-09-23
stm32是32位单片机,诺依曼架构,51是哈佛架构的8位单片机,细微区别多了去了,比如stm32是统一编址,51是ram和rom分开编址,int类型默认的长度不同,stm32默认32位,51默认16位,long类型计算周期差别更大,如果是汇编的话,指令就相差更多了,stm32是ARM4内核,内核寄存器就比51多很多很多,中断向量也是多而复杂,嗯,编不下去了
第3个回答  2018-10-14
51主要是调用寄存器,而32里面的寄存器太多,商家就把它封装成了很多库函数,你只用调用库函数就行了。这是其最大区别。
第4个回答  2018-10-15
以C进行"操作"时并无明显区别, 使用上并无大变化. 唯单片机核心架构不同, 故其Register控制方式不同, 会有些差异, 多是因为在硬件架构所致.
例如: 中断上的操作比单纯的bit控制, 多上一些复杂度; boot起始位置也具备变化性; IO设置与51的直接输出控制稍有不同, 多了些设置; 其他则需要个别依照所用到的部分, 逐一查阅文件.
第5个回答  2018-09-20
51的比较简单一点,寄存器比较少,编程直接可以操作寄存器,编程方便。
STM32因为内部功能很多,寄存器也多,ST公司为了快速推广STM32单片机,于是做了一个寄存器配置库文件,工程师通过调用STM32的库文件,可以不用了解内部寄存器,直接部署功能即可,比较像纯软件编程。
相似回答