BÀI 41 : LED MATRIX 8X16 PIC16F877A CCS

4:27:00 AM
LED matrix 8x16 được tạo thành từ 2 LED matrix 8x8. Khác với khi giao tiếp với LED matrix 8x8 ở đây chúng ta có tới 16 hàng và cột nên khổng thể dùng 1 PORT để xuất dữ liệu ra được nên phải dùng 2 PORT như thế thì cũng được nhưng tốn quá nhiều chân của Vi Xử Lý nên ở đây chúng ta sử dụng IC 74HC595 để tiết kiệm chân cho con Vi Xử Lý của chúng ta. Việc sử dụng IC này cũng không quá khó mà nó lại rất thông dụng nên các bạn phải nắm chất kiến thức về nó ! Ai chưa hiểu về cấu tạo cũng như hoạt động của nó thì có thể xem lại TẠI ĐÂY .
- Ảnh mô phỏng protues.
led matrix 8x16 pic16f877a
- Đây là code chương trình.
#include <16f877a.h>
#fuses NOLVP,NOWDT,PUT,HS
#use delay(clock=20000000)
#BIT PORTCbits_RC0 = 0X07.0
#BIT PORTCbits_RC1 = 0X07.1
#BIT PORTCbits_RC3 = 0X07.3
const unsigned char font[] = {
127, 127,  14,  28,  14, 127, 127,   0, //'M'
124, 126,  19,  19, 126, 124,   0,   0, //'A'
3,  65, 127, 127,  65,   3,   0,   0, //'T'
65, 127, 127,   9,  25, 127, 102,   0, //'R'
0,  65, 127, 127,  65,   0,   0,   0, //'I'
67, 103,  60,  24,  60, 103,  67,   0, //'X'
0,   0,   0,   0,   0,   0,   0,   0, //' '
54, 127,  73,  73, 127,  54,   0,   0, //'8'
68, 108,  56,  16,  56, 108,  68,   0, //'x'
64,  66, 127, 127,  64,  64,   0,   0, //'1'
60, 126,  75,  73, 121,  48,   0,   0, //'6' 
0,   0,   0,   0,   0,   0,   0,   0, //' '
0,   0,   0,   0,   0,   0,   0,   0, //' '
};

void main() 
{
unsigned rol, delay, col;
SET_TRIS_B(0x00);  
SET_TRIS_C(0x00);  
OUTPUT_B(0x00);  
OUTPUT_C(0x00);  
   while(1)
   {
    for(rol=0;rol<112;rol++)
    { //font. 13 x 8[8x8 matrix] = 112.
     for(delay=0;delay<20;delay++)
     {  
      PORTCbits_RC0 = 1; PORTCbits_RC0 = 0; PORTCbits_RC1 = 1; PORTCbits_RC3 = 1; PORTCbits_RC3 = 0; 
      for(col=0;col<16;col++) // 16 hang va cot
      { 
      OUTPUT_B (~ font[col + rol]);
      delay_us(300);  
      PORTCbits_RC0 = 1; PORTCbits_RC0 = 0; PORTCbits_RC1 = 0; PORTCbits_RC3 = 1; PORTCbits_RC3 = 0;
      }
     }
    }
   }
}
- Link download project Click here

Share this

Related Posts

Previous
Next Post »