int getHadc (u8 adcId, u8 adcCh)
adcId : ADC 모듈의 ID (0 부터 9 사이의 값) |
adcCh : 읽어올 채널 (1 부터 4 사이의 값) |
getHadc 는 RS-HADIN4 를 위한 함수입니다. adcId 는 AD 입력모듈 전면부에 있는 ID 라고 적힌 로터리스위치를 뜻합니다. AD 입력모듈에는 4 개의 입력채널이 있으며 이중 측정하고자 하는 채널을 adcCh 에 써줍니다. ID 번호가 틀린경우, 혹은 모듈과 통신중 에러가 발생한 경우에는 –1 을 리턴합니다.
2 번 DIP 스위치 | 출력값 | 예외의 값 |
---|---|---|
ON ( 0 ~ 10V ) | 0 부터 100,000 사이의 값 | 입력 open 시 3100~ 3200 사이값 (10 진수). 실제로도 3100~3200 사이 값이 나올수 있으므로,결과적으로 이 모드에선 입력오픈체크가 불가능. |
OFF (1 ~ 5V ) | 0 부터 100,000 사이의 값 | 0.8V 미만의 값일경우 111,111 (10 진수) 5.2V 이상의 값일 경우 555,555 (10 진수) 입력 open 시 111,111 (10 진수) |
RS-HADIN4 모델의 경우 채널당 240 밀리초, 4 개 채널을 모두 샘플링하는데 걸리는 시간은 960 밀리초 입니다.
RS-HADIN4 는 파워온후 약 1 초뒤에 사용해야 합니다.
#include "moacon500.h" void cmain(void) { int i; short j; clcdI2cInit(0); // 슬레이브 어드레스는 0 으로 합니다. clcdPower(1); // lcd 의 Power 를 On delay(100); // clcd 기동시간 대기 clcdCls(); clcdCsr(0); delay(900); // ADC 모듈 최초 샘플링시간 대기 comPower(1); // RS232 파워를 On 한뒤 여기서 5V 를 공급받습니다. while(1) { i = getHadc(2,1); clcdPrint(0,0,"ADC:%06d",i); delay(100); } }