![]() |
|
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Mar 2012
Bài gửi: 3
: |
![]() Mình đang làm đề tài led xoay tạo chữ , code viết cho pic 16f877a , pro nào giúp mình với , ai có code hay tài liệu gì cho mình tham khảo với , đây là code mình viết nhưng nhiêu ký tự quá nó không hiện lên được , mình cần hiện dòng chữ dịch sang phải rồi tắt dần tại 1 điểm
#include <16F877a.h > #include <def_877a.h> #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT, NOLVP #use delay(clock=4000000) #define a porta #define b portb #define c portc #define d portd void XUAT_A(int k); void XUAT_B(int k); void XUAT_C(int k); void XUAT_D(int k); void XUAT_E(int k); void XUAT_G(int k); void XUAT_H(int k); void XUAT_I(int k); void XUAT_K(int k); void XUAT_L(int k); void XUAT_M(int k); void XUAT_N(int k); void XUAT_O(int k); void XUAT_P(int k); void XUAT_R(int k); void XUAT_S(int k); void XUAT_T(int k); void XUAT_U(int k); void XUAT_DC(int k); int k; int i; int t,x; int count; #int_TIMER0 void interrupt_timer0(){ set_timer0(5); count++; if(count ==80) // { count=0; t++; if (t>100) t=0; } } #INT_EXT Void RB_LED() // hàm phu.c vu. nga('t hong ngoai! { delay_ms(t); XUAT_T(K); XUAT_R(K); XUAT_U(K); XUAT_O(K); XUAT_N(K); XUAT_G(K); XUAT_DC(K); XUAT_C(K); XUAT_D(K); XUAT_K(K); XUAT_T(K); XUAT_DC(K); XUAT_C(K); XUAT_A(K); XUAT_O(K); XUAT_DC(K); XUAT_T(K); XUAT_H(K); XUAT_A(K); XUAT_N(K); XUAT_G(K); XUAT_DC(K); XUAT_L(K); XUAT_O(K); XUAT_P(K); XUAT_DC(K); XUAT_C(K); XUAT_D(K); XUAT_D(K); XUAT_T(K); XUAT_DC(K); XUAT_K(K); XUAT_H(K); XUAT_O(K); XUAT_A(K); XUAT_DC(K); XUAT_D(K); XUAT_I(K); XUAT_E(K); XUAT_N(K); XUAT_DC(K); XUAT_T(K); XUAT_U(K); XUAT_DC(K); XUAT_T(K); XUAT_I(K); XUAT_N(K); XUAT_DC(K); XUAT_H(K); XUAT_O(K); XUAT_C(K); } unsigned int Mang_A[10][7]={ {255,131,237,238,237,131,255}, // A {255,128,182,182,182,201,255}, // B {255,193,190,190,190,221,255}, // C {255,128,190,190,190,193,255}, // D {255,247,128,182,190,193,255}, // Ð {255,128,182,182,182,182,255}, // E {255,193,190,182,182,199,255}, // G {255,128,247,247,247,128,255}, // H {255,190,190,128,190,190,255}, // I {255,128,247,235,221,190,255} // K }; unsigned int Mang_B[10][7]={ {255,128,191,191,191,191,255}, // L {255,128,253,251,253,128,255}, // M {255,128,253,251,247,128,255}, // N {255,193,190,190,190,193,255}, // O {255,128,246,246,246,249,255}, // P {255,128,246,230,214,185,255}, // R {255,185,182,182,182,206,255}, // S {255,254,254,128,254,254,255}, // T {255,192,191,191,191,192,255}, // U {255,247,247,247,247,255,255} // - }; void XUAT_A(int ){ for(i=0;i<7;i++){ portc=Mang_A[0][i]; delay_us(600); portc=0xff; }} void XUAT_B(int ){ for(i=0;i<7;i++){ portc=Mang_A[1][i]; delay_us(600); portc=0xff; }} void XUAT_C(int ){ for(i=0;i<7;i++){ portc=Mang_A[2][i]; delay_us(600); portc=0xff; }} void XUAT_D(int ){ for(i=0;i<7;i++){ portc=Mang_A[4][i]; delay_us(600); portc=0xff; }} void XUAT_E(int ){ for(i=0;i<7;i++){ portc=Mang_A[5][i]; delay_us(600); portc=0xff; }} void XUAT_G(int ){ for(i=0;i<7;i++){ portc=Mang_A[6][i]; delay_us(600); portc=0xff; }} void XUAT_H(int ){ for(i=0;i<7;i++){ portc=Mang_A[7][i]; delay_us(600); portc=0xff; }} void XUAT_I(int ){ for(i=0;i<7;i++){ portc=Mang_A[8][i]; delay_us(600); portc=0xff; }} void XUAT_K(int ){ for(i=0;i<7;i++){ portc=Mang_A[9][i]; delay_us(600); portc=0xff; }} void XUAT_L(int ){ for(i=0;i<7;i++){ portc=Mang_B[0][i]; delay_us(600); portc=0xff; }} void XUAT_M(int ){ for(i=0;i<7;i++){ portc=Mang_B[1][i]; delay_us(600); portc=0xff; }} void XUAT_N(int ){ for(i=0;i<7;i++){ portc=Mang_B[2][i]; delay_us(600); portc=0xff; }} void XUAT_O(int ){ for(i=0;i<7;i++){ portc=Mang_B[3][i]; delay_us(600); portc=0xff; }} void XUAT_P(int ){ for(i=0;i<7;i++){ portc=Mang_B[4][i]; delay_us(600); portc=0xff; }} void XUAT_R(int ){ for(i=0;i<7;i++){ portc=Mang_B[5][i]; delay_us(600); portc=0xff; }} void XUAT_S(int ){ for(i=0;i<7;i++){ portc=Mang_B[6][i]; delay_us(600); portc=0xff; }} void XUAT_T(int ){ for(i=0;i<7;i++){ portc=Mang_B[7][i]; delay_us(600); portc=0xff; }} void XUAT_U(int ){ for(i=0;i<7;i++){ portc=Mang_B[8][i]; delay_us(600); portc=0xff; }} void XUAT_DC(int ){ for(i=0;i<7;i++){ portc=Mang_B[9][i]; delay_us(600); portc=0xff; }} void main() { trisc=0x00; enable_interrupts(INT_TIMER0);//Khai báo cho phép nga('t Timer0 setup_timer_0(RTCC_INTERNAL|RTCC_DIV_2); enable_interrupts (GLOBAL) ; // cho phép nga('t toàn cu.c enable_interrupts (INT_EXT) ; // cho phép nga('t RB ext_int_edge(H_TO_L); set_timer0(5); while(1){ } } |
![]() |
![]() |
![]() |
|
|