alpha_datapool

Dependents:   DataPool ctrl

AlphaPool.h

Committer:
Komazawa_sun
Date:
2017-08-30
Revision:
0:2c82568e1790
Child:
1:51a5a9f66f61

File content as of revision 0:2c82568e1790:

#ifndef ALPHAPOOL_H
#define ALPHAPOOL_H

#include "I2CTransporter.h"

class AlphaPool{
    public:
        AlphaPool();
        void up_load();
        void reset();
        
        union i2c_jusinkun_data //from jushinkun_datas
        {
            char all_data[10];
            struct 
            {
                unsigned char start_byte:8;
                signed int rx :8;
                signed int ry :8;
                signed int lx :8;
                unsigned int r_sw1 :1;
                unsigned int r_sw2 :1;
                unsigned int r_sw3 :1;
                unsigned int r_sw4 :1;
                unsigned int r_s_sw1 :1;
                unsigned int r_s_sw2 :1;
                unsigned int l_sw1 :1;
                unsigned int l_sw2 :1;
                unsigned int l_sw3 :1;
                unsigned int l_sw4 :1;
                unsigned int l_s_sw1 :1;
                unsigned int l_s_sw2 :1;
                unsigned int mode1 :1;
                unsigned int mode2 :1;
                signed int r_srd :8;
                signed int l_srd :8;
                unsigned int no_data :2;
                unsigned char checksum:8;
                unsigned char stop_byte :8;
            };
        };
        
        i2c_jusinkun_data ctrl;
        
        
        union i2c_johanshin_data
        {
            char all_data[1];
            struct
            {
                unsigned int shot_power :1;
                struct
                {
                    unsigned int belt_move :1;
                    unsigned int drum_turn :1;
                    unsigned int load :1; 
                }loader;
                
                unsigned int valve1 :1;
                unsigned int valve2 :1;
                unsigned int valve3 :1;
            };
        }; //apper_body
        i2c_johanshin_data a;
        
        union i2c_johanshin_return
        {
            char all_data[1];
            struct
            {
                unsigned int max_limit :1;
            };
        }; //apper_body_return
        i2c_johanshin_return ar;

        int data_index[26];
};


#endif