学校和院系:江南大学物联网工程学院
大学毕业后的我对单片机的认识仍停留在51系列单片机,上大学的几年中利用51单片机做过一些小的东西,但都是最简单那种,只能说是熟悉单片机的一般开发过程。在这过程中,虽然积累了一点编写程序和单片机外围电路设计的一点经验,但是毕业后才发现,51单片机早已“淹没在历史的长河里了”,过时的东西只能作为学习的一个切入点,并没有深入研究的价值,所以在完成了单片机的入门后,我将兴趣转向了更有研究价值和发展前景的单片机。
我第一次接触MSP430是在研一的时候,自己想做一个基于加速度传感器的数据采集模块。在查找合适的单片机来处理采集数据时,MSP430第一次出现在我的视线中,它给我的第一印象就是低功耗,这是所有介绍MSP430的资料中都会提到的一点,同时也是最吸引我的地方。这是因为我希望我的加速度传感器可以佩戴在人身上,随人体的运动而采集加速度的变化数据,这就要求系统需要有自己的供电模块,电池的加入通常会带来一个问题就是系统的工作时间比外接电源时的短。电池的电量有限,如何在有限的电量下达到工作时间最长是我不得不考虑的问题,所以低功耗对于这个系统来说太重要了,它是节能问题的一个最直接最有效的解决办法。因此MSP430的低功耗介绍特别容易引起我的注意,想必这也是众多移动设备所需要的。时值TI在线培训在搞活动,看视频学习后通过考试就可以免费获赠MSP430LaunchPad开发板,所以我就毫不犹豫的参加了,一切顺利,获得了开发板,寄来的当天我就开始对这块开发板研究起来。
初识这块开发板,我有点犹豫,因为我只看到了一个mini USB接口,我印象中的串口都没有,没有串口的单片机开发板该如何下载程序进去?在查阅了一些资料以后我觉得自己的观念太陈旧了,我印象中的程序下载和调试是使用USB转串口或Jtag,但是这款板子虚线上面的部分已经集成了这部分功能,只用一个mini USB就可以完成烧写程序和调试(当然需要驱动,网上就可以找到),的确节约了许多空间。然后就是开发环境,两个选择:1、TI公司推荐的CCS5.x(x是具体的版本编号)。2、IAR for msp430。我个人的选择是第2种,原因有二,一是CCS5.x安装要求电脑内存要大于1G,我的老机子有点吃不消。二是IAR用习惯了啊(就这么简单),所以我还是在熟悉的开发环境中研究这块新板子。学习MSP430时钟的重要性我就不多说了,这里主要总结一些重要的观念。首先MSP430有4中时钟源:DCO、LFXT1、XT2、VLO。其次对CPU以及单片机的外设我们不直接使用原始的时钟源,而是使用封装过的时钟信号:MCLK、SMCLK、ACLK。也就是对于CPU及其外设我们可以认为他们并不认识或者并不需要接触原始的时钟源信号。它们只能识别封装后的时钟信号,而这些封装过的时钟信号就来自基本的时钟源或者是它们的分频信号,它们是一个中间机构。那么具体MCLK、SMCLK、ACLK到底来自哪个时钟源,就需要我们去配置,当然如果我们不配置,也可以使用默认值嘛。如:PUC复位后,MCLK和SMCLK的信号源为DCO,DCO的振荡频率默认为800KHZ。ACLK的信号源为LFXT1(如果没有LFXT1就是VLO,它的频率为12KHZ)。如果需要改变,可以自己配置。
目前,我仍处在熟悉这块板子的阶段,经验尚在积累中,学习仍在继续,各种各样的问题也会层出不穷。但是学习就是这样一个过程,出现问题-解决问题-出现问题-解决问题-...当遇到实在解决不了的问题时还是要多请教别人,只有这样才能不断提升自己的水平。我和MSP430的故事仍在继续,我期待在我了解它的过程中会有更多的故事发生,我也会学到更多的东西。 |