사용자 도구

사이트 도구

English

faduino:clcd와_연결:index

CLCD와 연결

FA-DUINO 18TA 용 소스

CLCD는 FA-DUINO와 연결할 수 있는 캐릭터 LCD 모듈입니다.

아래의 소스는 FA-DUINO-18TA용 으로 보드설정을 Arduino UNO 로 해야 동작됩니다.

void setup() 
{
   Serial.begin(115200); //채널0, 보레이트 115200 설정 (채널0는 업로드포트와 겸용)
   clear(); //전체 화면을 지움
   delay(20);
   locate(1,0);
   Serial.print("=== CLCD_TEST ===");delay(100);
   locate(2,1);
   Serial.print(" FA-DUINO-18TA "); delay(100);
}
int cnt = 0;
void loop()
{
    cnt++;
    delay(1000);
    locate(4,3);
    Serial.print("COUNTER:"); delay(100);
    locate(13,3);
    Serial.print(cnt, DEC); delay(100);
 
}
 
//전체 화면을 지웁니다.
 
void clear()
{ 
   Serial.write(0x1b); Serial.write(0x43); }
 
//표시될 문자의 x축과 y축의 위치를 설정합니다
 
void locate(unsigned char x, unsigned char y)
{ 
   Serial.write(0x1b);Serial.write(0x4C);Serial.write(x); Serial.write(y); 
} 

FA-DUINO-12RA, 24RA 용 소스

아래의 소스는 FA-DUINO-12RA,-24RA용 으로 보드설정을 Arduino Mega 로 해야 동작됩니다.

RS232를 이용해서 CLCD와 연결합니다. 다음 결선도를 보고 연결하십시오. 이때 CLCD모듈의 딥스위치를 모두 ON 위치로 하여, 보레이트를 115200 으로 맞추어주 십시오.

void setup() 
{
   Serial1.begin(115200); //채널1 보레이트 115200 설정
   clear(); //전체 화면을 지움
   delay(20);
   locate(0,0);
   Serial1.print("=== CLCD_TEST ===");delay(100);
   locate(2,1);
   Serial1.print(" FA-DUINO-12RA "); delay(100);
}
 
void loop()
{
}
 
//전체 화면을 지웁니다.
 
void clear()
{ 
   Serial1.write(0x1b); Serial1.write(0x43); }
 
//표시될 문자의 x축과 y축의 위치를 설정합니다
 
void locate(unsigned char x, unsigned char y)
{ 
   Serial1.write(0x1b);Serial1.write(0x4C);Serial1.write(x); Serial1.write(y); 
} 

FA-DUINO-32TA 용 소스

FA-DUINO-32TA는 CLCD전용 연결포트인 I2C포트가 있습니다. 다음 결선도를 보고 연결하십시오. 이때 CLCD모듈의 딥스위치를 모두 OFF 위치로 하여, 슬레이브 어드레스를 0으로 맞추어주 십시오.

다음 소스로 CLCD에 문자를 표시할 수 있습니다.

#include    <Wire.h>
#define     ADDR_CLCD             0
 
unsigned char   locate_x;
unsigned char   locate_y;
 
void clcd_clear             ();
void clcd_cursor_visible    (bool enable);
void clcd_backLight_enable  (bool enable);
void clcd_print             (String value);
void clcd_locate            (unsigned char x, unsigned char y);
 
void setup() {
  Wire.begin();                     // 마스터모드로 동작
  Wire.setClock(500000);            // 500 kHz.
  clcd_clear();                     // 화면 전채를 지움
  clcd_cursor_visible(false);       // 커서 설정
  clcd_backLight_enable(true);      // 백라이트 설정
  clcd_locate(0,4);                 // 문자 표시 위치
  clcd_print("COMFILE_TECH");       // 문자 표시
  clcd_locate(2,5);
  clcd_print("0123456789");
}
 
void loop() {
}
 
void clcd_clear(){
  unsigned char tmp_buf[] = {0x1b,0x43};
  Wire.beginTransmission(ADDR_CLCD);
  Wire.write(tmp_buf,2);
  Wire.endTransmission();
  delay(200);
}
 
void clcd_cursor_visible(bool enable){
  unsigned char tmp_buf[] = {0x1b,enable == true ? 0x53 : 0x73};
  Wire.beginTransmission(ADDR_CLCD);
  Wire.write(tmp_buf,2);
  Wire.endTransmission();
}
void clcd_backLight_enable(bool enable){
  unsigned char tmp_buf[] = {0x1b,enable == true ? 0x42 : 0x62};
  Wire.beginTransmission(ADDR_CLCD);
  Wire.write(tmp_buf,2);
  Wire.endTransmission();
}
 
void clcd_locate(unsigned char x, unsigned char y){
  locate_x = x;
  locate_y = y;
}
 
void clcd_print(String value){
  unsigned char tmp_buf[] = {0x1b,0x4b,locate_y,locate_x,locate_y,locate_x};
  Wire.beginTransmission(ADDR_CLCD);
  Wire.write(tmp_buf,6);
  Wire.write(value.c_str());
  Wire.write(0);
  Wire.endTransmission();
}

상위 페이지로 이동

faduino/clcd와_연결/index.txt · 마지막으로 수정됨: 2020/09/01 15:42 저자 Comfile Technology