本帖最后由 tlled 于 2019-3-16 09:16 编辑
我也来分享下,与ST一次走过的日子。在学生时期,还不知道什么是ARM,什么是单片机,对这些认识都是小白。通过专业课的学习接触了单片机,记得当时的单片机课程是MCS-51单片机原理,整个课程实验例程都是汇编例程,看着老是费劲啦。课程学完了,脑子里面都是些代码,MOV, SETB, CLR 等等。当时学校实验室使用的还是DOS编程环境,黑屏白底,屏幕那个简洁啊。当时觉得这个芯片好神奇,一个小小的芯片竟然可以烧写程序还能运行,学习编程的兴趣也是从那时候开始。 当时电脑网络还不是很普及,有一小部分人有个人电脑,大多数是要去实验室或网吧上网。那时也不知道有什么电子论坛,就在网上搜索单片机,无意间找到有一款单片机可以ISP方式下载编程,不在需要昂贵的仿真器和编程器,AT89S51芯片就是我第一个使用ISP下载的芯片,按照网上提供的下载工具的电路图和最小系统,我自己手工焊接了一个单片机最小系统和ISP下载小板,搭建了开发环境,那时那个兴奋。一有时间就经常跑网吧搭建开发环境开始学习单片机编程,网吧的机器有系统自动还原,有时机器死机重启电脑后一切还原如初,又得重新开始搭建开发环境编写代码,在这样的环境下,学会的单片机编程,为以后的ARM学习打下了基础。 随着电脑和网络的普及,获取的学习资料比较方便了,随时可以获取网络最新资料。不同系列的单片机学习都是相通的,随着时间的积累,慢慢学习了STC系列,PIC系列,AVR系列单片机,工作以后,第一次知道了ARM,原来比单片机功能更强大。学习重点开始向ARM转移,但是有ARM7和ARM9系列,什么现在的A5,A8系列的都还没有听说。当时公司用的是NXP ARM7芯片,自己学习ARM也是从这芯片开始的,慢慢的也开始对ARM有了了解。 第一次接触STM32单片机,大概是在09年的时候,上网看到Cortex内核的ARM芯片,STM32就是基于这个内核的,Cortex内核比ARM7执行效率更高,速度更快,让我迫切的想学习下这个芯片。然后在网上查找买了一套奋斗版的STM32F103开发套件和Jink仿真器,开发板带一个小屏幕,记得开发板上移植了ucgui和ucos操作系统,这让我感觉到到STM32太强大了。 学习STM32过程中,让我最深刻的就是使用STM32 StdPerph_Driver库,所有的外设配置通过调用库函数就可以配置完成,不需要再去查看手册相关的寄存器一位一位来理解配置寄存器,大大提高的编程的速度,并且不容易出错,这个功能是ARM7所没有的,再后来ST又出来的STM32CubeMX软件,个人觉得这个软件功能比使用的库函数功能更强大,包含STM32所有系列的芯片,可以完全不需要了解芯片内部结构,只需要只要的需要实现功能的引脚,就可以把整个软件工程创建完成,自己只需要编写软件要实现的功能部分。 学习软件编程要有硬件基本功,嵌入式软件程序是运行在特定的硬件上,好的硬件平台才能更好的体现软件的性能,在这过程中学习了电路设计,平时也设计电路板来做一些测试,分享一些自己设计的ST的板子。 1、STM32测试板使用的是STM32F103ZET芯片,主要是用来驱动LCD显示屏。 2、使用STM32F030做了一个使用GPRS传输远程控制的一个终端。
3、使用STM32F103RCT6做的手持终端。
上面是一些小的设计例子,是学习和使用ST MCU路上的一部分,在实际中使用了STM32的F0、F1、F2和F4系列,功能和性能是一代比一代提高,最新的有出来H7,F7,MP1系列,性能更是强劲。ST芯片发展速度很快,和ST的缘分还在继续,在以后的生活和工作中要不断的学习和使用。
|
现在已经是经验丰富的大佬了