Get Adobe Flash player

DLR3416

Siemens tillverkar en mycket trevlig liten alfanumerisk, intelligent display. Den finns i både rött och grönt och även i en högintensiv variant. Den jag testar här är dock den ”normala” röda. Att den är intelligent betyder att den innehåller egen logik för att multiplexa tecknen, ett ram-minne att lagra tecknen i samt en färdig teckenkarta. Även svenska tecken finns tillgängliga. Flera displayer kan kopplas ihop till det antal tecken man vill ha. Det finns även ingångar för att helt släcka displayen och för att styra en cursor. Se gärna databladet för mer information.

Programmet visar ett väldigt bökigt sätt att skriva till displayen, men för teständamål så duger det bra. Genom att göra på det här sättet så kan dock vilka pinnar som helst användas.

Om man tittar på displayen så ser man att den har 22 pinnar, men inte alla måste anslutas. För att kunna köra exemplet behövs bara 13 anlutningar. 7 för data, 2 för adress, 2 för spänningsmatning, en för skrivning, en för blanking. För att det ska se bra ut har jag lagt till en koppling till Arduinons reset. Tack vare detta så släcks displayen när Arduinon resettas.

Börja med att koppla +5V till pinne 6 och GND till pinne 12 på displayen. Sen kopplas utgång 2 – 8 till pinne 16 – 22 på displayen. Därefter är det dags för de två adresspinnarna, koppla Arduinons pinnar 10 & 11 till displayens pinne 7 & 8. Pinne 9 är lätt i och med att den ska kopplas till pinne 9. :-)

Pinne 5 på displayen ansluts till reset på Arduinon och sist men inte minst ansluts pinne 14 på displayen till pinne 12 på Arduinon. Nu är alla kopplingar mellan Arduinon och displayen klara. Sen behöver man bara koppla pinne 3 & 4 på displayen till GND så ska allt fungera.

Den här beskrivningen kanske inte är så lätt att följa, använd isf tabellen nedan för att se hur det ska kopplas.

Om det inte fungerar så är det antagligen något som är felkopplat eller glappt. Jag hade lite problem med att vissa av kopplingssladdarna inte var helt ok utan glappade lite, kan vara värt att kolla på.

Så här ser iaf sketchen ut och den kan laddas ned här: dlr3416.pde

/*
 *
 * kod för att styra en DLR3416-display från Siemens
 */
 
byte  a[2];      // Adresspinnar
byte  d[7];      // Datapinnar
byte  bl;        // Blankingpinne
byte  wr;        // Writepinne   
byte  i;         // Temporär variabel
 
void setup()
{
 
  wr=9;                  //Write = pin 9 på Arduinon
  pinMode(wr,OUTPUT);
  digitalWrite(wr,1);
 
  bl=12;                  // Blanking = Pin 12 på Arduinon
  pinMode(bl,OUTPUT);    
  digitalWrite(bl,1);
 
  a[0]=10;                // Adresspinnarna, 10 och 11 på Arduinon
  a[1]=11;
  pinMode(a[0],OUTPUT);
  pinMode(a[1],OUTPUT);
 
  d[0]=2;                  // Datapinnar från pin 2 - pin 8 på Arduinon
  d[1]=3;
  d[2]=4;
  d[3]=5;
  d[4]=6;
  d[5]=7;
  d[6]=8;
 
  for(i=0;i<7;i++) {
    pinMode(d[i],OUTPUT);
  }
}
 
void loop()
{
  digitalWrite(a[0],1);    //adress =0
  digitalWrite(a[1],1);
 
  digitalWrite(d[0],0);  // T
  digitalWrite(d[1],0); 
  digitalWrite(d[2],1); 
  digitalWrite(d[3],0);
  digitalWrite(d[4],1); 
  digitalWrite(d[5],0); 
  digitalWrite(d[6],1); 
 
  wrt();
  delay(500);
 
  digitalWrite(a[0],0);
  digitalWrite(a[1],1);
 
  digitalWrite(d[0],1);     // e
  digitalWrite(d[1],0); 
  digitalWrite(d[2],1); 
  digitalWrite(d[3],0); 
  digitalWrite(d[4],0); 
  digitalWrite(d[5],1); 
  digitalWrite(d[6],1); 
 
  wrt();
  delay(500);
 
  digitalWrite(a[0],1);
  digitalWrite(a[1],0);
 
  digitalWrite(d[0],1);    // s
  digitalWrite(d[1],1); 
  digitalWrite(d[2],0); 
  digitalWrite(d[3],0); 
  digitalWrite(d[4],1); 
  digitalWrite(d[5],1); 
  digitalWrite(d[6],1); 
 
  wrt();
  delay(500);
 
  digitalWrite(a[0],0);
  digitalWrite(a[1],0);
 
  digitalWrite(d[0],0);    // t
  digitalWrite(d[1],0); 
  digitalWrite(d[2],1); 
  digitalWrite(d[3],0); 
  digitalWrite(d[4],1); 
  digitalWrite(d[5],1); 
  digitalWrite(d[6],1); 
 
  wrt();
  delay(500); 
 
  for(i=0;i<5;i++) {
    digitalWrite(bl,0);
    delay(500);
    digitalWrite(bl,1);
    delay(500);
  }
 
  digitalWrite(a[0],1);
  digitalWrite(a[1],1);
 
  digitalWrite(d[0],0);    //' '
  digitalWrite(d[1],0); 
  digitalWrite(d[2],0); 
  digitalWrite(d[3],0); 
  digitalWrite(d[4],0); 
  digitalWrite(d[5],1); 
  digitalWrite(d[6],0); 
 
  wrt();
  delay(500);  
 
  digitalWrite(a[0],0);   
  digitalWrite(a[1],1);
 
  digitalWrite(d[0],0);  //' '
  digitalWrite(d[1],0); 
  digitalWrite(d[2],0); 
  digitalWrite(d[3],0); 
  digitalWrite(d[4],0); 
  digitalWrite(d[5],1); 
  digitalWrite(d[6],0); 
 
  wrt();
  delay(500);  
 
  digitalWrite(a[0],1);
  digitalWrite(a[1],0);
 
  digitalWrite(d[0],0);      // ' '
  digitalWrite(d[1],0); 
  digitalWrite(d[2],0); 
  digitalWrite(d[3],0); 
  digitalWrite(d[4],0); 
  digitalWrite(d[5],1); 
  digitalWrite(d[6],0); 
 
  wrt();
  delay(500);  
 
  digitalWrite(a[0],0);
  digitalWrite(a[1],0);
 
  digitalWrite(d[0],0);      // ' '
  digitalWrite(d[1],0); 
  digitalWrite(d[2],0); 
  digitalWrite(d[3],0); 
  digitalWrite(d[4],0); 
  digitalWrite(d[5],1); 
  digitalWrite(d[6],0); 
 
  wrt();
  delay(5000);  
 
}
 
void wrt()
{
  digitalWrite(wr,0);
  delay(5);
  digitalWrite(wr,1);
}

5 comments on “DLR3416

  1. Pingback: Random Find: The Avago/HP HDLG-2416 | Milwaukee Makerspace

  2. Funder on said:

    Hi man! nice work! i was searching 4 this ….. i have two of this vfds .. there is a way to connect 2 of them in series to form a larger display? thank you ;)

    • gorgus on said:

      Download the datasheet from here: http://gorgusgfx.se/wp-content/uploads/2012/08/dlo3416.pdf

      At the bottom of page 5 you have a schematic that shows how to connect 4 of the displays. For an even simpler way you can use two microcontroller pins connected to each displays CE to exactly tell what display is being written to.

      If you are short on pins then use the normal CE on one display and the inverted CE on the other display connected to one microcontroller pin. This I haven’t tested but should work. Set the microcontroller pin to HIGH for writing to one display and to LOW for writing to the other display.

Kommentera

E-postadressen publiceras inte. Obligatoriska fält är märkta *

*

* Copy This Password *

* Type Or Paste Password Here *

1 749Spamkommentarer blockerade hittillsSpam Free Wordpress

Följande HTML-taggar och attribut är tillåtna: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">

Översätt sidan
EnglishFrenchGermanItalianPortugueseRussianSpanish
Live data
Besökskarta
Login-box
  • Login
    Login