Application Note AN091

Similar documents
PMP6857 TPS40322 Test Report 9/13/2011


Test Data For PMP /05/2012

DS9638 DS9638 RS-422 Dual High Speed Differential Line Driver

Application Report. 1 Background. PMP - DC/DC Converters. Bill Johns...

LM325 LM325 Dual Voltage Regulator

TIDA Dual High Resolution Micro-Stepping Driver

Application Report ...

A Numerical Solution to an Analog Problem

AN-87 Comparing the High Speed Comparators

bq40zxx Manufacture, Production, and Calibration

AN-288 System-Oriented DC-DC Conversion Techniques

TRF3765 Synthesizer Lock Time

Design Note DN503. SPI Access By Siri Namtvedt. Keywords. 1 Introduction CC1100 CC1101 CC1150 CC2500 CC2550. SPI Reset Burst Access Command Strobes

Introduction to Isolated Topologies

LM386 Low Voltage Audio Power Amplifier

LM2925 LM2925 Low Dropout Regulator with Delayed Reset

LOAD SHARE CONTROLLER

PIN-PIN Compatible Cross-Reference Guide Competitor

LMS1585A,LMS1587. LMS1585A/LMS1587 5A and 3A Low Dropout Fast Response Regulators. Literature Number: SNVS061F

Power Systems Design Tools

DRV10963 Evaluation Module

AN-2119 LM8850 Evaluation Board Application Note

Inside the Delta-Sigma Converter: Practical Theory and Application. Speaker: TI FAE: Andrew Wang

AN-1453 LM25007 Evaluation Board

User's Guide. SLOU262 July 2009 Isolated CAN Transceiver EVM 1

DPI Evaluation TPS65310-Q1

LM723,LM723C. LM723/LM723C Voltage Regulator. Literature Number: SNVS765B

PAH PACKAGE (TOP VIEW) AGND FBIN AGND A VCC GND 3Y1 2Y3

Literature Number: SNAP002

LM397 LM397 Single General Purpose Voltage Comparator

LM113,LM313. LM113/LM313 Reference Diode. Literature Number: SNVS747

Embedded Scheduler in Cell Battery Monitor of the bq769x0

Hands-On: Using MSP430 Embedded Op Amps

High-Voltage Signal Conditioning for Low-Voltage ADCs

Application Note AN041

LMP8640,LMP8640HV. LMP8640/LMP8640HV Precision High Voltage Current Sense Amplifier. Literature Number: SNOSB28D

Technical Documents. SLVSD67 SEPTEMBER 2015 TPS65651 Triple-Output AMOLED Display Power Supply

AMC1210. User's Guide

Application Note AN092

How AutoTune TM regulates current in stepper motors. Rakesh Raja, Sudhir Nagaraj Design Engineers, Motor Drive Business Unit Texas Instruments

Literature Number: SNAP001

AN-1557 LM5022 Evaluation Board

The TPS61042 as a Standard Boost Converter

TI Designs: Biometric Steering Wheel. Amy Ball TIDA-00292

DAC0800,DAC0802. DAC0800/DAC Bit Digital-to-Analog Converters. Literature Number: SNAS538B

Low Voltage Brushed Motor System

CD74HC138-Q1 HIGH-SPEED CMOS LOGIC 3- TO 8-LINE INVERTING DECODER/DEMULTIPLEXER

HF Power Amplifier (Reference Design Guide) RFID Systems / ASP

AN-Note 1374 Use of LMV225 Linear-In-dB RF Power Detector in. CDMA2000 1X and EV_DO Mobile Station and Access Terminal

RF BASICS. Low Power Wireless Texas Instruments

Mat'l Density (Kg/cubic Material

SN74SSTV32852-EP 24-BIT TO 48-BIT REGISTERED BUFFER WITH SSTL_2 INPUTS AND OUTPUTS SCES700 OCTOBER 2007

LM108A,LM208A,LM308A. LM108A LM208A LM308A Operational Amplifiers. Literature Number: SNOSBS6A

THE GC5016 AGC CIRCUIT FUNCTIONAL DESCRIPTION AND APPLICATION NOTE

LDC0851 Quick-Start Guide

DAC1020,DAC1218,LF351,LF356,LM135,LM319, LM394,LM395

Optimized Digital Filtering for the MSP430

available options TA PACKAGED DEVICE FEATURES 40 C to 85 C ONET2501PARGT 2.5-Gbps limiting amplifier with LOS and RSSI

Effect of Programmable UVLO on Maximum Duty Cycle Achievable With the TPS4005x and TPS4006x Family of Synchronous Buck Controllers

LF356,LM308,LM741. AN-480 A 40 MHz Programmable Video Op Amp. Literature Number: SNOA756

PGA900 as a 4- to 20-mA Current Loop Transmitter

absolute maximum ratings over operating free-air temperature range (unless otherwise noted)

LM V Monolithic Triple Channel 30 MHz CRT DTV Driver

LED Driver Based on UCC28060 Interleaved ACDC Single Stage Flyback. Application Report

Application Report. Art Kay... High-Performance Linear Products

Application Report. Battery Management. Doug Williams... ABSTRACT

LM82,LM83,LM84,LM87 Multiple Remote Diode Temperature Sensing

LMV431,LMV431A,LMV431B. LMV431/LMV431A/LMV431B Low-Voltage (1.24V) Adjustable Precision Shunt. Regulators. Literature Number: SNVS041F

LOW-POWER QUAD DIFFERENTIAL COMPARATOR

LF347, LF347B JFET-INPUT QUAD OPERATIONAL AMPLIFIERS

LM13700 Dual Operational Transconductance Amplifiers with Linearizing Diodes and Buffers

ORDERING INFORMATION. QFN RGY Tape and reel SN74CBT3257RGYR CU257. SOIC D Tape and reel SN74CBT3257DR

LME49710 LME49710 High Performance, High Fidelity Audio Operational Amplifier

1.5 C Accurate Digital Temperature Sensor with SPI Interface

Excellent Integrated System Limited

Small, Dynamic Voltage Management Solution Based on TPS62300 High-Frequency Buck Converter and DAC6571

LM148QML LM148QML Quad 741 Op Amps

TIDA Test Report 1/4/2016. TIDA Test Report 1/4/2016

2 C Accurate Digital Temperature Sensor with SPI Interface

Working with ADCs, OAs and the MSP430

AN-1646 LM3102 Demonstration Board Reference Design

Compensation Made SIMPLE with LM4360x, LM4600x

µa78m00 SERIES POSITIVE-VOLTAGE REGULATORS

LM146,LM346. LM146/LM346 Programmable Quad Operational Amplifiers. Literature Number: SNOSBH5B

The ULN2003AI has a 2.7-kΩ series base resistor for each Darlington pair for operation directly with TTL or 5-V CMOS devices. ORDERING INFORMATION

TPS mA 14W Constant Current Buck LED Driver Micro- Module

CD54/74HC540, CD74HCT540, CD54/74HC541, CD54/74HCT541

Application Note AN096

LM2734,LM2736,LM2742,LM2743,LM2744, LM5642

LME49720 LME49720 Dual High Performance, High Fidelity Audio Operational Amplifier

POSITIVE-VOLTAGE REGULATORS

High Speed PWM Controller

TL284x, TL384x CURRENT-MODE PWM CONTROLLERS

LM340 LM340/LM78XX Series 3-Terminal Positive Regulators

54ACT16827, 74ACT BIT BUFFERS/DRIVERS WITH 3-STATE OUTPUTS

Design of a high-frequency series capacitor buck converter

TI Designs TIDA Automotive 1.3M Camera Module Design with OV10640, DS90UB913A and power over Coax Test Data

ORDERING INFORMATION PACKAGE

LMV225,LMV226,LMV228. LMV225/LMV226/LMV228 RF Power Detector for CDMA and WCDMA. Literature Number: SNWS013K

Transcription:

Application Note AN091 RemoTI TM IR Signal Generation Application Note Keywords RemoTI TM CC2530 CC2531 CC2533 Infrared (IR) ZigBee RF4CE ZigBee Remote Control Target Board 1 Introduction Although ZigBee RF4CE based remote controllers are replacing traditional IR remote controllers at a fast pace, manufacturers of RF4CE remote controllers may still want to support IR to control legacy consumer electronics equipment. Additionally, manufacturers of consumer electronics equipment may want to enable RF4CE with minimal chances to their current system. This can be accomplished by an RF4CE-to-IR bridge solution. The CC253x devices used in RF4CE remote control systems provide hardware resources for generation of IR signals to enable minimal CPU intervention. This enables RF4CE remote control and manufacturers with a cost effective approach to support legacy consumer electronics equipment. This application note provides information for how use this hardware capability in the RemoTI software environment and also a sample implementation of three different IR encoding formats. The objective of this application note is not to provide the command database for the different IR formats, rather, to educate the reader to be able to use the hardware resources for their desired format based on the provided sample implementations. RemoTI is Texas Instrument s implementation of the ZigBee RF4CE network protocol standard. You can find more information about RF4CE at www.zigbee.org/rf4ce and www.ti.com/rf4ce, and RemoTI at www.ti.com/remoti. SWRA323 Page 1 of 18

Table of Contents KEYWORDS... 1 1 INTRODUCTION... 1 2 ABBREVIATIONS... 3 3 INTRODUCTION TO IR SIGNALS... 4 3.1 NEC IR FORMAT... 4 3.1.1 Modulation...4 3.1.2 Protocol...4 3.2 REPEAT SEQUENCE... 5 3.3 RC5 FORMAT... 5 3.3.1 Modulation...5 3.3.2 Protocol...6 3.3.3 Repeat Sequence...6 3.4 SIRC FORMAT... 7 3.4.1 Modulation...7 3.4.2 Protocol...8 3.4.3 Repeat Sequence...8 4 IR SIGNAL GENERATION WITH CC253X... 8 4.1 NON-MODULATED SIGNALS... 9 4.2 MODULATED SIGNALS... 9 4.3 TIMER AND DMA INTERACTION EXAMPLES... 10 4.3.1 Pulse Distance Encoding...11 4.3.2 Pulse Width Encoding...12 4.3.3 Manchester Encoding...13 4.3.4 Start Condition...14 5 IRGENAPP... 14 5.1 IAR WORKSPACE... 14 5.2 IR GENERATION DRIVER... 14 5.3 IR GENERATION APPLICATION... 15 5.4 BUTTONS AND LEDS... 15 5.5 EXECUTION SEQUENCE... 15 6 TARGET BOARD... 16 7 REFERENCES... 17 8 GENERAL INFORMATION... 18 8.1 DOCUMENT HISTORY... 18 SWRA323 Page 2 of 18

2 Abbreviations EM LED IR ISR LSB MAC MSB RAM RF RF4CE OSAL HAL NV ZRC Evaluation module Light Emitting Diode Infrared Interrupt Service Routine Least Significant Bit Medium Access Control Most Significant Bit Random Access Memory Radio Frequency Radio Frequency for Consumer Electronics Operating System Abstraction Layer Hardware Abstraction Layer Non-Volatile (memory) ZigBee Remote Control SWRA323 Page 3 of 18

3 Introduction to IR Signals A wide variety of both standard and proprietary IR signal formats is used in consumer electronics equipment. The IR formats can be divided into three main categories or combinations of these; Pulse distance modulation Pulse width modulation Manchester (bi-phase) modulation The pros and cons of the different modulation techniques will not be discussed in this application note; however, we will discuss their differences and how to use the CC253x family of devices to generate the IR formats. The NEC, RC5 and SIRC formats are used as examples of the different formats and the sample drivers and applications accompanying this application note implements these three formats. [1] is used as the reference for the details of the modulation formats. 3.1 NEC IR Format 3.1.1 Modulation The NEC format uses the pulse distance modulation technique. Pulse distance modulation is based on varying the pulse duty cycle for a logical 1 and 0 while keeping the pulse active period constant. Figure 1 below illustrates the principle of pulse distance modulation. Figure 1 NEC Format - Pulse Distance Modulation NEC format timing information: Carrier: 38 khz with 1/3 or 1/4 duty cycle Active period: 560 µs Duty Cycle o Logical 1 : 2.25 ms o Logical 0 : 1.12 ms 3.1.2 Protocol The NEC protocol uses a 8-bit command and a 8-bit address length for each transfer. The command and address bits are preceded by a preamble with active period of 9 ms and duty cycle of 13.5 ms. The command and address bits are transfer a second time with all bits inverted for increased reliability. Each command and data byte are transferred with the LSB first. A trailing stop bit is used to indicate the end of frame. See Figure 2 below for an illustration of the protocol. SWRA323 Page 4 of 18

Figure 2 NEC Protocol 3.2 Repeat Sequence The protocol described in Figure 2 is transmitted once. A repeat pattern consisting of a preamble of active period 9 ms and duty cycle 11.5 ms, and a stop bit is transmitted every 110 ms as long as the key remains pressed. Note that the preamble duty cycle of the repeat pattern is shorter than the preamble of the first command and data frame. See Figure 3 below for an illustration of the repeat sequence. Figure 3 NEC Repeat Sequence 3.3 RC5 Format 3.3.1 Modulation The RC5 format uses the Manchester (bi-phase) modulation technique. Manchester modulation is based on keeping the pulse active period and duty cycle constant while positioning the pulse at the beginning or the end of the duty cycle to distinguish between a logical 1 and 0. Figure 4 below illustrates the principle of Manchester modulation. SWRA323 Page 5 of 18

Figure 4 RC5 Format - Manchester (Bi-phase) Modulation RC5 format timing information: Carrier: 36 khz with 1/3 or 1/4 duty cycle Active period: 889 µs Duty Cycle: 2 * Active Period: 1.778 ms o Logical 0 : Active burst first half of duty cycle o Logical 1 : Active burst in second half of duty cycle 3.3.2 Protocol The RC5 protocol uses a 6-bit command and a 7-bit address length for each transfer. Other versions with different command and address length also exist. The RC5 protocol is not using a preamble; instead two start bits of logical 1 are used to identify the start of a frame. The third bit is a toggle bit that is inverted every time a key is pressed. This way the receiver can distinguish between a key pressed command and repeated commands. The command and data bits are transferred with the MSB first. See Figure 5 below for an illustration of the protocol. Figure 5 RC5 Protocol 3.3.3 Repeat Sequence The protocol described in Figure 5 is also used as the repeat pattern. This means initial frame and repeat frames are identical. The frame is repeated every 114 ms as long as the key remains pressed. See Figure 6 for an illustration of the repeat sequence. SWRA323 Page 6 of 18

Figure 6 RC5 Repeat Sequence 3.4 SIRC Format 3.4.1 Modulation The SIRC format uses a combination of the pulse distance and pulse width modulation technique. SIRC modulation is based on varying both the active period and duty cycle to distinguish between a logical 1 and a logical 0. Note that the non-active period for both logical 1 and logical 0 is constant. Figure 7 below illustrates the principle of a combined pulse distance and pulse width modulation. Figure 7 SIRC format - Pulse Distance and Pulse Width Modulation SIRC format timing information: Carrier: 40 khz with 1/3 or 1/4 duty cycle Active period: o Logical 0 : 600 µs o Logical 1 : 1.2 ms Duty Cycle o Logical 0 : Active Period Logical 0 + 600 µs: 1.8 ms o Logical 1 : Active Period Logical 1 + 600 µs: 1.2 ms SWRA323 Page 7 of 18

3.4.2 Protocol The SIRC protocol uses a 7-bit command and a 5-bit address length for each transfer. Other versions with different command and address length also exist. The command and address bits are preceded by a preamble with active period of 2.4 ms and duty cycle of 3 ms. The command and data bits are transferred with LSB first. See Figure 8 below for an illustration of the protocol. Figure 8 SIRC Protocol 3.4.3 Repeat Sequence The protocol described in Figure 8 is also used as the repeat pattern. This means initial frame and repeat frames are identical. The frame is repeated every 45 ms as long as the key remains pressed. See Figure 9 for an illustration of the repeat sequence. Figure 9 SIRC Protocol Repeat Sequence 4 IR signal generation with CC253X The CC253x family of devices contains hardware resources that enable generation of IR signals with minimal CPU interaction. The following resources are available; Timers SWRA323 Page 8 of 18

o Timer 1 (16 bit) o Timer 3 (8 bit) o Timer 4 (8 bit) DMA o Multiple DMA channels for transfer of IR signal timing data to the timers IR generation AND circuit o Logical AND circuit used to combine two timer outputs to generate a modulated IR signal. Note that only Timer 3 and Timer 1 can be used for this purpose Note that Timer 2 (MAC timer) isn t available for this purpose since it s reserved for the RemoTI system. 4.1 Non-modulated Signals Non-modulated signals can be generated using either Timer 1 (T1), Timer 3 (T3) or Timer 4 (T4) together with DMA channels for minimal CPU interaction. Which timer to use depends on the timing specification of the IR signal and the output pin requested for the generated signal. See [2] for details of output pin assignments for the different timer channels. 4.2 Modulated Signals Modulated signals are generated using both Timer 1 (T1) and Timer 3 (T3). T1 is used to modulate the IR signal on top of the carrier generated by T3. Note that only Timer 1 channel 1 output and T3 channel 1 output can be combined with the logical AND circuit to generate a modulated IR signal. The IR OUT pin is controlled by the T1 channel 1 output pin and is as such limited to P1.1 or P0.3. See the peripheral I/O section of [2] for details. P1.1 has 20 ma drive strength while P0.3 has 4 ma drive strength. Figure 10 below illustrates the logic for generation of modulated IR signals. Figure 10 CC253x IR Generation HW for Modulated Signals NOTE that the IR OUT is active high. This means that external circuitry for increased drive strength must be designed with active high logic. SWRA323 Page 9 of 18

4.3 Timer and DMA Interaction Examples The modulo mode and output compare mode feature of Timer 1 (T1), Timer 3 (T3) and Timer 4 (T4) are used to the control pulse generation compromising the IR signal. These features are described in details in the chapter for each timer in [2]; however, here is a short description of these important features. Timer modulo mode Timers can be configured as free running, up/down or modulo mode. The modulo mode basically configures the timer to count upwards from 0x0 to the value configured in the timer channel 0 compare register. The timer wraps around to 0x0 again when the timer channel 0 compare register value is reached. This feature is used to control the duty cycle of each pulse in the IR signal pattern. Timer output compare mode Timer channel 1-n (n dependent on timer) is associated with an output pin in output compare mode. The output on this pin is controlled by the selected output compare mode and current timer value. This application note and sample code is using output compare mode 4; the pin is set when timer counter is 0x0 and cleared when the timer counter value equals the timer channel 1-n compare value. This feature is used to control the active period of each pulse in the IR signal pattern. An example is shown in Figure 11 where the timer channel 0 compare (CC0) is set to 4 and timer channel 1 output compare (CC1) is set to 2. The timer is furthermore configured to run in modulo and compare mode 4. Figure 11 Timer Modulo and Compare Mode 4 It can be seen from Figure 11 that the pulse on Timer Channel 1 (CC1) is set when the timer counter (CNT) = 0x0 and cleared when it the CNT = CC1. The CNT also wraps around and starts counting upwards from 0x0 when CNT = CC0. It is important to note the effect of the 0 th counter cycle on the generated signal. One may expect a 50% duty cycle when CC1 is configured to CC0 /2, however, the generated signal duty cycle is actually CC1 / (CC0 + 1). It is therefore important to configure the CC0 value with the 0 th counter cycle in mind for correct timing. The timer CC0 and CC1 values can be programmed manually or by using dedicated DMA channels. DMA channels are used to avoid CPU interaction from the time the signal SWRA323 Page 10 of 18

generation is started until an interrupt is generated at the end of the complete IR signal generation. The DMA channels are configured to feed the CC0 and CC1 register from a buffer in RAM with the timing information for each pulse. The RAM buffers are configured depending on the IR generation signal format timing and the address and data information for the command or repeat sequence. The DMA channels are furthermore configured to trigger on the CC1 value of the timer. This means the next CC0 and CC1 value us transferred from RAM to the respective timer CC0 and CC1 registers when the timer CNT = current CC1 value. It is important to notice that these new DMA d CC0 and CC1 values are not latched into the timer until the timer CNT = 0x0. The DMA is configured to operate in variable length mode and the length, i.e. the number of CC0 and CC1 values to be transferred, is set for each IR command depending on the signal pattern. The DMA will generate an interrupt immediately after the last value is DMA d from RAM to the timer CCO and CC1 register. In order to ensure generation of the last pulse, a last value in the RAM buffers are include as don t care. Basically, the ISR will be called and the timers will be stopped after the last DMA. As such, the timing information of the last value in the RAM buffers will never be generated. 4.3.1 Pulse Distance Encoding Figure 12 below illustrates the sequence of events for the timer and DMA channels for pulse distance encoding CNT shows the timer counter values The mid section shows the DMAs trigger when CNT=CC1 and the DMA transfer from buffer a and b to the CCO and CC1 timer registers respectively The latch arrow shows the point in time when the new CC0 and CC1 values are latched into the timers IR OUT is the generated signal Figure 12 Pulse Distance Encoding: DMA and Timer Details SWRA323 Page 11 of 18

As seen from Figure 12, the CCO and CC1 register must be programmed with initial values to control the timing of the first pulse. The subsequent pulses are controlled with the timing information DMA d from the RAM buffers. This illustration uses one DMA channel each for the CCO and CC1 timing information. It can be observed that the CC1 value is constant. This is expected for pulse distance encoding where the pulse active period is constant while the pulse duty cycle period varies to distinguish between a logical 0 and 1. As such, only one DMA channel is really necessary for pulse distance coding formats since CC1 doesn t need to be re-programmed. Note, however, that IR coding formats that include a preamble must use a DMA channel for the CC1 timing information as well due to different active period timing of the preamble and the individual pulse. This is in fact the case for the NEC format described and implemented in the sample code for this application note. 4.3.2 Pulse Width Encoding Figure 13 below illustrates the sequence of events for the timer and DMA channels for pulse distance encoding CNT shows the timer counter values The mid section shows the DMAs trigger when CNT=CC1 and the DMA transfer from buffer a and b to the CCO and CC1 timer registers respectively The latch arrow shows the point in time when the new CC0 and CC1 values are latched into the timers IR OUT is the generated signal Figure 13 Pulse Width Encoding: DMA and Timer Details As seen from Figure 13, the CCO and CC1 register must be programmed with initial values to control the timing of the first pulse. The subsequent pulses are controlled with the timing information DMA d from the RAM buffers. SWRA323 Page 12 of 18

This illustration uses one DMA channel each for the CCO and CC1 timing information. It can be observed that the CC0 value is constant. This is expected for pulse width encoding where the pulse duty cycle period is constant while the pulse active period varies to distinguish between a logical 0 and 1. As such, only one DMA channel is really necessary for pulse distance coding formats since CC0 doesn t need to be re-programmed. Note, however, that IR coding formats that include a preamble must use a DMA channel for the CC0 timing information as well due to different active period timing of the preamble and the individual pulse. 4.3.3 Manchester Encoding Figure 14 below illustrates the sequence of events for the timer and DMA channels for pulse distance encoding CNT shows the timer counter values The mid section shows the DMAs trigger when CNT=CC1 and the DMA transfer from buffer a and b to the CCO and CC1 timer registers respectively The latch arrow shows the point in time when the new CC0 and CC1 values are latched into the timers IR OUT is the generated signal Figure 14 Manchester Encoding: DMA and Timer Details As seen from Figure 14, the CCO and CC1 register must be programmed with initial values to control the timing of the first pulse. The subsequent pulses are controlled with the timing information DMA d from the RAM buffers. This illustration uses one DMA channel each for the CCO and CC1 timing information. It can be observed that the neither CC0 nor CC1 values are constant as with pulse distance or pulse width encoding. The values of CC0 and CC1 varies dependent on the sequence of logical 0 s and logical 1 s to be transmitted. SWRA323 Page 13 of 18

4.3.4 Start Condition It s important that the output of the selection IR generation pin is initialized correctly at application startup. This is accomplished by running the selected timer at IR generation module initialization with selected CC0 and CC1 values, and halting the timer when the pin is known to be in its desired state based on the timer counter value. 5 IrGenApp The application code accompanying this application note contains example implementation of the NEC, RC5 and SRIC IR formats running on the CC2533F96 device. Note that the IR generation drivers for the different formats can run on all CC253x devices. Unzip the application code on top of your RemoTI 1.2.1 Installation. The default <install directory> is C:\Texas Instruments\RemoTI-CC253xDK-1.2.1. The application is using the RemoTI Target Board for as the IR generation platform. It will generate IR signals dependent on the RF4CE command received over-the-air. 5.1 IAR Workspace The IrGenApp application can be found in <install directory>\projects\remoti\irgenapp. Open the IrGenApp.eww workspace in the CC2533RB directory. You will see the workspace includes the following project configurations: CC2533F96 SIRC CC2533F96 NEC CC2533F96 RC5 5.2 IR Generation Driver Each of the IR drivers are contained in the following files hal_irgen_sirc.h/c hal_irgen_nec.h/c hal_irgen_rc5.h/c Each IR generation driver consists of four main modules 1. Initialization This function is used to initialize the timers and DMAs according to the IR format bit timing information, select output pin and also initialize the output pin to inactive state. This function is called by the application at system initialization time. 2. Command generation This function prepares the RAM buffers based on the actual command and actually starts the IR generation. This function is called by the application layer when IR generation is requested. 3. Repeat command generation This function is used to generate the repeat command. This function is called from the application layer, which means the repeat timing must be controller at the application layer. SWRA323 Page 14 of 18

4. Interrupt Service Routine (ISR) This is the entry point of the for the IR generation module when the signal generation is complete. The driver also contains the calculation of the bit timing at the top of the respective.c file. A common file called hal_irgen.h contains definitions for DMA channel selection, generic definitions for timers and DMAs used to configure the appropriate resources. 5.3 IR Generation Application The application code examples for using the IR generation drivers are contained in the following files irg_target_sirc.c irg_target_nec.c irg_target_rc5.c The application calls the IR generation initialization module, generates the appropriate IR command based on the RF4CE message received over-the-air, and controls the generation of the repeat sequence. 5.4 Buttons and LEDs The S2 button on the Target Board is used as input to trigger discovery/pairing. Two LEDs are used as visual indication of RemoTI initialization, discovery/pairing and IR generation. Green LED (LED1) is used to indicate message exchange. o Off no valid pairing in the node paring table o On at least one pairing entry exist in the node paring table o Blinking - indicates the node is in discovery mode and will accept a discovery/pairing request from a remote controller node. The target node implements the auto-discovery pairing mechanism and will as such accept pairing request for 30 sec after S2 is activated. Red LED (LED2) is used to indicate RemoTI initialization and IR signal generation. o On - when IrGenApp is initializing and during IR signal generation. o Off when in ready state 5.5 Execution Sequence Follow these steps to run the sample application: 1. Connect the mini USB cable to the Target Board to apply power. 2. Connect the CC debugger to the target Board. 3. Build and download the application 4. Start the execution of the IrGenApp and observe the green LED turned on. 5. Wait until the green LED is turned off to indicate that RemoTI stack has initialized. 6. Press S1 to enable discovery/pairing mode and observe the green LED blinking. 7. Press the pairing button on the remote controller when the green LED is blinking. 8. The green LED will turn on solid when the pairing link is established. 9. Press the play key on the remote controller to start IR generation and observe the red LED blink when IR signal generation is in progress. Note that other keys pressed on the remote controller have no effect. SWRA323 Page 15 of 18

6 Target Board Earlier versions of the RemoTI Target board included and external active low IR driver circuit for the IR_OUT (P1.1) pin. See chapter 6.1.7.1 of [4] for more information for how to change the polarity to active high. SWRA323 Page 16 of 18

7 References [1] http://www.sbprojects.com/knowledge/ir/ir.htm [2] CC253x User s Guide, SWRU191 (www.ti.com/lit/swru191) [3] http://focus.ti.com/docs/prod/folders/print/cc2530.html [4] CC2533 RF4CE Basic Remote Development Kit Hardware User s Guide, SWRU266 (www.ti.com/lit/swru266) SWRA323 Page 17 of 18

8 General Information 8.1 Document History Revision Date Description/Changes SWRA323 June 30, 2011 Initial release. SWRA323 Page 18 of 18

IMPORTANT NOTICE Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, improvements, and other changes to its products and services at any time and to discontinue any product or service without notice. Customers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. All products are sold subject to TI s terms and conditions of sale supplied at the time of order acknowledgment. TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI s standard warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where mandated by government requirements, testing of all parameters of each product is not necessarily performed. TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and applications using TI components. To minimize the risks associated with customer products and applications, customers should provide adequate design and operating safeguards. TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask work right, or other TI intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information published by TI regarding third-party products or services does not constitute a license from TI to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property of the third party, or a license from TI under the patents or other intellectual property of TI. Reproduction of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair and deceptive business practice. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional restrictions. Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service voids all express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice. TI is not responsible or liable for any such statements. TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product would reasonably be expected to cause severe personal injury or death, unless officers of the parties have executed an agreement specifically governing such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramifications of their applications, and acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related requirements concerning their products and any use of TI products in such safety-critical applications, notwithstanding any applications-related information or support that may be provided by TI. Further, Buyers must fully indemnify TI and its representatives against any damages arising out of the use of TI products in such safety-critical applications. TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products are specifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet military specifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade is solely at the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in connection with such use. TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI products are designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any non-designated products in automotive applications, TI will not be responsible for any failure to meet such requirements. Following are URLs where you can obtain information on other Texas Instruments products and application solutions: Products Applications Audio www.ti.com/audio Communications and Telecom www.ti.com/communications Amplifiers amplifier.ti.com Computers and Peripherals www.ti.com/computers Data Converters dataconverter.ti.com Consumer Electronics www.ti.com/consumer-apps DLP Products www.dlp.com Energy and Lighting www.ti.com/energy DSP dsp.ti.com Industrial www.ti.com/industrial Clocks and Timers www.ti.com/clocks Medical www.ti.com/medical Interface interface.ti.com Security www.ti.com/security Logic logic.ti.com Space, Avionics and Defense www.ti.com/space-avionics-defense Power Mgmt power.ti.com Transportation and www.ti.com/automotive Automotive Microcontrollers microcontroller.ti.com Video and Imaging www.ti.com/video RFID www.ti-rfid.com Wireless www.ti.com/wireless-apps RF/IF and ZigBee Solutions www.ti.com/lprf TI E2E Community Home Page e2e.ti.com Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265 Copyright 2011, Texas Instruments Incorporated