e đang tìm hiểu 1 cái code chạy led matrix 8x32 hi vọng sẽ làm được 1 cái chạy chữ cho thích... làm kịp thì tết treo lên cửa nhà cho bố mẹ mừng.
nhưng mà đọc code e không hiểu 1 số lệnh, mong được các pro chỉ giúp![52](http://dientuvietnam.net/forums/images/smilies/52.gif)
đây là code:
đây là đoạn mà e không hiểu:
đại ca/đại tỷ nào hảo tâm thì vào chỉ giúp e nhé.
còn 1 chuyện nữa e xin được chỉ giáo luôn, code này e làm mạch trên bo test thấy chạy đc đúng như mô phỏng, kể ra thì không cần hiểu code cũng có thể làm mạch rồi cho chạy chữ như ý mình rồi, nhưng mà CCS của e build code này lại bị lỗi
nó chỉ vào file string.h, e không biết xử lý thế nào, lỗi là: "C\....\string.h" Line 191(37,38): Expecting an identifier
và nhiều dòng lỗi ở dưới nữa. xin mọi ngưởi chỉ giúp e có phải tại CCS của e lỗi không ạ!
e xin cảm ơn nhiều!
nhưng mà đọc code e không hiểu 1 số lệnh, mong được các pro chỉ giúp
![52](http://dientuvietnam.net/forums/images/smilies/52.gif)
đây là code:
Code:
//============================================================================== // Ten chuong trinh : Mach Ledmatrix Run Text // Nguoi thuc hien : demon52 // Ngay thuc hien : 24/10/2012 // Phien ban : Demo // Mo ta phan cung : Dung PIC16F877A - thach anh 20MHz // : 74HC595 // : PortB dung dieu khien! //------------------------------------------------------------------------------ // Notes: // : dung che do Power On Reset //============================================================================== #include <16F877A.h> #include <def_877a.h> #device *=16 adc=10 #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT,NOLVP, NOCPD, NOWRT #use delay(clock=20000000) #include <C:\Users\OnePiece\Pictures\595\string.h> #include "font.c" #define ic595_sclk1 PIN_B0 #define ic595_data1 PIN_B1 #define ic595_lclk1 PIN_B2 #define ic595_sclk2 PIN_B3 #define ic595_data2 PIN_B4 #define ic595_lclk2 PIN_B5 unsigned int8 next=0,lengh_STR; unsigned char count=0; unsigned char welcome[]=" http://codientu.org "; unsigned char *str; #int_timer0 void ngat_time0() { set_timer0(8); count++; if(count==25){ count=0; next++; if(next>=lengh_STR)next=0; } } void Ic74595_Write(char data,char ic,char bits) { signed char count; if(ic==1) { for(count=bits-1;count>=0;count--) { if((( data>>count) & 0x01) ==1) output_high(ic595_data1); else output_low(ic595_data1); output_high(ic595_sclk1); output_low(ic595_sclk1); } output_high(ic595_lclk1); output_low(ic595_lclk1); } if(ic==2) { for(count=bits-1;count>=0;count--) { if((( data>>count) & 0x01) ==1) output_high(ic595_data2); else output_low(ic595_data2); output_high(ic595_sclk2); output_low(ic595_sclk2); } output_high(ic595_lclk2); output_low(ic595_lclk2); } } void Run_str_RtoL() { lengh_str=strlen(str)*6; unsigned char j,temp_font; Ic74595_Write(1,1,1); for(j=next;j<32+next;j++){ Temp_font=font[str[(j%lengh_STR)/With_of_font] -32][j%With_of_font]; Ic74595_Write(temp_font,2,8); //delay_us(500); Ic74595_Write(0,1,1); } } void main (){ TRISB=0x00; enable_interrupts(int_timer0); setup_timer_0(RTCC_INTERNAL|RTCC_DIV_256); enable_interrupts(global); set_timer0(8); str=welcome; while(true){ Run_str_RtoL(); } }
Code:
void Run_str_RtoL() { lengh_str=strlen(str)*6; unsigned char j,temp_font; Ic74595_Write(1,1,1); for(j=next;j<32+next;j++){ Temp_font=font[str[(j%lengh_STR)/With_of_font] -32][j%With_of_font]; Ic74595_Write(temp_font,2,8); //delay_us(500); Ic74595_Write(0,1,1); } }
còn 1 chuyện nữa e xin được chỉ giáo luôn, code này e làm mạch trên bo test thấy chạy đc đúng như mô phỏng, kể ra thì không cần hiểu code cũng có thể làm mạch rồi cho chạy chữ như ý mình rồi, nhưng mà CCS của e build code này lại bị lỗi
![20](http://dientuvietnam.net/forums/images/smilies/20.gif)
và nhiều dòng lỗi ở dưới nữa. xin mọi ngưởi chỉ giúp e có phải tại CCS của e lỗi không ạ!
e xin cảm ơn nhiều!
Comment