MSP430F5529学习笔记(2)——点亮LED

简介: MSP430F5529学习笔记(2)——点亮LED

原理图和中文开发手册获取方法

TI官方MSP430F5529开发板原理图和中文开发手册,点击这个链接,跳转到git仓库。如果没有账号自行注册。

点击之后,会有一个下载,点击下载即可获取资料


点亮LED1

分析电路图

首先我们先查看LED的原理图,按ctrl+f查找——>输入LED1,即可找到LED部分的原理图。User LEDs是LED的电路图,User Buttons是按键的电路图(按键这个先不管)。

我们知道必须有电压差,才会有电流,我们看到原理图的LED是接地的,所以输入P1.0为高电平LED1亮,低电平LED1灭;P4.7为高电平,LED2亮,低电平LED2灭。

写程序,点亮LED1

现在我们需要点亮LED1,需要把P1.0为高电平。


1,首先我们需要告诉单片机,P1.0是输入还是输出

我们查看中文参考手册(位置是第八章,操作数字IO,输入/输出方向寄存器 PxDIR)可以知道当PxDIR(此处是x表示是哪一个引脚,P1引脚就是P1DIR,P2引脚就是P2DIR)为高电平是输出,低电平为输入。因为我们需要驱动LED1,所以P1是输出,P1DIR=0x01(此处意思是P1.0为输出,P1其他脚为输入。0x01= 0000 00001)。


2,配置电平

我们看手册介绍

(1)她说如果IO为输出,0为低电平,1为高电平。

(2)如果IO是输入,0表示下拉电平,1表示上拉电平。

此处我们的IO为输出,所以只需要看输出部分。即P1=0x01(此处表示P1.0是输出高电平P1其他引脚为下拉输入,因为上面P1DIR=0x01,所以其他脚是输入)


3,实操

我们写入如下代码,此代码表示LED1亮

#include <msp430.h> 
/**
 * main.c
 */
int main(void)
{
  WDTCTL = WDTPW | WDTHOLD; // stop watchdog timer
  //P1.0为输出
  P1DIR=0x01;  //0x01=0000 0001,查看数据手册可知,P1.0为输出,P1其他脚为输入
  //P1.0输出高电平
  P1OUT=0x01; //0x01=0000 0001,查看数据手册可知,P1.0为输出高电平,P1其他脚为下拉输入
  return 0;
}


烧录程序

按照如下步骤烧录

注意,可能你下载过程与我的可能有些许偏差,但是影响不大,可能是你电脑窗口关闭过快,所以你认为没有弹出两个窗口。

两个窗口关闭之后弹出这个界面,点击运行程序

之后我们就可以看到LED1亮了

点亮LED2

程序

同理,我们可以尝试点亮LED2

#include <msp430.h> 
/**
 * main.c
 */
int main(void)
{
  WDTCTL = WDTPW | WDTHOLD; // stop watchdog timer
  //P4.7为输出
  P4DIR=0x80;  //0x80=1000 0000,查看数据手册可知,P4.7为输出,P4其他脚为输入
  //P4.7输出高电平
  P4OUT=0x80;  //0x80=1000 0000,查看数据手册可知,P4.7为输出高电平,P4其他脚为下拉输入
  return 0;
}


结果

总结

1,输出电平我们只需要配置PxDIR和PxOUT。

2,PxDIR用于配置IO是输入还是输出

3,PxOUT,如果IO是输出,配置输出电平。如果IO为输入,配置IO为上拉还是下拉电平。

目录
相关文章
|
4月前
|
编译器 C语言 C++
【51单片机】LED的三个基本项目(LED点亮&LED闪烁&LED流水灯)(3)
【51单片机】LED的三个基本项目(LED点亮&LED闪烁&LED流水灯)(3)
MSP430F5529学习笔记(4)——按键点灯
MSP430F5529学习笔记(4)——按键点灯
181 0
MSP430F5529学习笔记(4)——按键点灯
|
编译器
MSP430F5529学习笔记(3)——实现LED闪烁和呼吸灯
MSP430F5529学习笔记(3)——实现LED闪烁和呼吸灯
437 0
stm32CubeMX点亮一个LED灯
stm32CubeMX点亮一个LED灯
94 0
|
IDE 开发工具 芯片
ESP32CAM,点亮一个LED(Arduino平台)
ESP32CAM,点亮一个LED(Arduino平台)
357 0
|
C语言
MSP430F5529学习笔记(5)——按键切换灯的亮灭
MSP430F5529学习笔记(5)——按键切换灯的亮灭
105 0
|
存储 IDE 程序员
瑞萨RA2E1点亮LED
瑞萨RA2E1点亮LED
209 0
瑞萨RA2E1点亮LED
|
C语言 芯片
STM32 实战之点亮LED
STM32 实战之点亮LED
STM32控制GPIO完成点亮LED灯
STM32控制GPIO完成点亮LED灯
313 0
STM32控制GPIO完成点亮LED灯
|
存储 定位技术 C语言
嵌入式开发学习之--点亮LED灯(中)
嵌入式开发学习之--点亮LED灯(中)
嵌入式开发学习之--点亮LED灯(中)