双葉コマンドサーボRS405cb制御用プログラム
Dependents: EM_Mission ToyBox ohta FriedRice
RS405cb.h@0:03b3a91ccd08, 2013-04-12 (annotated)
- Committer:
- YSB
- Date:
- Fri Apr 12 10:32:21 2013 +0000
- Revision:
- 0:03b3a91ccd08
- Child:
- 1:4f4b999b4939
??????????RS405CB??????????.rs485????????LTC485???????????????.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
YSB | 0:03b3a91ccd08 | 1 | #define RIGHT 1 |
YSB | 0:03b3a91ccd08 | 2 | #define LEFT 0 |
YSB | 0:03b3a91ccd08 | 3 | |
YSB | 0:03b3a91ccd08 | 4 | #define VERTICAL 1 |
YSB | 0:03b3a91ccd08 | 5 | #define HORIZONTAL 0 |
YSB | 0:03b3a91ccd08 | 6 | |
YSB | 0:03b3a91ccd08 | 7 | #ifndef MBED_RS405CB_H |
YSB | 0:03b3a91ccd08 | 8 | #define MBED_RS405CB_h |
YSB | 0:03b3a91ccd08 | 9 | |
YSB | 0:03b3a91ccd08 | 10 | class RS405cb: public Serial{ |
YSB | 0:03b3a91ccd08 | 11 | |
YSB | 0:03b3a91ccd08 | 12 | public: |
YSB | 0:03b3a91ccd08 | 13 | |
YSB | 0:03b3a91ccd08 | 14 | RS405cb(PinName tx,PinName rx,PinName permit); |
YSB | 0:03b3a91ccd08 | 15 | |
YSB | 0:03b3a91ccd08 | 16 | //////////////RS405_SERVO_command///////////////////////////////////////////// |
YSB | 0:03b3a91ccd08 | 17 | /////function for setting |
YSB | 0:03b3a91ccd08 | 18 | void TORQUE_ON(unsigned char id); |
YSB | 0:03b3a91ccd08 | 19 | void ID_CHANGE(unsigned char oldid,unsigned char newid); |
YSB | 0:03b3a91ccd08 | 20 | void DECIDE_LIMIT_ANGLE(unsigned char id,unsigned int CWlimit,unsigned int CCWlimit); |
YSB | 0:03b3a91ccd08 | 21 | void REQUIRE_RETURN_PACKET(unsigned char id); |
YSB | 0:03b3a91ccd08 | 22 | /////function for control |
YSB | 0:03b3a91ccd08 | 23 | void Rotate_Servo(unsigned char id,char RL,unsigned int ANGLE);//ANGLE:0-900 means 0.0 degree to 90.0 degree |
YSB | 0:03b3a91ccd08 | 24 | void Rotate_Servo_Float(unsigned char id,float ANGLE);//ANGLE:-90.0-90.0 |
YSB | 0:03b3a91ccd08 | 25 | |
YSB | 0:03b3a91ccd08 | 26 | //function for 2013 meister's airframe "SHO" |
YSB | 0:03b3a91ccd08 | 27 | void Sho_Init(int center_vert,int center_hori,int pls15_vert,int pls15_hori,int mns15_vert,int mns15_hori); |
YSB | 0:03b3a91ccd08 | 28 | void Sho_Rotate_Servo(unsigned char id,int VH,float angle_of_attack);//-15.0 deg to 15.0 deg |
YSB | 0:03b3a91ccd08 | 29 | |
YSB | 0:03b3a91ccd08 | 30 | |
YSB | 0:03b3a91ccd08 | 31 | private: |
YSB | 0:03b3a91ccd08 | 32 | |
YSB | 0:03b3a91ccd08 | 33 | //////function for RS405 basic command |
YSB | 0:03b3a91ccd08 | 34 | void RSW2(unsigned char id,unsigned char flg,unsigned char adr,unsigned char len,unsigned char cnt,unsigned char lowdata,unsigned char highdata); |
YSB | 0:03b3a91ccd08 | 35 | void RSW1(unsigned char id,unsigned char flg1,unsigned char adr1,unsigned char len1,unsigned char cnt1,unsigned char data1); |
YSB | 0:03b3a91ccd08 | 36 | void RSW0(unsigned char id,unsigned char flg,unsigned char adr,unsigned char len,unsigned char cnt); |
YSB | 0:03b3a91ccd08 | 37 | |
YSB | 0:03b3a91ccd08 | 38 | //variable for 2013 meister's airframe "SHO" |
YSB | 0:03b3a91ccd08 | 39 | int center_v,center_h,pls15_v,pls15_h,mns15_v,mns15_h; |
YSB | 0:03b3a91ccd08 | 40 | |
YSB | 0:03b3a91ccd08 | 41 | //Serial rs405cb; |
YSB | 0:03b3a91ccd08 | 42 | DigitalOut _permit; |
YSB | 0:03b3a91ccd08 | 43 | |
YSB | 0:03b3a91ccd08 | 44 | }; |
YSB | 0:03b3a91ccd08 | 45 | |
YSB | 0:03b3a91ccd08 | 46 | #endif |