현재 위치
  1. 게시판
  2. Q&A

Q&A

Q&A

상품 게시판 상세
16A8R8T 에서 softwareserial 함수 사용으로 CAS저울과 통신문의(II)
ILOGICS (ip:) 평점 0점   작성일 2022-04-19 추천 추천하기 조회수 157

안녕하세요 (주) 아이로직스 이승규입니다.

 

//  시리얼 통신을 통해 문자열을 입력받아 출력하기

void setup() {

  // put your setup code here, to run once:

  Serial.begin(9600);

  Serial1.begin(9600);

}


char ch;    //  전역 변수

String str; //  전역 변수


void loop() {

  // put your main code here, to run repeatedly:


  if (Serial1.available() > 0)

  {

    ch = Serial1.read();

    str.concat(ch);   //  문자열을 잇는 함수

    delay(10);


    //  버퍼에 데이터가 없으면 바로 출력한다.

    if (Serial1.available() == 0)

    {

      Serial.println(str);

      str = "";   //  str의 변수의 버퍼를 비운다.

    }

  }

}


위 코드로 한번 작성하여 데이터 받아보시길 부탁드립니다.




[ Original Message ]

* 비회원일 경우 (성함/번호/주문번호) 기입해 주셔야 원활한 상담 가능합니다.

* 기술 문의일 경우 정확한 내용 파악을 위해 전화상으로 안내가 갈 수 있습니다.


-성함:문태용

-연락처:01026104969

-제품명:16A8R8T

-문의 내용:하기내용 학인결과


먼저 친절한 답변 감사드립니다.


1. 실제 배선이 RX, TX선이 올바르게 배선되어 있는지 확인부탁드립니다.

RX-TX ,TX-RX로 크로스배선을 하셔야 올바르게 통신이 됩니다.

   <-- 올바르게 배선되었습니다.

   <-- uno보드 및 컴파일테크놀러지 산업용 아두이노에서는 사용 가능



2. 해당 통신규격에 따라 통신을 하시는지 확인부탁드립니다.

만약 CAS제품이 RS232 단자로 통신하는 제품이면 

16A8R8T제품의 RS232 통신단자에 연결하시면 됩니다. 해당 포트는 다운로드포트 우측에 통신포트라인에 있으며 TX,RX에 연결하시고

SoftwareSerial통신이 아닌 Serial1통신으로 코드를 변경하여 작성하시면 됩니다.


  <--  6E값 찾을 수 없음

  <--  첨부화일 참조



void setup()  {

  Serial.begin(9600);

  Serial1.begin(9600);

}


void loop() {

  if (Serial1.available()) {

    Serial.println(Serial1.read(),HEX);

  }

 }





3. CAS 저울에서 데이터값이 어떤식으로 출력되는지는 알 수 없으나 실제로 값이 나오는지 테스트해주시길 부탁드립니다.

  <--  6E값 찾을 수 없음

  <--  첨부화일 참조


#include <SoftwareSerial.h>

#define rxPin 12

#define txPin 11   //핀만 설정

SoftwareSerial softSerial(rxPin, txPin);

void setup()  {

  softSerial.begin(9600);

  Serial.begin(9600);

}

void loop() {

  if (softSerial.available()) {

    Serial.println(softSerial.read(),HEX);

  }

 }

위와 같이 작성하여 실제적으로 데이터가 어떤식으로 출력되는지 출력받고는 있는건지 확인부탁드립니다.

만약 위 프로그램을 실행 후 n값인 6E값이 있는지 확인 부탁드립니다.



첨부파일
비밀번호 삭제하려면 비밀번호를 입력하세요.
댓글 수정

비밀번호 :

/ byte

비밀번호 : 확인 취소