Library for XBus servo (under construction)
Dependents: mbed_XBus_Test mbed_XBus_MotionTest XBusServoTest ControlYokutan2017_2 ... more
It's pre-opened page. it's still a little bit unstable to use command packet but mostly work. Tested only on KL25Z
暫定版ページです。 まだコマンドパケット使用時に時々不安定になりますが、概ね動作しています。 KL25Z上でのみ、動作確認しています
Diff: XBusServo.h
- Revision:
- 18:75ddf12d93b6
- Parent:
- 17:3ffb2e3e3bec
diff -r 3ffb2e3e3bec -r 75ddf12d93b6 XBusServo.h --- a/XBusServo.h Thu Oct 30 05:11:46 2014 +0000 +++ b/XBusServo.h Wed Nov 05 03:12:27 2014 +0000 @@ -12,7 +12,7 @@ #define XBusServo_h #include "mbed.h" -//#include "MODSERIAL.h" + /// standard interval time for XBus servo #define kXBusStandardInterval 14 // mSec @@ -25,6 +25,9 @@ /// maximum number of XBus servo #define kXBusMaxServoNum 50 +/// convert ServoID & SubID to real Channel ID +#define ChannelID(ServoID, SubID) ((ServoID & 0x3F) | ((SubID << 6) & 0xC0)) + //! XBus error code typedef enum { @@ -242,7 +245,6 @@ private: #define kRecieveBufferSize 32 -// MODSERIAL XBusPort; RawSerial XBusPort; DigitalOut TxSwitch; Timeout TxSwitchTimer; @@ -255,7 +257,7 @@ uint8_t* sendBuffer; // serial send buffer volatile uint8_t* sendBufferPointer; volatile uint8_t sendLength; - uint8_t recieveBuffer[kRecieveBufferSize]; // serial recieve buffer + volatile uint8_t recieveBuffer[kRecieveBufferSize]; // serial recieve buffer volatile int8_t recieveBufferPointer; uint8_t dirty; // volatile uint8_t serialCommandBusy; //