关于MSP430的学习总结

来源:互联网 发布:合肥行知学校在哪 编辑:程序博客网 时间:2024/04/26 07:58

    最近为了参加TI的竞赛,学习了一下MSP430F149这款混合信号处理芯片。说白了还是一个单片机,因为有了以前的基础学期他来也就快了很多。

     初识430:首先是要知道他有哪些共能,我所用的149芯片有一个看门狗、两个定时器、两个串口、ADC12、硬件乘法器等等。

     接下来就是要知道他的寄存器的使用:第一个是普通的IO使用,程序的一开始就要设置自己的IO情况,具体包括:选择方向,是否选择第二功能,是否开中断。单片机上电后默认的是输入,普通IO,关中断。在所有引脚中只有P1和P2的两个8位具有中断功能,关于各管脚的第二功能一看他的器件框图就知道了;第二是定时器的使用:看门狗定时器默认的是打开的,所以如果要是不使用看门狗的话,程序一开始一定要关狗,另外看门狗定时器可以当做普通的16位定时器使用。除此之外还有两个定时器TimerA和TimerB,两个都是16位的定时器,这两个定时器的功能很强大,一些基本信号的产生都要依靠他们,比如:PWM信号,定时,ADC采样触发信号,UART的波特率产生,比较器触发信号等。另外一个比较重要的就是ADC12的使用:通过设置相应的寄存器完成序列的采样。关于430内置硬件乘法器的使用,说白了还是寄存器的操作,送进去两个操作数出来结果,很简单。其他的像串口之列的和51一样,也很简单。另外一些扩展接口比如LCD、IIC了,在51基础源代码上一改就行了。

      在430中几乎每个引脚都是复用的,如果要使用它的第二功能就必须进行相应的设置。程序一开始要做的主要工作主要有:是否关狗,选择时钟源,设置各端口的功能,完成端口的初始化,初始化各外围模块。在编写程序中经常用到的语句主要有:

      设置管脚的方向:PnDIR |= BITx   :设置成输出

                              PnDIR &= ~BITx   :设置成输入:默认的就是输入

      选择第二功能: PnSEL  |= BITx   :使用相应的第二功能

                             PnSEL  &= ~BITx   :不使用相应的第二功能

      使能管脚中断:  PnIE   | =  BITx   :使能相应的管脚中断

      关闭看门狗  :WDTCTL |= WDTPW + WDTHOLD

      打开系统总中段:_EINT();

      关闭系统总中断:_DINT();

      中断服务函数的编写: #pragma vector = XXXX_VERTOR

                                     __interrupt void xxxxISR(void)

     

 

 

 

 

 

原创粉丝点击