![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#11 |
Đệ tử 3 túi
Tham gia ngày: Dec 2008
Bài gửi: 50
: |
hỏi về giải thuật cho Matrix
chào các anh , em viết chương trình cho bảng quang báo 16*32 , dùng 4 con 595 để dich data ra cột , còn hàng thì sử dung 2 con 74ls138, em đang gặp rắc rối ở chỗ cho nó chạy chữ tử trái qua phải, các " cao thủ " nào chỉ cho em .
Code:
#include "D:\Hoctap\baitapchoPIC\ledmatran.h" const unsigned int8 K[]={ 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,32,0,56,142,227,0, 0 ,0,80,0,68,81,20,1, 32,40,34,130,68,81,20,1, 64,36,82,134,64,81,20,1, 128,34,138,138,32,81,228,1, 0,33,250,146,16,81,4,1, 128,34,138,162,8,81,4,1, 64,36,138,194,4,81,20,1, 32,200,137,130,124,142,227,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,68,144,44,34,130,28,0, 0,202,144,34,82,134,34,0, 0,81,145,33,138,138,2,0, 0,95,146,225,251,146,2,0, 0,81,148,34,138,162,58,0, 0,81,152,36,138,194,34,0, 0,81,144,40,138,130,60,0, 0,0,0,0,0,0,0,0, }; int8 i,r; void main() { setup_spi(SPI_MASTER|SPI_L_TO_H|SPI_CLK_DIV_4); setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1); setup_timer_1(T1_INTERNAL|T1_DIV_BY_1); setup_timer_2(T2_DISABLED,0,1); set_tris_b(0b11110000); set_tris_c(0x00); ////////////////////////////// hiển thị đata trên 4 matrix while(1) { for(i=0;i<16;i++) { spi_write(K[i*4+3]) spi_write(K[i*4+2]); spi_write(K[i*4+1]); spi_write(K[i*4+0]); output_high(pin_C2); output_low(pin_c2); delay_us(1300); output_b(i+32); } } thay đổi nội dung bởi: namqn, 10-01-2009 lúc 05:57 PM. |
![]() |
![]() |
|
|