タッチ・マウス・プログラムの不具合原因が見つかった [タッチ・スイッチ]
(2014.01.12)
タッチ・マウス・プログラムにUSBインターフェース機能(Device-HID-Mouse相当)を組み込んだのですが、マウスの動きがギクシャクして、正しく動作していないことが判りました。
”CTMUの計測結果を0にするとマウスがくるくる回りだす”ことを手がかりに、USBインターフェース機能に影響を与えている処理を絞り込んで行き、以下の処理にたどり着きました。
CTMUの計測結果を0にするとaverageDataが0になってctmu_log関数が呼び出されなくなります。そのctmu_log関数の呼び出しをやめると、CTMUの計測結果を0にしなくても不具合は出なくなるのです。どうやら不具合の本丸を見つけたようです。
そして・・・
UINT16 ctmu_log0[MAX_LOG_COUNT+2] @0x200;
UINT16 ctmu_log1[MAX_LOG_COUNT+2] @0x268;
UINT16 ctmu_log2[MAX_LOG_COUNT+2] @0x300;
UINT16 ctmu_log3[MAX_LOG_COUNT+2] @0x368;
UINT16 ctmu_log4[MAX_LOG_COUNT+2] @0x400; <== これ!
UINT16 ctmu_log5[MAX_LOG_COUNT+2] @0x468;
UINT16 ctmu_log6[MAX_LOG_COUNT+2] @0x600;
UINT16 ctmu_log7[MAX_LOG_COUNT+2] @0x668;
”Buffer Descriptor Table”を0x400にアサインしたときにctmu_log4とctmu_log5のアドレスを移す必要が有る事を失念していたのです。
0x400にアサインした”Buffer Descriptor Table”に何回も振り回されましたが、ようやく(本当にようやく!)タッチ・マウス・プログラムにUSBインターフェース機能を組み込むことが出来ました。
ヤレヤレ
------------------------------------
XC8のリンカがwarningで教えてくれれば、こんな苦労はしなくて済むのに・・・
ブツブツ
------------------------------------
タッチ・マウス・プログラムにUSBインターフェース機能(Device-HID-Mouse相当)を組み込んだのですが、マウスの動きがギクシャクして、正しく動作していないことが判りました。
”CTMUの計測結果を0にするとマウスがくるくる回りだす”ことを手がかりに、USBインターフェース機能に影響を与えている処理を絞り込んで行き、以下の処理にたどり着きました。
if( averageData != 0 ) { ctmu_average[num] = averageData; ctmu_log( num ); <== ここをコメント・アウトすれば不具合は無くなる update_ctmu_average = FLAG_ON; }
CTMUの計測結果を0にするとaverageDataが0になってctmu_log関数が呼び出されなくなります。そのctmu_log関数の呼び出しをやめると、CTMUの計測結果を0にしなくても不具合は出なくなるのです。どうやら不具合の本丸を見つけたようです。
そして・・・
UINT16 ctmu_log0[MAX_LOG_COUNT+2] @0x200;
UINT16 ctmu_log1[MAX_LOG_COUNT+2] @0x268;
UINT16 ctmu_log2[MAX_LOG_COUNT+2] @0x300;
UINT16 ctmu_log3[MAX_LOG_COUNT+2] @0x368;
UINT16 ctmu_log4[MAX_LOG_COUNT+2] @0x400; <== これ!
UINT16 ctmu_log5[MAX_LOG_COUNT+2] @0x468;
UINT16 ctmu_log6[MAX_LOG_COUNT+2] @0x600;
UINT16 ctmu_log7[MAX_LOG_COUNT+2] @0x668;
”Buffer Descriptor Table”を0x400にアサインしたときにctmu_log4とctmu_log5のアドレスを移す必要が有る事を失念していたのです。
0x400にアサインした”Buffer Descriptor Table”に何回も振り回されましたが、ようやく(本当にようやく!)タッチ・マウス・プログラムにUSBインターフェース機能を組み込むことが出来ました。
ヤレヤレ
------------------------------------
XC8のリンカがwarningで教えてくれれば、こんな苦労はしなくて済むのに・・・
ブツブツ
------------------------------------
|
|
|
コメント 0