DJI NAZA-M controller (multi copter side) see: https://developer.mbed.org/users/okini3939/notebook/drone/

Dependencies:   FutabaSBUS NECnfc mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers drone.h Source File

drone.h

00001 
00002 #define DATA_TYPE_AIR    1
00003 #define DATA_TYPE_GROUND 2
00004 
00005 struct AirData {
00006     uint8_t magic[4];
00007     int16_t seq;
00008     int16_t type;
00009     int16_t aileron;  // Right stick/L-R
00010     int16_t elevator; // Left stick/D-U
00011     int16_t throttle; // Right stick/D-U
00012     int16_t rudder;   // Left stick/L-R
00013     int16_t analog1;
00014     int16_t analog2;
00015     int16_t sw1;
00016     int16_t sw2;
00017     int16_t flags;
00018     uint8_t sum;
00019 } __attribute__((packed));
00020 
00021 struct GroundData {
00022     uint8_t magic[4];
00023     int16_t seq;
00024     int16_t type;
00025     int16_t uptime;
00026     int16_t battery;
00027     int16_t current;
00028     int32_t amphour;
00029     int16_t distance1, distance2;
00030     uint8_t gps[60];
00031     uint8_t compass[10];
00032     uint8_t sum;
00033 } __attribute__((packed));
00034 
00035 struct Status {
00036     int gps_date, gps_time, gps_lat, gps_lng, gps_h;
00037     int gps_sat, gps_type, gps_flg, gps_lost;
00038     int compass_x, compass_y, compass_z, compass;
00039     int uptime, battery, current, amphour;
00040     int distance1, distance2;
00041     int current_sum, current_count;
00042 };
00043 
00044 void recvRf (struct AirData *recv_data, int rssi);
00045 int sendRf (struct GroundData *send_data);
00046 void pollRf ();
00047 int initRf ();
00048 
00049 void initCan ();
00050 
00051 void setFailsafeSBus (int flg);
00052 void setSBus (int ch, int num);
00053 void initSBus ();
00054 
00055 void initI2c ();
00056 void pollI2c ();
00057 int sendI2c (struct GroundData *send_data);