这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 高校专区 » 坤创E-Geek/天科大新电社 » 【2021全国电赛】坤创3队记录:04 MSP430F5529LP学习(一)

共2条 1/1 1 跳转至

【2021全国电赛】坤创3队记录:04 MSP430F5529LP学习(一)

菜鸟
2021-07-29 20:48:07     打赏

这个板子呢原先没有接触过,但是根据我刚拿到板子的猜想它应该和32的开发板差不多,学习之后发现还是有一点区别的,最突出的就是超低功耗,说白点就是省电,特别省电,但是就处理能力来说,与stm32相比,430还是有一定差距的,所以说430适用的地方就是需要低功耗的设备,如手持仪表等。虽然它的处理能力和32比起来有差距,但是还是要学习的,今天我们就先来进行第一步,也是每一种单片机学习的第一步----点灯。

首先介绍一下使用的软件----IAR,当然你也可以用CCS,但是感觉下来IAR会更好用一些。

接下来直接写步骤吧

(一)、新建工程

1627556968727729.png

(二)、选择型号

1627557172779091.png

(三)、配置DEBUG

1627561106239040.png

1627561297798280.png

(四)、查相关手册

通过查看MSP430F5529的原理图,可以得知LED1由P10端口控制,LED2由P47端口控制,皆为高电平有效:

1627561446350483.png

通过查看MSP430F5529的数据手册,结合本次项目目的,使用了该开发板IO口的两个控制寄存器:

1.输出寄存器 

        PxOUT  

        当IO管脚配置为IO口功能且为输出方向时,每个PxOUT寄存器的每一位就对应着在相应管脚输出的值。 

        Bit = 0:输出为低;

        Bit = 1:输出为高。

2.输入/输出方向寄存器 

        PxDIR  

        不论管脚的功能,PxDIR寄存器中的每一位选择相应IO管脚的方向。当管脚被设置为其它功能时,PxDIR位必须按照其他功能的需要进行设置。

        Bit = 0:管脚为输入方向;

        Bit = 1:管脚为输出方向。

(五)、编写代码

#include "io430.h"

void delayMs(unsigned int xms);

int main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;

  P1DIR |= 0x01;
  P4DIR |= 0x80;
  while(1) {
    P1OUT = 0x01;
    P4OUT = 0x00;
    delayMs(500);
    P1OUT = 0x00;
    P4OUT = 0x80;
    delayMs(500);
  }
}
// 粗略延时
void delayMs(unsigned int xms) 
{
  char i;
  while(xms--) {
    for(i = 0; i < 100; i++);
  }
}

    编译下载到板子里,两个灯就会交替亮灭,本次点灯就到此结束了......




关键词: 2021全国电赛     MSP430F5529LP     寄存    

工程师
2021-08-16 20:18:51     打赏
2楼

   


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]