找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5841|回复: 0
打印 上一主题 下一主题
收起左侧

单片机小白应该如何系统地入门学习stm32才有效啊?

[复制链接]
跳转到指定楼层
楼主
ID:255072 发表于 2018-10-24 17:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  心得:本人当初学习STM32的时候有一些跟风的因素,自以为学的芯片越多就越厉害 =_=、 其实,学习嵌入式重要的是整体的工程思想和项目经验积累,说到底这些芯片,我感觉学习起来都差不多吧,无非就是对内资源(寄存器、中断、定时器、串口等等),和对各种外设的操作而已,挂载的外设越多,系统会越复杂,这时可能会用上操作系统,同时,如果工程中涉及到各种算法、自动控制、采样、滤波等实际问题的时候,不仅会上操作系统,而且还对数学、物理、电路等方面知识要有较强的功底,对编程的能力的要求会更高,此时就要求对STM32的各种资源有比较明晰的了解了。
  回到问题,题主问:如何系统的学习STM32?(这个问题,,,讲句实话,以本人的水平,真的不敢强答 =_=,才学有限,仅仅提几点建议吧)建议:
  1、要动手实践,要动手实践,要动手实践!下面有位答主也提到了,工科类的东西光看是不够的!算法如何实现,自己独立设计再动手去敲一敲就知道了;外设如何驱动,找到芯片手册,照着时序图自己敲一遍;涉及到操作系统部分的内存管理与进程调用,找到源码仔仔细细研读几遍(自己应该写不出吧 =_=),相信你一定会很有收获的,可能我这个方法比较笨,但是确实挺实用的,个人觉得。
  2、准备好资料与开发板相信很多人都有这样的意识吧,学一款芯片首先想到的是买一块开发板,对的,没错!巧妇难为无米之炊嘛,这里推荐两本书《C和指针》、《Cortex-M3权威指南》和《STM32库开发实战指南》网上都有PDF版本,结合自己的开发板配套的视频教程(某火的讲的就不错,需要的话私信发给你),先要理解透彻,然后自己独立去敲一敲,触类旁通,例子上给出的都不会很难,知识的拓展很重要,就是举一反三。
  还有,不懂得话就多去各大论坛大神虚心请教,论坛里有很多经验帖子值得学习。
  3、库开发与寄存器开发?现在STM32入门门槛都不高,稍微有点C语言和单片机基础的都能学,有人说:寄存器操作那么复杂难懂,那一堆寄存器名字都记不住,,,那寄存器开发是不是就不重要了?显然不是,我会说大牛与菜鸟的却别就在这儿?尽管我也很菜。。。
  建议:库开发为主,看寄存器是为了理解实现的原理,所以寄存器部分不能丢了。有余力可以深入学习下,这对M3内核的理解很有帮助,以及后面ARM系列芯片的学习都很有帮助。
  4、多做东西。在实际工程项目中去锻炼能力题主才大一,若对这一块感兴趣的话,可要把51单片机的知识深入透彻地学扎实哟,这是基本功。
  尽量争取加入实验室,跟着学校实验室的老师、学长,学姐,并积极参加校内外组织的各种比赛,如电赛、全国STM32大赛,飞思卡尔智能车,四旋翼等等。一开始不懂没关系,只要他们不嫌弃你,积极好学、不要怕苦!(在实验室里要谦虚、好学、低调啊,切勿装逼!否则被打脸是很惨的,别问我怎么知道的 =_=........),有条件的话,可以组建团体去接外面的项目,当然要经过老师同意,或者代做毕业设计也是条财路 【 手动斜眼】
  5、勤总结,有整体思想。形成自己的总结文档、代码风格可能很多人都没有这个习惯,包括当初本人自己,拿到一个课题或者项目的时候,大概写一下流程,就开干,途中遇到很多问题,程序改了又改,从v1.0改到v10.0都还有BUG,,,究根到底,还是自己学得不够透彻不够扎实,没有一个整体的概念,知识零散杂乱,不成体系。有时候,程序框架、流程都没有错,就因为时钟PLL配置上的冲突,导致一个礼拜BUG找不出来,,,所以,形成良好的编程习惯、勤写注释、善于总结真的很重要!最好能形成文档,这绝对是最好的经验积累形式!
  暂时就写这么多吧,本人才疏学浅,如有不对之处望大神斧正


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶1 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表