わがロボットの譜

千葉工業大学、総合工学研究会所属の者です。とりあえず、二足歩行ロボット作成日誌です。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

avrの変数、ビット数?

PS2PADのプログラムが動かなかったの理由がわかりました。
PS2PADの受信データは、2バイトにわかれているので

unsigned long command = (receive[3]<<8)+receive[4];

と、統合して(receiveはunsigned char型)
switch(command)としていました。

ここでcommandの宣言を「unsigned int」としたら、直りました。
ここまではそうなのか、、、と思っていましたが、実験しているとshortにしても動きます…。

自動でキャストとかしてくれているのでしょうか。
それともたまたま上手くいっているだけなのか…

ちなみにcase 0xfeff:なんかでもshortで反応しています。

ということで、これからはunsigned longは避けてプログラムすることにします。

スポンサーサイト

PageTop

コメント


管理者にだけ表示を許可する
 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。