arduino-cliでイーサネットスケッチを描き込みたい

■ここに実現したいことを箇条書きで書いてください。
arduino-cliでイーサネットスケッチを描き込みたい。

■ここに質問の内容を詳しく書いてください。
arduino-cliでイーサネットスケッチを描き込みたいのですが、
どうしてもうまく書き込めません。
L チカスケッチは問題なく書き込めるのですが、
イーサネット制御のスケッチを描き込もうとしても
うまく書き込めません。
なお、arduinoIDE2.1.0からであれば、書き込むことが出来ます。

■### 発生している問題・エラーメッセージ

pingを打っても帰ってこない。
コンパイルしたipアドレスを反映しない。

該当のソースコード

/*
*/

#include "D:\Arduino\MRK1010\IP_Adress\MAC_IP_Adress.txt"
#include <SPI.h>
#include <Ethernet.h>
#include <Wire.h>

//--------------------------
// macアドレスとIPアドレス設定
byte mac[] = {MAC_Adress};
IPAddress ip(IP_Adress) ;

// コミュニケーションポート定義
EthernetServer server(200);

//--------------------------
// 光量計
uint8_t BH1750adress = 0x23 ; // デバイス固有アドレス
uint8_t CONF_REG = 0x10; // Hレゾリューション、120mS、1lux
byte BUFF[2] ;
//--------------------------

void setup()
{
Ethernet.begin(mac, ip);
server.begin();
//--------------------------
Wire.begin();
Serial.begin(115200);
Wire.beginTransmission(BH1750adress);
Wire.write(0x10); // H-resolution mode設定
Wire.endTransmission(); // I2Cデバイスとの送信を終了
}

void loop()
{
float LUX ; // 光量実測定値

// wait for a new client: EthernetClient client = server.available();

if (client.available() > 0)
{
LUX = READ_LUX() ; // 光素子生データ読み込み
client.print("L:") ;
client.println(LUX) ;
Serial.println(LUX);
}
}

// 光量データ読み込み関数
float READ_LUX(void)
{
uint8_t i ;
float VAL = 0;

Wire.beginTransmission(BH1750adress);
Wire.requestFrom(BH1750adress, 2);
delay(200);

for (i = 0 ; i < 2 ; i++) { BUFF[i] = Wire.read(); } delay(150); Wire.endTransmission(); // I2Cデバイスとの送信を終了 VAL=((BUFF[0]<<8)|BUFF[1]); VAL = VAL/1.2;

return VAL ;
}

//-----------------------------------------
windowsでのコンパイルとアップロード用のバッチファイル
arduino-cli compile --fqbn arduino:samd:mkrwifi1010 ChatServer_test
arduino-cli upload --fqbn arduino:samd:mkrwifi1010 ChatServer_test -p COM3

補足情報(FW/ツールのバージョンなど)

arduinoのボード:MRK WiFi 1010
開発環境 windows11

ここにより詳細な情報を記載してください。

コメントを投稿

0 コメント