Go Down

Topic: Problem with ir remote library and pwm pins (Read 720 times) previous topic - next topic

shihtin

Feb 03, 2013, 07:40 am Last Edit: Feb 09, 2013, 09:02 pm by shihtin Reason: 1
Hello,
I am a newbie in arduino. I want to control the brightness of the led using ir remote. But this doesn't work. I am using irremote.h library.

I think the problem is related to timers. What I have to do???

The code is given below..
Code: [Select]


#include <IRremote.h>

int ir_pin = 3;
int pwm_signal=11;
int value;
int x;
int i = 0;
unsigned long start;
unsigned long stp;

IRrecv irrecv (ir_pin);
decode_results results;

void setup()
{
Serial.begin(9600);
irrecv.enableIRIn();
pinMode(pwm_signal,OUTPUT);
 
}

void loop()
{
 x = ir_check();
 pwm_write (x);
Serial.println(x);
}

int ir_check()
{
 if (irrecv.decode(&results))
 {
   if (results.value==2060 || results.value==12)
   {
     Serial.println("on");
     i++;
   }
   irrecv.resume();
 }

 return i;
}

void pwm_write (int x)
{
 if (x<10)
 {
   value = x*24;
 }  
  /* digitalWrite(pwm_signal,HIGH);
   delayMicroseconds(value);
   digitalWrite(pwm_signal,LOW);
   delayMicroseconds(1000-value);*/
  analogWrite(pwm_signal,value);
 

}
 

     
     
     
   
   
 

Nick Gammon

Read this before posting a programming question


Please edit your post, select the code, and put it between [code] ... [/code] tags.

You can do that by hitting the # button above the posting area.
Please post technical questions on the forum, not by personal message. Thanks!

More info:
http://www.gammon.com.au/electronics

shihtin

Thanks for the information... can you give any solution?. I am using arduino dueminalove.

Nick Gammon

What does your debugging display tell you?

Perhaps put in more serial prints to confirm what values you have in your variables.
Please post technical questions on the forum, not by personal message. Thanks!

More info:
http://www.gammon.com.au/electronics

shihtin

It work well till first key is pressed on irremote. After that both ir and pwm functions remains in previous condition. I think the problem is related to the timer of the arduino dueminalove. ie, both ir library and analogWrite function uses the same library. I tried to change the timer used in ir library but it can't create any difference.

Go Up