It can learn and transmit signals of infrared communication.

Committer:
shimotoriharuki
Date:
Mon Mar 11 06:52:42 2019 +0000
Revision:
1:ecde41301a4d
Parent:
0:2d87ed532eff
IR

Who changed what in which revision?

UserRevisionLine numberNew contents of line
shimotoriharuki 0:2d87ed532eff 1 #ifndef IR_COMMUNICATION_H
shimotoriharuki 0:2d87ed532eff 2 #define IR_COMMUNICATION_H
shimotoriharuki 0:2d87ed532eff 3
shimotoriharuki 0:2d87ed532eff 4 #include "mbed.h"
shimotoriharuki 0:2d87ed532eff 5
shimotoriharuki 0:2d87ed532eff 6 #define IR_ON 0.33
shimotoriharuki 0:2d87ed532eff 7 #define IR_OFF 0
shimotoriharuki 0:2d87ed532eff 8 #define SIZE 500
shimotoriharuki 0:2d87ed532eff 9
shimotoriharuki 0:2d87ed532eff 10 class IR_Comm{
shimotoriharuki 0:2d87ed532eff 11 public:
shimotoriharuki 1:ecde41301a4d 12 IR_Comm(PinName IR_in, PinName IR_out, const int data_size); //(PinName of InterruptIn, PinName of PwmOut, Data size of array)
shimotoriharuki 0:2d87ed532eff 13
shimotoriharuki 0:2d87ed532eff 14 void IR_send(int *);
shimotoriharuki 0:2d87ed532eff 15 void IR_data_reset(int *);
shimotoriharuki 0:2d87ed532eff 16 void ir_rise(void);
shimotoriharuki 0:2d87ed532eff 17 void ir_fall(void);
shimotoriharuki 0:2d87ed532eff 18 void get_data(int *);
shimotoriharuki 0:2d87ed532eff 19 void receive_start();
shimotoriharuki 0:2d87ed532eff 20 void receive_stop();
shimotoriharuki 0:2d87ed532eff 21
shimotoriharuki 0:2d87ed532eff 22 private:
shimotoriharuki 0:2d87ed532eff 23 InterruptIn IR_in; //赤外線受信 PA_0
shimotoriharuki 0:2d87ed532eff 24 PwmOut IR_LED; //赤外線送信 PA_1
shimotoriharuki 0:2d87ed532eff 25 Timer timer;
shimotoriharuki 0:2d87ed532eff 26
shimotoriharuki 0:2d87ed532eff 27 int temp_data[SIZE];
shimotoriharuki 0:2d87ed532eff 28 int receive_flag;
shimotoriharuki 0:2d87ed532eff 29 int i;
shimotoriharuki 0:2d87ed532eff 30 int size;
shimotoriharuki 0:2d87ed532eff 31 };
shimotoriharuki 0:2d87ed532eff 32
shimotoriharuki 0:2d87ed532eff 33 #endif