历史上的今天
返回首页

历史上的今天

今天是:2026年01月11日(星期日)

2023年01月11日 | 单片机小白应该如何学习stm32的一些实践心得

2023-01-11 来源:zhihu

  嵌入式搬砖道路上的大三狗一枚,撑死算个初学者吧。才学有限,下面仅仅是本人对STM32学习的一点心得与建议,希望对题主有帮助吧。

  心得:本人当初学习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找不出来,,,所以,形成良好的编程习惯、勤写注释、善于总结真的很重要!最好能形成文档,这绝对是最好的经验积累形式!


推荐阅读

史海拾趣

广东华裕(GDHY)公司的发展小趣事

机顶盒,全称为数字视频变换盒,是现代家庭娱乐中不可或缺的重要设备。从广义上讲,凡是与电视机连接的网络终端设备均可称为机顶盒,其发展历程涵盖了从模拟频道增补器到数字卫星、有线及IPTV机顶盒等多种形态。其核心功能在于接收并转换数字电视信号,使之能在传统或智能电视上播放,极大地丰富了用户的观看体验。

机顶盒不仅支持高清、4K乃至更高分辨率的视频播放,还具备强大的网络交互能力。用户可通过机顶盒接入互联网,享受在线购物、视频点播、游戏娱乐、社交媒体互动等多种服务。此外,部分机顶盒还集成了智能语音助手、家庭影院功能及存储能力,让家庭娱乐更加便捷、个性化。

随着科技的进步,机顶盒正朝着高清化、智能化、多功能化方向发展。高清及超高清技术的普及,使得画面更加细腻逼真;人工智能技术的应用,则让机顶盒具备了更强大的内容推荐和交互能力。同时,市场竞争的加剧也促使厂商不断创新,推出更多符合用户需求的产品和服务。

总之,机顶盒作为连接电视与互联网的桥梁,其重要性日益凸显。在未来,随着技术的不断进步和市场的持续扩大,机顶盒将继续为用户带来更加丰富、便捷、智能的观影体验。

Fastron公司的发展小趣事

Fastron公司深知产品质量对于企业的重要性。因此,公司建立了严格的质量控制体系,从原材料采购到产品生产、检测等各个环节都实行严格的质量控制和管理。Fastron还引进了先进的检测设备和技术手段,确保每一款产品都符合高标准的质量要求。这种对品质的执着追求使得Fastron的产品在市场上具有极高的竞争力。

柯爱亚(ceaiya)公司的发展小趣事

柯爱亚一直秉承“持续改进,满足客户要求,不断创新,超越客户期望”的品质方针。公司严格把控产品质量,从原材料采购到生产流程,再到产品检测,每一个环节都力求精益求精。这种对品质的坚持赢得了客户的信任,柯爱亚的产品逐渐在市场上树立了良好的口碑。

DREMEL公司的发展小趣事

随着全球化的趋势日益明显,Dremio公司开始积极拓展国际市场。他们制定了详细的国际化战略,包括在海外市场设立分支机构、与当地企业建立合作关系、参加国际展会等。这些举措不仅提高了Dremio公司在国际市场的知名度,也为其带来了更多的商业机会。通过国际化战略的实施,Dremio公司的业务规模不断扩大,品牌影响力也日益增强。

请注意,以上故事均基于虚构,旨在展示一个类似Dremio公司在电子行业中的可能发展路径和故事。如有需要,请进一步核实相关事实和数据。

ELEMENT14公司的发展小趣事

ELEMENT14一直注重创新产品的引入和推广。公司紧跟电子行业的最新技术趋势,及时引入高性能、高可靠性的电子元器件产品。同时,ELEMENT14还积极推广这些创新产品,通过举办技术研讨会、发布技术白皮书等方式,帮助客户了解产品的特点和优势。这些努力不仅提升了公司的技术水平,也为客户提供了更多的选择。

ETI Systems公司的发展小趣事

ETI Systems公司自创立之初,就专注于研发具有创新性的电子产品和解决方案。在公司发展的早期,它推出了一款高性能的无线通信设备,该设备采用了当时最先进的信号处理技术,极大地提升了数据传输的效率和稳定性。这一创新产品不仅帮助ETI Systems在市场上获得了良好的口碑,也引领了整个行业的技术发展方向。

问答坊 | AI 解惑

微电子辞典

Abrupt junction 突变结 Accelerated testing 加速实验 Acceptor 受主 Acceptor atom 受主原子 Accumulation 积累、堆积 Accumulating contact 积累接触 Accumulation region 积累区 Accumulation layer 积累层 Active region 有源区 Active c ...…

查看全部问答>

10本学习arm的电子书

10本学习arm的电子书,学习arm不错的书哦…

查看全部问答>

各类继电器引脚图

常用继电器引脚图…

查看全部问答>

IT从业者如何涨薪创业跳槽

搞计算机的人,有一个通病:成天对着键盘、对着代码,沟通能力比较差。引用霍霍的话说: 线上,猥琐得特厉害,不调戏三两花姑娘就心头不爽 线下,都沉默得可以变成羔羊了 下面,“小绵羊CK”在线上写个长篇大论,说说怎么加薪水。将来到线下找老 ...…

查看全部问答>

EBOOT的USB下载驱动问题,请教高手!

问题1:   if(pUSBCtrlAddr->OCSR1.out_pkt_rdy)     {                 fifoCnt=pUSBCtrlAddr->OFCR1.out_cnt_low;                 d ...…

查看全部问答>

如何利用isp给可编程器件下载程序?

大家好,小弟还是个学生,想学PLD,又没钱买昂贵的编程器,我想问一下如何给MAX7000S系列下载程序?是用并口isp下载线?像最简单的EPM7032SLC44-10引脚该如何连?用什么软件下载?那位懂得来详细说一下,万分感谢!!!!…

查看全部问答>

关于ARM体系结构主存与辅存运行

对于ARM体系取指,是从程序存储器flash中直接取出去译码(像51那样),还是先把程序换入内存,指令从内存中读取? 金币不多,对不起!…

查看全部问答>

请问嵌入式到底学什么?

刚买了个2440的开发板,但不知道学什么了。 现在会基本的烧写UCOS2 系统进去。 突然不知道到底学什么。怎么学。 我的目标是以后去做驱动和系统,底层方面的,不想做应用软件。 驱动怎么学? 系统怎么学? 比如说UCOS2系统吧,我这里有源代 ...…

查看全部问答>

LTC1605

各位大哥:         谁有LTC1605应用代码,在线等待。TKS!…

查看全部问答>

关于51芯片的问题

MCS-51外扩程序存储器和数据存储器为什么可以有相同地址而不发生数据冲突?…

查看全部问答>