Kontrol Kartı Led Tabela Panel

Arduino ile P10 Led Panel Çalıştırmak Led Tabela

Merhabalar, bu yazımızda sizlere Arduino ve P10 Led Panel‘in nasıl çalıştırma mantığını anlatacağız. Konu içerisinde Tek Yazı,Çift Yazı ve Parlaklık kontrolü gibi bir çok özelliklik vardır.

Özellikleri:

  • 320 × 16 piksele kadar sürebilir (basamağa bağlı 10 Panel)
  • İki satırlı ekranı destekler, yani bir panel ikiye bölünmüştür.
  • Dinamik ekran yenilemeyi destekler. Panellerde dinamik içeriği görüntülemek için programlaya bilirsiniz.
  • Farklı kaydırma hızlarını destekler.
  • Statik ve kayan metin modu. Çalışma zamanında birinden diğerine geçebilir.
  • Şu anda yalnızca metin tabanlı içeriği destekliyor.
  • 256 adım Parlaklık kontrolü.

Dosya: Arduino ve P10 Led Panel Klavuzu

Kurulum:

  • LedP10 arşivini makinenizdeki herhangi bir dizinde açın.
  • Benioku dosyasını yükleyin.
  • LedP10 klasörünü arduino kurulumunuzun / Arduino / kütüphanelerine kopyalayın.
  • Arduino IDE’yi açın. (LedP10 kütüphanesini kurduktan sonra yeniden açmanız gerekir).
  • Arduino IDE’de, Dosya> Örnekler> LedP10
  • Kütüphanemizin kullanımını gösteren birkaç örnek program bulacaksınız.
  • Bu örnekleri istediğiniz şekilde değiştirerek kendi projenizi oluşturun.

Kodları Çalıştırmak için Önerilen Kablolama:

P10 Led Panel ve Arduino

 


 

Örnek -1: Dinamik İçerikli Statik Ekran

/*
 LedP10 Example Program
 Reads the value from ADC Channel A0 and Display on P10
 */
#include "TimerOne.h"
#include "SPI.h"
#include "LedP10.h"
 
LedP10 myled;
void setup()
{
     myled.init(3,4,8,9,1);
     /*
      P10 Select Line A - Arduino Pin 3
      P10 Select Line B - Arduino Pin 4
      P10 Store Line    - Arduino Pin 8
      P10 OE Line       - Arduino Pin 9
      No. of Panels     - 1 (Can be up to 10)
     */
}
void loop()
{
      int sensorValue = analogRead(A0);
      // Display sensorValue statically in single line with font 0
      myled.showmsg_single_static(sensorValue,0);
      delay(500);
}

Örnek 2 – Dinamik içerikli Statik Ekran

/*
 * This example displays an integer counter value.
 * showmsg_single_static function takes two arguments
 * first argument can be an interger value or a pointer to character string or a string in double quotes.
 * second argument is to select font, for which rwo values i.e. 0 and 1 are supported.
 */

#include "TimerOne.h"
#include "SPI.h"
#include "ledP10.h"
 
int num1=0;
LedP10 myled;

void setup() 
{
    myled.init(3,4,8,9,1);
      /*
      P10 Select Line A - Arduino Pin 3
      P10 Select Line B - Arduino Pin 4
      P10 Store Line    - Arduino Pin 8
      P10 OE Line       - Arduino Pin 9
      No. of Panels     - 1 (Can be up to 10)
      */
}
void loop() 
{
    myled.showmsg_single_static(num1,0);
    num1+=1;
    delay(500);
}

Örnek 3 – Çift Hat Statik Ekran

/*To display two counters of height 8 pixels.
function showmsg_double_static takes three arguments, first two can be either pointer to string or integer independently. Third argument is to select font for which only one value is supported currently i.e. 0.*/

#include "TimerOne.h"
#include "SPI.h"
#include "ledP10.h"
int num1=0,num2=1;
LedP10 myled;

void setup() 
{
      myled.init(3,4,8,9,1);
      /*
      P10 Select Line A - Arduino Pin 3
      P10 Select Line B - Arduino Pin 4
      P10 Store Line    - Arduino Pin 8
      P10 OE Line       - Arduino Pin 9
      No. of Panels     - 1 (Can be up to 10)
      */
} 
void loop() 
{ 
      myled.showmsg_double_static(num1,num2,0); 
      num1+=1; 
      num2+=2; 
      delay(500); 
}

Örnek 4 – Tek Satır Ve Çift Satır Kaydırma Metni

/*This example illustrates two user funcions of LedP10 library

First function-showmsg_single_scroll is for scroling of single message on P10 panel with 4 arguments which are message, no. of times of message scrolling, speed and font.

for message, pointer to a character string can be passed. For continuously running the message, INF can be passed in second argument, speed can be in range of 0-30, and font can be 0 or 1 as two type of fonts are currently supported for full screen messages. 


For second function-showmsg_double_scroll, there would be 7 arguments, 2 for messages, two for no. of times of message scrolling, two for speed, and last one for font. 

Specification being same as for single scrolling function, except only one font id provided for double scrolling and it's value should be 0.*/
 
#include "TimerOne.h"
#include  "SPI.h"
#include  "ledP10.h"

LedP10 myled;

void setup() 
{
   myled.init(3,4,8,9,5);
       /*
      P10 Select Line A - Arduino Pin 3
      P10 Select Line B - Arduino Pin 4
      P10 Store Line    - Arduino Pin 8
      P10 OE Line       - Arduino Pin 9
      No. of Panels     - 5 (Can be up to 10)
      */

 
   myled.showmsg_single_scroll("this is single led test",2,3,0);
   delay(6000);
   myled.showmsg_double_scroll("this is double led test1","this is double led test2",10,INF,3,1,0); 
}

void loop() 
{
 
}

Örnek 5 – Parlaklık Kontrolü

/*This example is to illustrate the use of the functon <setbrightness(uint8_t brightness)>, this function takes one argument of type uint8_t, it's value can be from 0 to 255, 255 being highest brightness and 0 is lowest.

this function can be called anytime after or before calling any other function of LedP10 library. 

In this example brightness reduces when counter 'num1' reaches value of 50.
*/

#include "TimerOne.h"
#include "SPI.h"
#include "ledP10.h"
int num1=0;
LedP10 myled;

void setup() 
{
    myled.init(3,4,8,9 ,1);
}
void loop() 
{
   if(num1==50)
   {
      myled.setbrightness(50);
   }
   myled.showmsg_single_static(num1,0);
   num1+=1;
   delay(500);
}

http://www.electroons.com/blog/ledp10-arduino-library-for-p10-led-display-panels/

Düşüncelerini Paylaş?