c#과 아두이노를 연동하고 있습니다. 정확히는 지문인식모듈과 C#을 연동하는중입니다
질문드리자면...
일단 C#의 텍스트박스에 숫자를 입력하면 시리얼통신으로 아두이노로 텍스트박스의 숫자가 전송되고
아두이노는 입력받은 값을 바탕으로 아두이노 코드 로직을 돌게되는 구조입니다... 그런데 값을 받아오고
그다음 구문으로 넘어가질 않습니다... 사진을 첨부하겠습니다. 답변 간절히 기다립니다...
WhiteAT 님에게 달린 댓글
네... 아두이노에서 입력을 보내는건 잘되는데요 c# 텍스트박스에 값을쓰고 전송하면 루프에서 빠져나오질 않습니다.
아두이노 코드를 올려 주셔서 아두이노 쪽에서 안되는 걸로 이해 했습니다.^^
말씀해 주신 루프는 arduinoPort.Write() 함수를 말씀해 주시는 것이고, 그 함수를 안 빠져나온다는 말씀이신거죠?
C# 에서 Write 를 안 빠져 나가는 것은 아두이노 코드와는 상관 없습니다.
컴퓨테어 COM장치에 문제가 없다면 아두이노에서 받던 안받던 간에 데이터는 전송됩니다.
디버깅 모드로 디버깅해 보시고,
fingerindex.Text 대신 "123" 라는 데이터를 직접 보내보시길 바랍니다.
안녕하세요
화이트앳입니다.
보내주신 코드 확인해 보았는데 잘 동작합니다.
보레이트, 케이블 연결 상태 등 설정을 확인해 보셔야 할듯 합니다.
(결과물 함께 올려 드립니다.)
void setup() {
Serial.begin(115200);
}
void loop() {
Serial.println("Type ID");
uint8_t id=0;
while(true)
{
while(!Serial.available());
char c= Serial.read();
if(!isdigit(c)) break;
id *=10;
id +=c-'0';
}
if(id>0)
{
Serial.println("MY ID #");
Serial.println(id);
}
else
{
// Serial.println("BAD ID");
}
}