搜索
bottom↓
回复: 0

【Energia开发环境】MSP430 LAUNCHPAD学习笔记4--PWM实现简单呼吸灯

[复制链接]

出0入0汤圆

发表于 2014-1-15 22:17:56 | 显示全部楼层 |阅读模式
【Energia开发环境】MSP430 LAUNCHPAD学习笔记4--PWM实现简单呼吸灯

材料:
MSP430 LAUNCHPAD x 1
发光二极管 x 1

实验目的:通过单片机输出PWM控制占空比,让MSP430 LAUNCHPAD控制发光二极管缓慢熄灭,缓慢变亮。

什么是PWM?占空比?
脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,常用于灯光亮度、马达控制...等等。占空比为方波高电平时间跟周期的比例叫占空比,例如1秒高电平1秒低电平的PWM波占空比是50%,下图形象的展示了波形示意图:


下面我们来连线:通过P1.4输出PWM波形来控制发光二极管亮灭程度

源程序:
/******************************************************************
  PWM control
  【Energia开发环境】MSP430 LAUNCHPAD学习笔记4--简单呼吸灯   
    Autor: qinkaiabc
********************************************************************/

int brightness = 0;//此变量用来表示LED的亮度。
int baseTime = 2000;//定义运行周期
//定义布尔值0-1,用以控制亮或灭,以及占空比
boolean LED_on = HIGH, count_up = false, time_add = false;
void delay_count_fun(boolean );

void setup()
{
  // 定义P1.4引脚为输出
  pinMode(P1_4, OUTPUT);
}

void loop()
{
    /*brightness 等于 0 或是等于定义的周期时就程序反向运行,
    *意思是原先亮的变成灭,原先占空比增大就变为减小*/
   if(brightness == 0 || brightness == baseTime)
   {
     LED_on = !LED_on;                    // 工作反向 :亮或灭
     count_up = !count_up;                // 计数增还是减
     time_add = !time_add;  // 占空比增大还是减少
   }

   digitalWrite(P1_4, !LED_on);
   Duty_Cycle(time_add);//占空比控制
   digitalWrite(P1_4, LED_on);//占空比控制
   Duty_Cycle(!time_add);
   //计数判断
   if(count_up)  brightness++;
   else  brightness--;
}

// 占空比增大还是减少判断
void Duty_Cycle(boolean up)
{
if(up)
    // 占空比增大还是减少
    delayMicroseconds(baseTime - brightness + 1);
  else
    delayMicroseconds(brightness + 1);// 占空比增大
}
其中你可以更改baseTime(周期)的值,看看会有什么变化。
delayMicroseconds()

其作用是产生一个延时,计量单位是微秒,1000微秒=1毫秒。

http://player.youku.com/player.php/sid/XNTk5NTYzODY0/v.swf
http://player.youku.com/player.php/sid/XNTk5NTY1MzI0/v.swf



  By  qinkaiabc








本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-5 01:34

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表