您的位置 首页 编程

怎样学习STM32单片机?看老司机是怎样说的!

不要去学STM32。我不是说STM32不好,而是这种为了学习单片机而去学习单片机的思路不对。你问,如何系统地入门学习stm32?本身就是一个错误的问题。假如你会使用8051,会写C语言

  不要去学STM32

  我不是说STM32欠好,而是这种为了学习单片机而去学习单片机的思路不对。

  你问,怎么体系地入门学习stm32?

  自身便是一个过错的问题。假设你会运用8051 , 会写C言语,那么STM32自身并不需求故意的学习。

  你要考虑的是, 我可以用STM32完成什么?

  为什么运用STM32而不是8051? 是由于51的频率太低,无法满意核算需求?是51的管脚太少,无法满意很多外设的IO? 是51的功耗太大,电池挺不住?是51的功用太弱,而你要运用SPI、I2C、ADC、DMA? 是51的内存太小而你要存储的东西太多?

  当你需求运用STM32某些功用,而51完成不了的时分, 那STM32天然不需求学习,你会直接去寻觅STM32某方面的运用方法。比方要用spi协议的网卡、要运用串口通讯、要运用rtos等等…

  关于寄存器vs库

  我的观念是:当你debug的时分寄存器很重要,当你需求了解芯片作业细节的时分寄存器很重要,当你开发的时分寄存器不重要。假如你没有遇到非直接装备寄存器不行的状况,那么就不要直接面向寄存器层面开发, 由于面向寄存器开发取得的优点往往抵消不掉这样做的害处。 面向寄存器开发程序功率高,可是你需求为了进步0.01%的功率糟蹋10倍、甚至100倍的时刻。 已然ST公司现已给你供给了好用的库,没有道理要重新造轮子。

  那什么时分有必要直接操控寄存器?

  榜首、某一个代码块调用十分频频。比方你有一个巨大的for循环,那么这个for循环中的每一步操作都应该被慎重的优化,优化杰出就可以取得更好的功能。这种状况一般常见于图画处理相关的代码中。

  第二、库函数有bug。这个遇到的概率十分低,但的确存在。不过一般来说假如mcu表现出意料之外的行为, 你首要要想的应该是你的代码写的有bug,而不是库函数有bug。 假如库函数真的有bug,你去google搜一下,相信你肯定不是榜首个踩坑的人。

  关于传统的电子工程师来讲,运用库编程可能会感到有一点虚,感觉没有兢兢业业的感觉。 但假如你写过web、写过服务器端代码、写过桌面端代码的话,你就一定会了解API、封装、笼统的含义。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/biancheng/114788.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部