bodyPosition.h
Go to the documentation of this file.00001 #ifndef BODY_POSITION_H
00002 #define BODY_POSITION_H
00003
00015 #include "coordinateCtrl_target.h"
00016 #include "bodyCtrl.h"
00017
00018
00019 enum {
00020 DIV16_MUL_SHIFT = 30,
00021 };
00022
00023
00027 typedef struct {
00028 bodyInfo_t *body;
00029 long cnt_integer[2];
00030 long cnt_decimal[2];
00031 long rotate_num;
00032
00033 long cnt_per_m;
00034 long div16_cnt;
00035 long div16_cnt_max;
00036 long div16_cnt_mul;
00037
00038 long cnt2mm_const;
00039
00040 coordinateInfo_t body_crd;
00041
00042 long straight_cnt_vel;
00043 long rotate_cnt_vel;
00044
00045 long adjust_base;
00046 long adjust_current_cnt;
00047 long adjust_cnt;
00048 long adjust_max;
00049
00050 } bodyPosition_t;
00051
00052
00053
00054 BEGIN_C_DECLS;
00055
00056 extern void initBodyPositionInfo(bodyPosition_t *bodyPos,
00057 bodyInfo_t *bodyInfo);
00058 extern void updateBodyPosition(bodyPosition_t *bodyPos,
00059 int right_cnt, int left_cnt);
00060 extern void updateCoordinatePosition(coordinateInfo_t *crd,
00061 bodyPosition_t *bodyPos);
00062
00063 END_C_DECLS;
00064 #endif
00065