最近、ずっと前に作ったL6470ステッピングモータードライバ用ライブラリが
何者かによってインポートされまくってて怖い・・・。
https://developer.mbed.org/users/Yajirushi/
このページを見てもらえればわかるとおり、他のライブラリが一桁インポートなのに対して
L6470関連だけ50以上もインポートされてる。何に使われてるかがわからず怖い。
何か良くないことに使われてないことを祈るばかり。
しかしインポート数に比例して問い合わせとかくるって考えてたけど、ぜんぜん無い物なんだなぁ。
物品の販売をしても問い合わせが売れた数に比例しないし、みんなシャイなのかな?
3 comments to this article
asari
on 2017年4月30日 at 1:08 AM -
SECRET: 1
PASS: 25f25e50d3120ab6aec802baf7e3f686
L6470SDCをありがたく使わしていただいてます。
1つ問題がありまして、
L6470SDC::Qexec の「値の送出」がおかしい場合があるようです。
ためしに、
モーターは1つで、ENQ_run(1, 0x012345, false) としてから Qexec() した場合、
シリアルデバッグ有効にして実行すると
[Queue:Values]>>>> Motor-No.1, VAL[0]:0x01
[Queue:Values]>>>> Motor-No.1, VAL[1]:0x00
[Queue:Values]>>>> Motor-No.1, VAL[2]:0x00
のように、VAL[1]と[2]が 0x00 になってしまいました。
どうも、「値の送出」部分
( 552行目のあたり)
slide = j * maxSend8;
spi->write(valBox[i + slide]);
が正しそうですが… ( i と j が逆? )
ご確認お願いいたします。
Level52
on 2017年4月30日 at 12:22 PM -
素晴らしい!
よくぞこのスパゲッティじみたコードを解読できましたね!!
私も指摘されるまで気が付きませんでした(デバッグをできていない)
仰る通り、
slide = j * maxSend8;
spi->write(valBox[i + slide]);
この部分のjとiが逆です。
修正し、再コミットしておきます。
ご報告いただきありがとうございました。
asari
on 2017年5月3日 at 12:18 AM -
やはりそうでしたか、
ありがとうございます。
ありがたく使わさせていただきます。