msp432快速入门第三节之让LED闪起来

zyg 2年前 (2022-09-20) 阅读数 1124 #MCU开发

(一)建立空的工程

可以使用TI的空驱动工程,在SDK这里可以找到,或者使用我修剪的,由于TI的工程使用了绝对路径,多个文件均是,故就用了这个长长的路径:
(1)TI的空工程位置: simplelink_msp432p4_sdk_3_40_01_02\examples\nortos\MSP_EXP432P401R\driverlib\driverlib_empty_project_from_source\keil
然后打开keil即可

如果你觉得这路径比较反人类,下一节教程修改了TI的长路径为短路径,这里只是为了入门更加简易!!!

(2)我自己修剪的,路径差不多,修剪了一些不需要的东西:
链接: https://pan.baidu.com/s/1kSMkzR7xkPPK0DV7ylAeZg 提取码: expd
然后空的工程是这个样子,建议使用修剪后的,比较便捷:
null
编译这个工程时会报错如此:
null
原因是找不到fromelf文件生成不了bin文件,我们需要设置下keil的魔术棒:
null
把编译后所做的那个勾掉就可以,不生成bin文件就行了,暂时用不到bin文件,我自己修改库的已经配置完毕。

(二)点亮第一个LED(红色LED)

把那个编译无错的文件整个复制下为新的工程文件:
配置keil魔术棒:
null
null
然后在setting中配置下载完后需要reset and run,否则需要每次按复位按键运行程序
编译后下载到单片机中,此时下载后啥情况也没有,因为下进去的是个空文件,然后我们找到TI的driver lib库,里边有个gpio的例子,如下:
null

MAP_WDT_A_holdTimer();

是停止看门狗

MAP_GPIO_setAsOutputPin(GPIO_PORT_P1, GPIO_PIN0);

是配置GPIO输出,注意TI的GPIO输出配置非常简易,时钟之类的后边会讲,先点个灯有点成就感仪式感。
至于前边加上MAP_XXX的话就是一个纯粹的宏,可以直接不使用,这样也是可以的

GPIO_setAsOutputPin(GPIO_PORT_P1, GPIO_PIN0);

然后在main函数中如下函数,翻转IO口,使用for循环延时:

while (1)
{
    /* Delay Loop */
    for(ii=0;ii<5000;ii++)
    {
    }
    MAP_GPIO_toggleOutputOnPin(GPIO_PORT_P1, GPIO_PIN0);
}

这就是TI的官方函数,下载后看到IO_P1.0红色LED闪烁,前提是你把短接片连接好,默认都是连接的。

版权声明

本文仅代表作者观点。
本文系作者发表,未经许可,不得转载。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

yanguo

yanguo

管理员
作者文章
最新文章
标签列表
    欢迎你第一次访问网站!