Guest User

led matrix

a guest
Oct 13th, 2013
332
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.91 KB | None | 0 0
  1. #include <REGX51.H>
  2. #define col P1
  3. sbit DS = P2^0;
  4. sbit SCL = P2^2;
  5. sbit SCK = P2^1;
  6. #define DQ1 P2_0
  7. #define soled 10
  8. #define socotled 8
  9. unsigned char charMap[10][6] = {
  10.     {0x3E,0x7F,0x49,0x45,0x7F,0x3E}, // 0
  11.     {0x00,0x42,0x7F,0x7F,0x40,0x00}, // 1
  12.     {0x42,0x63,0x71,0x59,0x4F,0x46}, // 2
  13.     {0x22,0x6B,0x49,0x49,0x7F,0x3E}, // 3
  14.     {0x18},// :
  15. };
  16. void delay(long time)
  17. {
  18.     long n;
  19.     for(n=0;n<time;n++){;}
  20. }
  21. void dich(unsigned char x){
  22.     unsigned char i;
  23.     for(i=0;i<8;i++){
  24.         DS = (x&0x80)? 1:0;  //dua bit du lieu ra chan SDA
  25.         SCK = 0;
  26.         SCK = 1;
  27.         x<<=1;             //bit co trong so lon hon dc truyen truoc
  28.     }
  29. }
  30. void main()
  31. {
  32.     int i,led,soled5;
  33.     float temp = 30.00;
  34.     soled5=soled*socotled/5; // so ki tu toi da
  35.     while(1){
  36.         for(led=0;led<2;led++){
  37.             for(i=0;i<6;i++){
  38.                 col = led*6 + i;
  39.                 dich(charMap[0][i]);
  40.                 dich(charMap[1][i]);
  41.                 SCL = 0;
  42.                 SCL = 1;
  43.                 delay(30);
  44.             }
  45.         }
  46.     }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment