本帖最后由 暴走的阿Sai 于 2016-10-28 15:07 编辑
之前的课程我们学习到Arduino的GPIO可以输入与输出电平来控制LED,我们有没有办法控制LED的亮度呢?今天我们来让引脚产生PWM输出来达到此目的。
器件
数量
Fireduino开发平台
1块
万用板
1块
LED(发光二极管)
1个
220欧姆电阻
1个
杜邦线
2条
PWM(脉冲宽度调制)主要是处理器发送模拟信号电平进行数字编码的方法,通常发送方波,然后通过调节占空比使其达到电压可以模拟输出。
Fireduino的低电平为0V,高电平为3V。使用PWM调节范围则是0~3V
连线图如下:
Arduino代码如下:
/*
作者:暴走的阿Sai
时间:2016年9月6日
发表地址:[url]www.t-firefly.com[/url]
程序说明:
PWM控制LED作呼吸灯
*/
void setup() {
// 初始化引脚8为输出
pinMode(8, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
int i,j;
for(i=0;i<=255;i++)
{
analogWrite(8, i); // 设置引脚8输出0到3V
delay(10); // 延迟10毫秒
}
for(j=255;j>=0;j--)
{
analogWrite(8, j); // 设置引脚8输出3到0V
delay(10); // 延迟10毫秒
}
delay(500);
}
运行效果如下:

主要用到的函数:
analogWrite()
———————————————————————————
【教程传送】Arduino单片机创客进化之路教程汇总贴
【Fireduino QQ交流群】:450340779
———————————————————————————
Firefly微信公众号 阿Sai微博
———————————————————————————
Firefly官网:http://www.t-firefly.com
Firefly开源社区:http://developer.t-firefly.com
