USB HID Keyboard and car audio controller for steering of TOYOTA car

Dependencies:   USBDevice mbed

Committer:
zeus3110
Date:
Thu Aug 20 11:59:37 2015 +0000
Revision:
0:30fe2eec5271
First release

Who changed what in which revision?

UserRevisionLine numberNew contents of line
zeus3110 0:30fe2eec5271 1 #ifndef _DEH970_CTRL_H_
zeus3110 0:30fe2eec5271 2 #define _DEH970_CTRL_H_
zeus3110 0:30fe2eec5271 3
zeus3110 0:30fe2eec5271 4 #include "mbed.h"
zeus3110 0:30fe2eec5271 5
zeus3110 0:30fe2eec5271 6 #define DATA_LENGTH 4
zeus3110 0:30fe2eec5271 7 #define IR_ON 0.5
zeus3110 0:30fe2eec5271 8 #define IR_OFF 0
zeus3110 0:30fe2eec5271 9
zeus3110 0:30fe2eec5271 10 const int BurstPeriod=26;
zeus3110 0:30fe2eec5271 11 const timestamp_t LeaderOn=8628;
zeus3110 0:30fe2eec5271 12 const timestamp_t LeaderOff=4137;
zeus3110 0:30fe2eec5271 13 const timestamp_t DataOn=626;
zeus3110 0:30fe2eec5271 14 const timestamp_t DataOff1=1488;
zeus3110 0:30fe2eec5271 15 const timestamp_t DataOff0=424;
zeus3110 0:30fe2eec5271 16 const timestamp_t TrailerOn=626;
zeus3110 0:30fe2eec5271 17 const timestamp_t TrailerOff=25395;
zeus3110 0:30fe2eec5271 18
zeus3110 0:30fe2eec5271 19 class DEH970Controller {
zeus3110 0:30fe2eec5271 20 protected:
zeus3110 0:30fe2eec5271 21 private:
zeus3110 0:30fe2eec5271 22 bool Locked;
zeus3110 0:30fe2eec5271 23 PwmOut *IRPort;
zeus3110 0:30fe2eec5271 24 int DataBitPos,DataBytePos;
zeus3110 0:30fe2eec5271 25 unsigned char *Data;
zeus3110 0:30fe2eec5271 26 bool DataBit;
zeus3110 0:30fe2eec5271 27 Timeout *TimeOutIR;
zeus3110 0:30fe2eec5271 28
zeus3110 0:30fe2eec5271 29
zeus3110 0:30fe2eec5271 30 public:
zeus3110 0:30fe2eec5271 31 bool IsLocked();
zeus3110 0:30fe2eec5271 32 DEH970Controller(PwmOut *Port);
zeus3110 0:30fe2eec5271 33 ~DEH970Controller();
zeus3110 0:30fe2eec5271 34 void PwmPortInit();
zeus3110 0:30fe2eec5271 35 void SendSignal(unsigned char *Dp);
zeus3110 0:30fe2eec5271 36 void SendLeaderOn();
zeus3110 0:30fe2eec5271 37 void SendData();
zeus3110 0:30fe2eec5271 38
zeus3110 0:30fe2eec5271 39 void SendVolPlus();
zeus3110 0:30fe2eec5271 40 void SendVolMinus();
zeus3110 0:30fe2eec5271 41 };
zeus3110 0:30fe2eec5271 42
zeus3110 0:30fe2eec5271 43 #endif