- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I would like to use irtxdriver to send IR Codes on P4 but I can't figure out how this driver is supposed to be used. For instance I don't know how I should fill the IR_TX_CLOCK_SETTING struct.
Would it be possible to provide us with an exemple using this driver?
Same question for syncedpulse. I understood that we would use this driver to perform IR Code learning ?
Thanks for your help.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thank you for you reply.
I managed to have the irtx driver work alone.
For those interested in using this driver, here is an basic example of use.
BYTE IRTX_PORT = 0;
BYTE IRTX_PIN = 4;
IR_TX_CLOCK_SETTING irtxClockSet;
#define SIZE_BUFFER 16 //Must be >=8
UINT16 send_buffer[SIZE_BUFFER];
#define HIGH(value) (value | (1<<15))
#define LOW(value) (value & (~(1<<15)))
void hello_sensor_create(void)
{
/*********************/
//Setup code
/*********************/
irtx_setIrTxPortPin(IRTX_PORT, IRTX_PIN);
irtxClockSet.invertOutput=0; //Invert HIGH and LOW if true
irtxClockSet.modulateFreq=38000; //Modulation frequency 38KHz
//Prepare an array to send
send_buffer[0]=HIGH(8000); //Stay high for 8000us
send_buffer[1]=LOW(4000); //Stay low for 4000us
send_buffer[2]=HIGH(600); //Stay high for 600us
send_buffer[3]=LOW(1000); //etc...
send_buffer[4]=HIGH(600);
send_buffer[5]=LOW(1000);
send_buffer[6]=HIGH(600);
send_buffer[7]=LOW(600);
send_buffer[8]=HIGH(1000);
send_buffer[9]=LOW(600);
send_buffer[10]=HIGH(1000);
send_buffer[11]=LOW(600);
send_buffer[12]=HIGH(600);
send_buffer[13]=LOW(1000);
send_buffer[14]=HIGH(1000);
send_buffer[15]=LOW(600);
//Send IR Code
irtx_sendData(send_buffer, SIZE_BUFFER, irtxClockSet);
//Hardware IR Bloc is turned off during deep sleep
//We must wait until the transmission is done before going to sleep
while (! irtx_isAvailable());
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello neals
At present, we don't have examples for IRTX driver but may have more information in 4th quarter of this year.
Our syncedpulse implementation is not used in the IR learning use case.
Let us know if this answers your question.
Thanks
JT
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thank you for you reply.
I managed to have the irtx driver work alone.
For those interested in using this driver, here is an basic example of use.
BYTE IRTX_PORT = 0;
BYTE IRTX_PIN = 4;
IR_TX_CLOCK_SETTING irtxClockSet;
#define SIZE_BUFFER 16 //Must be >=8
UINT16 send_buffer[SIZE_BUFFER];
#define HIGH(value) (value | (1<<15))
#define LOW(value) (value & (~(1<<15)))
void hello_sensor_create(void)
{
/*********************/
//Setup code
/*********************/
irtx_setIrTxPortPin(IRTX_PORT, IRTX_PIN);
irtxClockSet.invertOutput=0; //Invert HIGH and LOW if true
irtxClockSet.modulateFreq=38000; //Modulation frequency 38KHz
//Prepare an array to send
send_buffer[0]=HIGH(8000); //Stay high for 8000us
send_buffer[1]=LOW(4000); //Stay low for 4000us
send_buffer[2]=HIGH(600); //Stay high for 600us
send_buffer[3]=LOW(1000); //etc...
send_buffer[4]=HIGH(600);
send_buffer[5]=LOW(1000);
send_buffer[6]=HIGH(600);
send_buffer[7]=LOW(600);
send_buffer[8]=HIGH(1000);
send_buffer[9]=LOW(600);
send_buffer[10]=HIGH(1000);
send_buffer[11]=LOW(600);
send_buffer[12]=HIGH(600);
send_buffer[13]=LOW(1000);
send_buffer[14]=HIGH(1000);
send_buffer[15]=LOW(600);
//Send IR Code
irtx_sendData(send_buffer, SIZE_BUFFER, irtxClockSet);
//Hardware IR Bloc is turned off during deep sleep
//We must wait until the transmission is done before going to sleep
while (! irtx_isAvailable());
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Just a last question :
Could you please tell me if it is possible to use the IR RX Bloc described in the datasheet of the BCM20732 with the SDK 1.1 ?
Thanks !
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Note that the IR RX function is also described in the 20732S module datasheet as well (alternate function).
I am not aware of any dependencies on SDK 2.0 to leverage this functionality, so it should work.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you,
Where can I find the drivers to control the IR RX ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello neals,
Currently, we do not provide any specific drivers for the infrared receiver.
We will let you know of the support in our upcoming SDK Releases.
Let me know if this answers your question.
Thanks
JT
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi:
now i have the question about the IRRx ,I want to use the IRRx function.but i don't know how to use it, can you privider the API function to support the function now ?mwf_mmfae
Thanks
Geary
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
As mentioned previously, we do not provide any specific drivers/software within the SDK to leverage the IR functionality on the device.