本帖最后由 弘毅 于 2012-12-20 08:49 编辑
自从拿到UNO后就痴迷上了,但愿不是三分钟热情,O(∩_∩)O~
今天学习了一下PWM,这么复杂的一个技术,在Arduino上实现起来居然这么简单。今天晚上依然是依葫芦画瓢,做一下呼吸灯的实验,纯软件方式实现,也就是调用analogWrite函数。
代码中PWM占空比没有开到最大,试验后发现100以后的灯亮度差不多,另外一处是在灯全亮和全灭时延时0.5秒,使之更有呼吸灯的效果。
----------------------------------------------------------一下是代码-------------------------------------- - /*
- Created by GUODONG
- PWM Control LED
- */
- int PWMPin=3;//我采用了3脚
- void setup()//如果采用PWM的话,貌似不需要设置引脚的模式
- {
- }
- void loop()
- {
- for(int i=0;i<100;i++)
- {
- analogWrite(PWMPin,i);
- delay(10);//采用10是为了从灭到亮正好经过1秒时间
- }
- analogWrite(PWMPin,100);
- delay(500);
- for(int i=100;i>=0;i--)
- {
- analogWrite(PWMPin,i);
- delay(10);
- }
- analogWrite(PWMPin,0);
- delay(500);
- }
复制代码 |