KRS ICSサーボモータ用ライブラリ

初期化 KRS name(tx,rx);

位置指定 void SetPosition(id, position); [position : 0 3500 ~ 11500]

速度設定 void SetSpeed(id, speed); [speed : 0 ~ 127]

ストレッチ設定 void SetStretch(id, stretch); [stretch : 0 ~ 127]

電流制限設定 void SetCurrent(id, rotate, value : 0 ~ 127); [rotate : KRS::F KRS::R KRS::COM, current : 0 ~ 64]

ID書き込み void WriteAddress(id);

id : 0x00 ~ 0x1F

Revision:
2:431a802d01e2
Parent:
1:50d0eb774b0d
--- a/KRS.cpp	Sun Jul 03 04:35:46 2022 +0000
+++ b/KRS.cpp	Sun Jul 03 05:11:26 2022 +0000
@@ -6,6 +6,22 @@
     _serial.format(8,Serial::Even,1);
 }
 
+void KRS::WriteAddress(uint8_t address){
+    uint8_t ins = 0b11100000;
+    if(address <= 0x1F){
+        ins |= address;
+    }else{
+        ins |= 0x1F;
+    }
+    
+    _serial.putc(ins);
+    _serial.putc(0x01);
+    _serial.putc(0x01);
+    _serial.putc(0x01);
+    
+    wait_ms(10);
+}
+
 void KRS::SetStretch(uint8_t address, uint8_t value){
     uint8_t ins = 0b11000000;
     if(address <= 0x1F){