TS174

Aitendo商品ページ

パターン追ったかんじではTS119-5と同じピン配か。。。あれ、バックライトの電源が逆か。あぶねえなあ。

ピン番 意味
1 CS
2 RD
3 WR
4 DATA
5 GND
6 VDD
7 NC?IRQかも
8 バックライトのアノード。とりあえず3Vでついた
9 バックライトのカソード

上半分しか点灯しねえなあと思ったら半田が甘いだけだった。

アドレス配置もにたようなもの。桁が多いので下記のように。

#include <HT1621.h>

HT1621 ht(10,9,8,7); // data,wr,rd,cs

int l_map[10]={0b1111,0b0000,0b1011,0b1001,0b0100,0b1101,0b1111,0b1000,0b1111,0b1101};
int r_map[10]={0b1010,0b1010,0b1100,0b1110,0b1110,0b0110,0b0110,0b1010,0b1110,0b1110};

bool tick=true;

void clear_lcd()
{
  for(int i=0;i<32;i++){ 
  ht.writeMem(i,  0b00000000);
  }
}



void write_num(int i, int num)
{
  int index=2*i+2;
  
  ht.writeMem(index,    l_map[num]); 
  if (index==2 && tick==true){
  ht.writeMem(index+1,  r_map[num]|0b0001);        
  }else{
  ht.writeMem(index+1,  r_map[num]);        
  }
}

void write_date(int m, int s, int ss)
{
  write_num( 0, m/100);
  write_num( 1, m/10);
  write_num( 2, m-(m/10*10));
  write_num( 3, s/10);
  write_num( 4, s-(s/10*10));
  write_num( 5, ss/10);
  write_num( 6, ss-(ss/10*10));
}

void setup()
{
  ht.begin();
  ht.sendCommand(HT1621::SYS_EN );
  ht.sendCommand(HT1621::LCD_ON );

  clear_lcd();
  tick=true;
   write_date(123,45,67);  // 123:45:67
}

void loop()
{
}