不可以。stm32的程序和51单片机是不能通用的。主要原因有三点:
1、STM32是32位,而51是8位,所以程序变量的定义是不一样的。
2、它们的内部功能结构是完全不同,所以程序自然也就不通用。
3、这两种单片机的主频差别很大,如果程序对实时性有要求,那么就更不能通用了。
1、库函数不同。由ST厂商推出的STM32系列单片机,ST厂商给了丰富的函数库,可以直接使用库函数,所以比起普通的51单片机在程序编写方面要更加的省时。
2、运行速度不同。普通的51单片机运行速度较慢,特别是双数据指针,而STM32系列单片机最高工作频率可达72MHz。
3、便利程度不同。51单片机的任何器件只需要配置寄存器打开就可以进行编程,而STM32系列单片机则需要先打开对应的时钟,包括开启后打开外部时钟(晶振)才开始工作。
4、资源不同。STM32的内部资源(寄存器和外设功能)较普通的51单片机都要多,基本上接近于计算机的CPU了,所以在程序编写上能有更多的选择。
5、编程语言选择不同。STM32基本不会选择汇编语言了,因为工程量巨大,寄存器太多了,位数也多,而51单片机则多使用汇编语言。至于C语言编程方面的区别就不大了。
参考资料来源:百度百科-stm32
参考资料来源:百度百科-51单片机
不难,多看资料,先用汇编写几个小程序,然后再用c,买一块开发板,结合例程在开发板上多实践,然后给自己提出要求,自己结合开发板编一些小程序,有了体会就容易了。
STM32不错的单片机。
如果学过单片机是最好的。在学的时候建议先买一块开发板,然后可以到网上书城买关于STM32的书,这个还是比较多的,如果直接看英文版的话,像我这样的英文菜鸟,没看几页就晕了。还有可以多上上论坛,个人觉得阿莫论坛是不错的,里面有很多高手和牛人。在学的过程中,一般都是先学GPIO和中断,因为这个比较基础和简单,可以一边学一边自己试着去模仿例程去写(可以用固件库或者写寄存器,固件库相对比较简单,开发周期短,但没有写寄存器稳定),然后就可以去看USART、SPI、I2C或者定时器。最后可以自己做一些小项目来综合一下
模拟IO口方式直观好理解,效率不是很高。STM32可以用硬件SPI、USART *** 作。并口的话用STM32F103VCT6以上的具有FSMC的型号可以像51一样定义外部存储器地址。话说这片子的范例程序也只能做个参考,各种while阻塞式延时,程序跑起来卡得一塌糊涂。要想做好,还是得用状态机和定时器代替死等。
以上就是关于51单片机开发板上可以用stm32单片机吗全部的内容,包括:51单片机开发板上可以用stm32单片机吗、stm32跟普通的51单片机在程序编写方面有什么区别、我以前学过51单片机,现在想去学STM32,不知道难不难,现在我该怎么样去入门呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)