c语言开发单片机的优点 单片机c语言必背代码

记得刚出来工作的时候一直从事stc 51单片机产品的开发,后来接触了恩智浦单片机。51到ARM的过渡确实让我头疼了一段时间,不过还好都是通过配置寄存器开发的。至少开发模式是一

本文最后更新时间:  2023-04-23 15:00:56

记得刚出来工作的时候一直从事stc 51单片机产品的开发,后来接触了恩智浦单片机。

51到ARM的过渡确实让我头疼了一段时间,不过还好都是通过配置寄存器开发的。至少开发模式是一样的,就是要花时间看数据表配置。

领导稍后要策划一款新产品,让我配合硬件工程师选一款单片机。

当时我只是在改变别人代码的水平。不知道选什么,又不敢让领导知道,只好偷偷咨询大同事。

他在这家公司工作了3、4年,对产品很熟悉。他说可以用stm32单片机来做。

就是在那个时候,我正式接触到了单片机。一看就是8、9年前的事了。

不过那时候教程各方面都没有现在完善,所以我在网上买了开发板,上面没有视频教程。

因为我有单片机基础,所以我觉得有各个外设的使用套路就够了。

没想到,打开那些外围套路,一脸茫然。这是什么鬼东西?如何用GPIO点亮一盏灯,好复杂。

需要加载库文件,定义结构,打开时钟。。。。。

发展模式和我之前的完全不一样。经过研究,我意识到stm32可以用官网提供的固件库直接开发。

也就是说,通过直接调用它们的函数,你可以使用stm32的每一个外设,不管寄存器是如何配置的。

如果你深入到固件库中的代码,你会发现还有一些代码是用汇编和C语言写的。

新手如果没有经验,很容易走弯路。最近我们无量单片机编程的一个学员是这样的。

他总喜欢钻进死胡同,什么都想弄明白。他觉得如果不了解库函数,就不知道以后在产品开发中如何解决问题。

其实这种做法有利有弊。

好处是可以更深入的理解。

缺点是他钻的时机不对。当你的编程水平还不够,产品经验还不够的时候,一味的钻研别人几年沉淀下来的精华,显然是不现实的。钻研下去,真的会是天才!

现实中的人大多是普通人,要按照正确的方法去学习,这样才能学的最快。

如果你不够优秀,只会遍体鳞伤。越学越迷茫,越焦虑,最后放弃。

学习STM32的重点应该是学习如何使用他们的固件库,先熟悉这个库。

即使我在这个行业10年了,你让我在没有套路的帮助下,通过寄存器调整固件库,配置外设,我也做不到。

但即使我做不到,依然不妨碍我用stm32单片机做产品。

那么,你知道作为一名工程师有什么意义吗?

重点根本不是单片机。单片机只是一个工具。我们的第一步是能够使用它,而不是深究它为什么这么常用来打开外设。

如果你去钻这样的死胡同,光是单片机stm32就够你学5-10年了。

在开发实际产品程序的时候,前期需要几天的时间打开单片机的外设。

然后剩下的时间用来写产品功能逻辑部分的代码,这是核心。

尤其是像今年,stm32的价格突然暴涨10倍,有些公司会用其他一些芯片代替。

试想一下,如果你把所有的精力都放在学习单片机上,你的开发周期有多长,早就被你的老板干掉了。

无论学习任何单片机,核心在于你的编程水平和思维。

就像stm32一样,他们的固件库使用了大量的指针、结构和枚举。

这个时候,即使你没有学过stm32,但是你熟悉C语言中的指针、结构、枚举,你大概也能理解他们固件库的底层逻辑。

如果你不熟悉C语言的知识,或者找不到好的实用教程,可以看我的视频教程。这三个知识点我有专门的讲解。

温馨提示:内容均由网友自行发布提供,仅用于学习交流,如有版权问题,请联系我们。