Things used in this project

Code

IRSendSerialC/C++
Uploaded to the 5529 to read Serial input and emit it over IR.
#include <IRSendRev.h>
#define pb1 PUSH1 
#define BIT_LEN         0
#define BIT_START_H     1
#define BIT_START_L     2
#define BIT_DATA_H      3
#define BIT_DATA_L      4
#define BIT_DATA_LEN    5
#define BIT_DATA        6
 
const int ir_freq = 38;                 // 38k
IRSendRev IR;
unsigned char dtaSend[40];
String buffer;
 
void setup()
{
    IR.setSend(40);
    Serial.begin(115200);
}
 
void loop()
{
  if (Serial.available()){
    buffer = "";
    while(Serial.available()>0){
      buffer += char(Serial.read());
    }
    dtaSend[BIT_DATA_LEN] = buffer.length();
    int i;
    for(i = 0; i<buffer.length();i++){
      dtaSend[BIT_DATA+i] = buffer[i];
    }
    IR.Send(dtaSend, 38);
  }
    delay(100);
}
IRRecvSerialC/C++
Code uploaded to the 6989 to receive ASCII codes over IR and print them on the built in LCD display.
#include <LCD_Launchpad.h>

#include <IRSendRev.h>
 
#define BIT_LEN         0
#define BIT_START_H     1
#define BIT_START_L     2
#define BIT_DATA_H      3
#define BIT_DATA_L      4
#define BIT_DATA_LEN    5
#define BIT_DATA        6

const int pinRecv = 5;              // ir receiver connect to D2
IRSendRev IR; 
boolean state = 0;
LCD_LAUNCHPAD LCD;
char buffer[40]; 
int dta[40];

void setup()
{
    Serial.begin(115200);
    IR.Init(pinRecv);
    LCD.init();
}

 
void loop()
{
  if(IR.IsDta())                  // get IR data
  {
    IR.Recv(dta);               // receive data to dta
    int i;
    for (i = 0;i<dta[BIT_DATA_LEN];i++){
      buffer[i] =  char(dta[BIT_DATA+i]);
    }
    buffer[i] = '\0';
    LCD.displayScrollText(buffer,400);
  }
}
IRGroveC/C++
Library used to enable IR communication
No preview (download only).

Credits

81a21a12aab58cdfe8d1306c85500e45
Chris Roberts

I am an applications engineer with Texas Instruments working with the Launchpad by trade, and a maker by passion!

Contact

Replications

Did you replicate this project? Share it!

I made one

Love this project? Think it could be improved? Tell us what you think!

Give feedback

Comments

Similar projects you might like

WIFI CONTROLLED ZUMO ROBOT
Intermediate
  • 24
  • 1

Protip

Design a robot that uses on-board IMU (Inertial Measurement Unit) sensors for autonomous motion control using Wi-Fi.

CC13xx + CC3100 WiFi IoT gateway
Intermediate
  • 10
  • 0

Protip

Learn how to use a 915MHz to Wi-Fi gateway in Energia

Upload code to TI TM4C123 using Linux, CMake and lm4tools
Intermediate
  • 119
  • 2

Protip

This is a step by step guide on how to get CMake and lm4tools setup in a Linux environment to upload code directly to your TM4C123 via usb.

Got Your Back
Intermediate
  • 2,113
  • 51

Full instructions

This ergonomic-sensitive chair add-on will help you chair-ish your health!

Got Your Back

#creaTIviteam

TiWo
Intermediate
  • 1,445
  • 35

Full instructions

TiWo, keepin' it cool

TiWo

Team ElectroVolts

Mounted Infrared LED Laser Tag System
Intermediate
  • 67
  • 3

A laser tag system that uses flex sensors to control an infrared LED transmitter.

Add projectSign up / Login