forked RemoteIR
Fork of RemoteIR by
TransmitterIR.h
- Committer:
- shintamainjp
- Date:
- 2010-08-21
- Revision:
- 5:e158c85c55ff
- Parent:
- 2:08836610bd4a
- Child:
- 8:46e34d6ddbe4
File content as of revision 5:e158c85c55ff:
/** * IR transmitter (Version 0.0.3) * * Copyright (C) 2010 Shinichiro Nakamura (CuBeatSystems) * http://shinta.main.jp/ */ #ifndef _TRANSMITTER_IR_H_ #define _TRANSMITTER_IR_H_ #include <mbed.h> #include "Semaphore.h" #include "RemoteIR.h" class TransmitterIR { public: explicit TransmitterIR(PinName txpin); ~TransmitterIR(); typedef enum { Idle, Leader, Data, Trailer } State; State getState(void); int setData(RemoteIR::Format format, uint8_t *buf, int bitlength); private: typedef struct { State state; int bitcount; int leader; int data; int trailer; } work_t; typedef struct { RemoteIR::Format format; int bitlength; uint8_t buffer[64]; } data_t; PwmOut tx; Ticker ticker; data_t data; work_t work; Semaphore sem; static const int TUS_NEC = 562; static const int TUS_AEHA = 425; static const int TUS_SONY = 600; void tick(); }; #endif