نمایش نتایج: از 1 به 5 از 5
Like Tree4 لایک
  • 2 Post By magmagmary
  • 1 Post By magmagmary
  • 1 Post By dogdoor313

موضوع: ماژول صفحه نمایش ماتریسی 16 * 16 تک رنگ

  1. #1
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,024

    ماژول صفحه نمایش ماتریسی 16 * 16 تک رنگ

    ماژول صفحه نمایش ماتریسی 16 * 16 تک رنگ

    00100-071.jpg

    نمونه کد :

    کد:
    /*
      * Show messages on an 8x8 led matrix,
      * scrolling from right to left.
      *
      * Uses FrequencyTimer2 library to
      * constantly run an interrupt routine
      * at a specified frequency. This
      * refreshes the display without the
      * main loop having to do anything.
      *
      */
    
    
    #include <FrequencyTimer2.h>
    
    
    #define SPACE { \
         {0, 0, 0, 0, 0, 0, 0, 0},  \
         {0, 0, 0, 0, 0, 0, 0, 0}, \
         {0, 0, 0, 0, 0, 0, 0, 0}, \
         {0, 0, 0, 0, 0, 0, 0, 0}, \
         {0, 0, 0, 0, 0, 0, 0, 0}, \
         {0, 0, 0, 0, 0, 0, 0, 0}, \
         {0, 0, 0, 0, 0, 0, 0, 0}, \
         {0, 0, 0, 0, 0, 0, 0, 0} \
    }
    
    
    #define H { \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 1, 1, 1, 1, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}  \
    }
    
    
    #define E  { \
         {0, 1, 1, 1, 1, 1, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 1, 1, 1, 1, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 1, 1, 1, 1, 1, 0}  \
    }
    
    
    #define L { \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 0, 0}, \
         {0, 1, 1, 1, 1, 1, 1, 0}  \
    }
    
    
    #define O { \
         {0, 0, 0, 1, 1, 0, 0, 0}, \
         {0, 0, 1, 0, 0, 1, 0, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 1, 0, 0, 0, 0, 1, 0}, \
         {0, 0, 1, 0, 0, 1, 0, 0}, \
         {0, 0, 0, 1, 1, 0, 0, 0}  \
    }
    
    
    byte col = 0;
    byte leds[8][8];
    
    
    // pin[xx] on led matrix connected to nn on Arduino (-1 is dummy to make array start at pos 1)
    int pins[17]= {-1, 5, 4, 3, 2, 14, 15, 16, 17, 13, 12, 11, 10, 9, 8, 7, 6};
    
    
    // col[xx] of leds = pin yy on led matrix
    int cols[8] = {pins[13], pins[3], pins[4], pins[10], pins[06], pins[11], pins[15], pins[16]};
    
    
    // row[xx] of leds = pin yy on led matrix
    int rows[8] = {pins[9], pins[14], pins[8], pins[12], pins[1], pins[7], pins[2], pins[5]};
    
    
    const int numPatterns = 6;
    byte patterns[numPatterns][8][8] = {
       H,E,L,L,O,SPACE
    };
    
    
    int pattern = 0;
    
    
    void setup() {
       // sets the pins as output
       for (int i = 1; i <= 16; i++) {
         pinMode(pins[i], OUTPUT);
       }
    
    
      // set up cols and rows
       for (int i = 1; i <= 8; i++) {
         digitalWrite(cols[i - 1], LOW);
       }
    
    
      for (int i = 1; i <= 8; i++) {
         digitalWrite(rows[i - 1], LOW);
       }
    
    
      clearLeds();
    
    
      // Turn off toggling of pin 11
       FrequencyTimer2::disable();
       // Set refresh rate (interrupt timeout period)
       FrequencyTimer2::setPeriod(2000);
       // Set interrupt routine to be called
       FrequencyTimer2::setOnOverflow(display);
    
    
      setPattern(pattern);
    }
    
    
    void loop() {
         pattern = ++pattern % numPatterns;
         slidePattern(pattern, 60);
    }
    
    
    void clearLeds() {
       // Clear display array
       for (int i = 0; i < 8; i++) {
         for (int j = 0; j < 8; j++) {
           leds[i][j] = 0;
         }
       }
    }
    
    
    void setPattern(int pattern) {
       for (int i = 0; i < 8; i++) {
         for (int j = 0; j < 8; j++) {
           leds[i][j] = patterns[pattern][i][j];
         }
       }
    }
    
    
    void slidePattern(int pattern, int del) {
       for (int l = 0; l < 8; l++) {
         for (int i = 0; i < 7; i++) {
           for (int j = 0; j < 8; j++) {
             leds[j][i] = leds[j][i+1];
           }
         }
         for (int j = 0; j < 8; j++) {
           leds[j][7] = patterns[pattern][j][0 + l];
         }
         delay(del);
       }
    }
    
    
    // Interrupt routine
    void display() {
       digitalWrite(cols[col], LOW);  // Turn whole previous column off
       col++;
       if (col == 8) {
         col = 0;
       }
       for (int row = 0; row < 8; row++) {
         if (leds[col][7 - row] == 1) {
           digitalWrite(rows[row], LOW);  // Turn on this led
         }
         else {
           digitalWrite(rows[row], HIGH); // Turn off this led
         }
       }
       digitalWrite(cols[col], HIGH); // Turn whole column on at once (for equal lighting times)
    }
    
    
    کتابخانه در فایل ضمیمه
    فایل های پیوست شده فایل های پیوست شده

  2. #2
    Junior Member
    تاریخ عضویت
    Jul 2016
    نوشته ها
    6
    سلام میشه یه راهنمایی بهتر بکنید مخصوصا قسمت بستن مدار رو نمیدونم چیکار کنم .عکس اصلا مربوط به این نیست کد هم مربوط به 8x8 است نه این لطفا کمک کنید

  3. #3
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,024
    این برای مدل 8*8* هست که اگه بخواید برای 16*16 استفاده کنید باید کد رو تعمیم بدید

    میتونید از این لینک برای 16*16 استفاده کنید:
    [Tutorial] How to use Dot LED Matrix Display with Arduino – Rhesoft
    لایک کردن

  4. #4
    Junior Member
    تاریخ عضویت
    Jul 2016
    نوشته ها
    6

    ماژول صفحه نمایش ماتریسی 16 * 16 تک رنگ

    A ->5
    B->4
    C->3
    D->2
    EN/OE->6
    R1->7
    SCK->8
    LAT->9


    #include "LedMatrixObject.h"

    LedMatrixObject *a = new LedMatrixObject(2, 3, 4, 5, 6, 7, 8, 9);

    unsigned char s[16][16] = {
    {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
    {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},
    {1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1},
    {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
    };

    void setup(){

    }

    void loop(){
    a->setScene(s);
    a->draw();
    }
    تصاویر کوچک شده (Thumbnails) پیوست شده تصاویر کوچک شده (Thumbnails) پیوست شده img_20160716_102637-1-.jpg   img_20160716_102648-1-.jpg  
    فایل های پیوست شده فایل های پیوست شده
    ویرایش توسط dogdoor313 : 07-19-2016 در ساعت 11:03 AM
    لایک کردن

  5. #5
    Junior Member
    تاریخ عضویت
    Jan 2016
    نوشته ها
    11
    سلام.

    هر چه سرچ کردم چیزی که دقیقا پین ها و بوردش مثل این (محصول موجود در سایت آفتاب) باشه ندیدم!

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

SEO by vBSEO