这次这个屏幕其实买来已经很久了,是之前在香港淘的。其实也就是港铁上很常见的那种显示新闻、天气和广告等信息的LED屏幕。买的时候就随手查了下发现网上有资料,就买了,回来发现那个资料里根本没有引脚定义,于是就没继续动。今天有空找出来研究了一下,发现其实资料是有的,只是我之前没有仔细找。于是就点了一下咯。这个屏幕效果还是不错的。一共买了两块,做实验的这块是残缺品(买的时候没有注意看……),另外一块应该是全好的。

以下是具体信息

基本信息

  • 型号:LUM-115HML300
  • 类型:LED图形点阵
  • 分辨率:48 x 24
  • 灰度:红绿双色无灰度
  • 控制器:ROHM自有
  • 尺寸:192mm x 96mm

驱动信息

引脚定义:

CN1:

  1. RamSelect(AB)
  2. A4
  3. A3
  4. A2
  5. A1
  6. A0
  7. GND
  8. Green
  9. Clock
  10. WriteEnable
  11. Red
  12. AddressEnable
  13. DispEnable

CN3:

  1. GND
  2. VLED
  3. VLED
  4. GNDLED
  5. GNDLED
  6. VDD

驱动代码:

void LED_WriteScreen()
{
  int i, j;
  for (i = 0; i < 24; i ++) {
    if ((i & 0x01) != 0) {LED_A0_HIGH();} else {LED_A0_LOW();}
    if ((i & 0x02) != 0) {LED_A1_HIGH();} else {LED_A1_LOW();}
    if ((i & 0x04) != 0) {LED_A2_HIGH();} else {LED_A2_LOW();}
    if ((i & 0x08) != 0) {LED_A3_HIGH();} else {LED_A3_LOW();}
    if ((i & 0x10) != 0) {LED_A4_HIGH();} else {LED_A4_LOW();}
    for (j = 0; j < 48; j++) {
      LED_CLK_LOW();
      if (dispBuffer_G[i*6 + j/8] & (0x01 << (j % 8))) LED_GR_HIGH(); else LED_GR_LOW();
      if (dispBuffer_R[i*6 + j/8] & (0x01 << (j % 8))) LED_RD_HIGH(); else LED_RD_LOW();
      LED_CLK_HIGH();
    }
    LED_CLK_LOW();
    Delay();
    LED_AE_HIGH();
    Delay();
    LED_WE_HIGH();
    Delay();
    LED_WE_LOW();
    Delay();
    LED_AE_LOW();
    Delay();
  }
}

驱动效果

DSC_0789_DxO_Small.jpg

DSC_0802_DxO_Small.jpg

DSC_0791_DxO_Small.jpg