热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

STM32F407应用笔记--使用之前的体会

这些天使用STM32F4系列的CPU设计项目,性能十分强大,ARM和DSP二核一,号称DSC。设计硬件之后,开始设计软件,大体有两个方向:一是使用库函数,二是使用实时操作系统。

   这些天使用STM32F4系列的CPU设计项目,性能十分强大,ARM和DSP二核一,号称DSC。

   设计硬件之后,开始设计软件,大体有两个方向:一是使用库函数,二是使用实时操作系统。其它直接操寄存器的软件写法就避免了吧,重复造轮子没有意义。

   下面是一些使用体会:(引用一个开发板厂家)

   为 STM32F4 作为目前最热门的 ARM Cortex M4 处理器,由于其强大的功能,可替代 DSP 等特性,正在被越来越多的公司选择使用。学习 STM32F4 的朋友也越来越多,初学者,可能 会认为 STM32F4 很难学,以前可能只学过 51,或者甚至连 51 都没学过的,一看到 STM32F4 那么多寄存器,就懵了。

   其实,万事开头难,只要掌握了方法,学好 STM32F4,还是非常简单 的,这里我们总结学习 STM32F4 的几个要点: 1,一款实用的开发板。 这个是实验的基础,有个开发板在手,什么东西都可以直观的看到。但开发板不宜多,多 了的话连自己都不知道该学哪个了,觉得这个也还可以,那个也不错,那就这个学半天,那个 学半天,结果学个四不像。倒不如从一而终,学完一个在学另外一个。 

   2,三本参考资料,即《STM32F4xx 中文参考手册》、《STM32F3 与 F4 系列 Cortex M4 内核编程手册》和《Cortex M3 与 M4 权威指南》 。 《STM32F4xx 中文参考手册》是 ST 出的官方资料,有 STM32F4 的详细介绍,包括了 STM32F4 的各种寄存器定义以及功能等,是学习 STM32F4 的必备资料之一。而《STM32F3 与 F4 系列 Cortex M4 内核编程手册》则是对《STM32F4xx 中文参考手册》的补充,很多关于 Cortex M4 内核的介绍(寄存器等),都可以在这个文档找到答案,该文档同样是 ST 的官方资料,专 门针对 ST 的 Cortex M4 产品。最后,《Cortex M3 与 M4 权威指南》则针对 Cortex M4 内核进行 了详细介绍,并配有简单实例,对于想深入了解 Cortex M4 内核的朋友,此文档是非常好的参 考资料。 

    3,掌握方法,勤学善悟。 STM32F4 不是妖魔鬼怪,不要畏难,STM32F4 的学习和普通单片机一样,基本方法就是:

 a) 掌握时钟树图(见《STM32F4xx 中文参考手册》图 13)。 任何单片机,必定是靠时钟驱动的,时钟就是单片机的动力,STM32F4 也不例外,通过时 钟树,我们可以知道,各种外设的时钟是怎么来的?有什么限制?从而理清思路,方便理解。  

 b) 多思考,多动手。 所谓熟能生巧,先要熟,才能巧。如何熟悉?这就要靠大家自己动手,多多练习了,光看/ 说,是没什么太多用的,很多人问我,STM32F4 这么多寄存器,如何记得啊?回答是:不需要 全部记住。学习 STM32F4,不是应试教育,不需要考试,不需要你倒背如流。你只需要知道这 些寄存器,在哪个地方,用到的时候,可以迅速查找到,就可以了。

   完全是可以翻书,可以查 资料的,可以抄袭的,不需要死记硬背。掌握学习的方法,远比掌握学习的内容重要的多。 熟悉了之后,就应该进一步思考,也就是所谓的巧了。我们提供了几十个例程,供大家学 习,跟着例程走,无非就是熟悉 STM32F4 的过程,只有进一步思考,才能更好的掌握 STM32F4, 也即所谓的举一反三。例程是死的,人是活的,所以,可以在例程的基础上,自由发挥,实现 更多的其他功能,并总结规律,为以后的学习/使用打下坚实的基础,如此,方能信手拈来。 所以,学习一定要自己动手,光看视频,光看文档,是不行的。举个简单的例子,你看视 频,教你如何煮饭,几分钟估计你就觉得学会了。实际上你可以自己测试下,是否真能煮好?  机会总是留给有准备的人,只有平时多做准备,才可能抓住机会。    

   只要以上三点做好了,学习 STM32F4 基本上就不会有什么太大问题了。如果遇到问题, 可以在我们的技术论坛:开源电子网:www.openedv.com 提问,论坛 STM32 板块已经有 3W 多个主题,很多疑问已经有网友提过了,所以可以在论坛先搜索一下,很多时候,就可以直接 找到答案了。论坛是一个分享交流的好地方,是一个可以让大家互相学习,互相提高的平台, 所以有时间,可以多上去看看。 另外,很多 ST 官方发布的所有资料(芯片文档、用户手册、应用笔记、固件库、勘误手 册等),大家都可以在 www.stmcu.org 这个地方下载到。也可以经常关注下,ST 会将最新的资 料都放到这个网站上。


本文出自 “孙国栋” 博客,请务必保留此出处http://qtlinux.blog.51cto.com/3052744/1835025


推荐阅读
  • 尽管深度学习带来了广泛的应用前景,其训练通常需要强大的计算资源。然而,并非所有开发者都能负担得起高性能服务器或专用硬件。本文探讨了如何在有限的硬件条件下(如ARM CPU)高效运行深度神经网络,特别是通过选择合适的工具和框架来加速模型推理。 ... [详细]
  • 在创建新的Android项目时,您可能会遇到aapt错误,提示无法打开libstdc++.so.6共享对象文件。本文将探讨该问题的原因及解决方案。 ... [详细]
  • 脑机接口(BCI)技术正逐步将科幻变为现实,从帮助听障人士恢复听力到使瘫痪者重新站立,甚至可能将多年的学习过程压缩至瞬间。本文探讨了这一前沿技术的现状、挑战及其未来前景。 ... [详细]
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • FinOps 与 Serverless 的结合:破解云成本难题
    本文探讨了如何通过 FinOps 实践优化 Serverless 应用的成本管理,提出了首个 Serverless 函数总成本估计模型,并分享了多种有效的成本优化策略。 ... [详细]
  • 选择适合生产环境的Docker存储驱动
    本文旨在探讨如何在生产环境中选择合适的Docker存储驱动,并详细介绍不同Linux发行版下的配置方法。通过参考官方文档和兼容性矩阵,提供实用的操作指南。 ... [详细]
  • 本文详细介绍了网络存储技术的基本概念、分类及应用场景。通过分析直连式存储(DAS)、网络附加存储(NAS)和存储区域网络(SAN)的特点,帮助读者理解不同存储方式的优势与局限性。 ... [详细]
  • 本文详细探讨了HTML表单中GET和POST请求的区别,包括它们的工作原理、数据传输方式、安全性及适用场景。同时,通过实例展示了如何在Servlet中处理这两种请求。 ... [详细]
  • 如何使用PyCharm及常用配置详解
    对于一枚pycharm工具的使用新手,正确了解这门工具的配置及其使用,在使用过程中遇到的很多问题也可以迎刃而解,文中有非常详细的介绍, ... [详细]
  • 本文作者分享了在阿里巴巴获得实习offer的经历,包括五轮面试的详细内容和经验总结。其中四轮为技术面试,一轮为HR面试,涵盖了大量的Java技术和项目实践经验。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文详细探讨了如何通过分析单个或多个线程在瓶颈情况下的表现,来了解处理器资源的消耗。无论是单进程还是多进程环境,监控关键指标如线程数量、占用时间及调度优先级等,有助于揭示潜在的性能问题。 ... [详细]
author-avatar
mobiledu2502860911
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有