arduinoからPCにアナログセンサーを読みたい。
Arduinoプログラムは次のとおりです。
void setup() {
// initialize serial communications at 9600 bps:
Serial.begin(9600);
}
void loop() {
char request[1];
if(Serial.available()){
request[0]=Serial.read();
Serial.print(analogRead(atoi(request)));
Serial.print("\n\r");
};
delay(2);
}
と私のビジュアルC++
#include <windows.h>
#include "stdafx.h"
#include "SerialClass.h"
char buffer[20];
char buf0[200];
int _tmain(int argc, _TCHAR* argv[])
{
Serial oSerial("COM6:");
while(1){
sprintf_s(buffer,"0");
oSerial.WriteData(buffer,1);
Sleep(1000);
oSerial.ReadData(buf0,4);
printf("Sensor 0: %s \n",buf0);
Sleep(1000); }
}
プログラムの結果が安定していないので、input0に5Vを入れたので、1023でなければなりません。
sensor 0 :
sensor 0 : 10230
sensor 0:
100
sensor 0: 23
0
sensor 0: 10230
プログラムが機能しているシリアルモニターを使ってarduinoを試してみました。問題はC++プログラムにある可能性があります
誰かアイデアがありますか?