사용자 도구

사이트 도구

English

modularfaduino:mega2:index

CFMEGA2

Arduino Mega 호환 CPU모듈입니다. GPIO, 통신, ADC, NTC(온도)등 사용할 수 있도록 설계 되었습니다.

  • CPU모듈은 가장 왼쪽에 위치해야합니다. I/O모듈은 오른쪽으로 결착해주세요.
  • CPU모듈 하나에 최대 16개의 I/O모듈을 연결할 수 있습니다.

시스템 사항

  • MCU : Mega2560
  • 프로그램 메모리 : 256KB
  • SRAM 메모리 : 8KB
  • EEPROM : 4KB

디바이스 사항

  • 전원 전압 : DC 12~24V
  • 전원 용량 선택: 연결된 I/O모듈에서 소비되는 전류량까지 모두 감당할 수 있는 전원용량으로 연결하세요. 연결한 모듈의 총갯수가 8개 이하면 24V, 1A의 SMPS가 적당하고, 총갯수가 8개 이상으면 24V, 2A 의 SMPS를 사용하세요.
  • 통신 : RS232C x 2, RS485 x 1, I2C x 1
  • GPIO : 8개 (PWM - 7개) 5V 입출력
  • INT : 2개 (외부 인터럽 입력, 5V)
  • ADC : 8개 (0~20mA - 4채널, 0~10VDC - 4채널)
  • 사용자 프로그램 LED : 13=LED, 22=RUN, 23=ERROR
  • 온도 : 1개 (NTC, 측정범위 -40~99℃, 오차 +/- 1도)

각 부의 설명

  • QWIIC 란 ? 미국 Sparkfun사에서 판매중인 아두이노 I2C 주변장치 제품군입니다. 참고 링크
  • QWIIC 사용시 주의사항 : I2C는 5V레벨의 소신호 통신방식이므로, 신호선이 제어반 바깥에 있는 장치와 연결할 수 없습니다. 최대 20cm안에서 사용하세요.

GPIO에 대하여

GPIO포트는 5V 입출력 또는 PWM출력용으로 쓸 수 있는 포트입니다. 실제로 일반 아두이노에 있는 I/O단자와 동일합니다. 단, 내부적으로 써지차단용 TVS다이오드가 부착되어 있습니다. 참고 자료

전원 입력

DC jack과 터미널 블록중 한곳에 DC12~24V 사이의 전압을 넣어주세요. 연결한 총 I/O모듈 갯수에 따라 전원의 용량을 결정하세요. 5개 미만이라면 24V 1A 가 적당합니다. 그 이상이라면 더 큰 용량을 선택하세요.

RS485 (채널3)에 대하여

채널3에 할당되어 있는 RS485포트는 송수신 방향 자동 전환을 해주는 MAX13487칩을 채용한 포트입니다. 따라서 유저가 직접 송신/수신 처리를 해줄 필요가 없습니다. 참고 자료

팬홀 단자대 추천

  • 팬홀이란? 삽입형 터미널 블록에 전선을 쉽게 결착할 수 있도록 도와주는 부품입니다.
  • 본 제품 검은색 터미널블록에 사용하기 적당한 펜홀단자 품명과 구매처입니다. (품명:CE007512) 구매처 링크

예제 프로그램

- STATUS LED 점멸 : STATUS LED를 깜빡이게 하는 프로그램입니다.

const int StatusLED = 13;
void setup() {
    pinMode(StatusLED, OUTPUT);
}
void loop() {
    digitalWrite(StatusLED, HIGH);
    delay(1000);
    digitalWrite(StatusLED, LOW);
    delay(1000);
} 

- ADC 아날로그 입력 : 전류 / 전압을 입력 받는 프로그램 입니다.

void setup() {
    Serial.begin(9600);
}
void loop() {
 int ADI_mA  = analogRead(A0);
 int ADI_DCV = analogRead(A5);
 
  Serial.print("  ADC_mA  = ");  Serial.print(ADI_mA) ; Serial.print("\r\n" );   
  Serial.print("  ADC_DCV  = "); Serial.print(ADI_DCV); Serial.print("\r\n" );   
  delay(200);
} 

- NTC 온도 : NTC온도 측정 프로그램입니다. (측정 범위 -40 ~ 99℃ / 오차 +/-1도)

  • "CFMEGA.h" 라이브러리 등록후 사용
  • ntcRead_a4() 명령으로 온도값 읽기
  • NTC센서 별매 구매페이지 링크
 int16_t ntcRead_a4(void);
#include "CFMEGA.h"
void setup() {
    Serial.begin(9600);
}
void loop() {
 int NTC_a4 = ntcRead_a4();
 Serial.print(" TEMP  = ");  Serial.print(NTC_a4) ; Serial.print("\r\n" );  
 delay(1000);
} 

- RS232 통신 : 채널 1번(Tx1, Rx1)의 Eco 통신 프로그램 입니다.

void setup() {
    Serial.begin(9600);
    Serial1.begin(9600);
}
void loop() {
 if (Serial1.available() > 0) {
     char rx_Byte = Serial1.read();
     Serial.print("I received: ");
     Serial.print(rx_Byte);
 
     Serial1.print(rx_Byte);
  }
} 

기술 지원 정책

고객 여러분께서 개발중이신 소스 코드는 기술지원 대상이 아닙니다. 이점 양해바랍니다. 제품이 이상이 있다고 판단되시는 경우, 제품 자체를 저희 회사로 보내주시기 바랍니다. 저희가 만든 소스와 지그로 테스트 한뒤 이상 유무를 판단해서 이상이 발견된 경우 조치해드리고 있습니다.

Modular FADUINO

modularfaduino/mega2/index.txt · 마지막으로 수정됨: 2024/09/10 03:14 저자 Comfile Technology