IchigoJamプログラミング例 読み出した温度が22.5℃未満だったら、パナソニックのエアコン(その2)を、温度25℃/風量2/風向上下2/風向左右自動で暖房運転する例です。 10 R=I2CR(#37,0,0,#700,2) 20 IF PEEK(#700)*16+PEEK(#701)<22*16+8 POKE #700,#12,2,25,2,2,0:R=I2CW(#37,#700,6) 読み出した温度を画面に小数点以下4位まで表示する例です。(但しこの例は、温度0℃以上だけに限定して簡略化してあります。) 30 R=I2CR(#37,0,0,#700,2) 40 ? PEEK(#700);"."; 50 T=PEEK(#701):IF T=1 ?"0"; 60 ? T*625
温度センサーから値を読み出す。1分間隔で温度を計測しており直前の値が読み出される。
読み出した直後にも温度の計測が行われる。
R=I2CR(I2Cアドレス,コマンド送信アドレス,データ長,受信アドレス,データ長)
#700 温度の整数部
#701 温度の小数部 0〜15 1000/16=625 ×625で小数部が10進数表記になる。
10 'オンドセンサー 20 CLS 30 LC0,0 40 R=I2CR(#37,0,0,#700,2) 50 T=PEEK(#700) 60 ?T;"."; 70 T=PEEK(#701) 80 IF T=1 ?"0"; 90 ?T*625; 100 ?"゚C " 110 GOTO 30
#700〜 パラメーターを書き込んで
R=I2CW(I2Cアドレス,コマンド送信アドレス,データ長) で
コマンドを送出
メーカー #11 #12 パナソニック #21 ダイキン #31 #32 三菱
動作 0オフ 1〜4はメーカーによる
温度 18〜30℃
風量 0自動 1〜5メーカーによる
風向上下 0自動 1〜6メーカーによる
風向左右 0自動 1〜5メーカーによる
10 POKE #700,#11,0,27,1,2,0 20 R=I2CW(#37,#700,6)
設定した温度よりも上がったら、冷房運転開始 とか、下がったら暖房運転開始 とかの自動スタートプログラムが組めるかな
LEDの向きはとくにエアコンを狙わなくてもおおよそで反応している。
信号の送出機能が、エアコンのコントロールに特化しているので他の機器のリモコンは不可