Advertisement
RuiViana

Display LED charlieplexing_V03

Aug 30th, 2017
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.67 KB | None | 0 0
  1.  
  2. unsigned long Tempo = 1;                  // Tempo segmenyo aceso
  3. //          Variavel Hexa Segmento        Segmento
  4. unsigned long SeqK0 = 0x1010C210;           // K0
  5. unsigned long SeqK1 = 0x40400200;           // K1
  6. unsigned long SeqK2 = 0x20000202;           // K2
  7. unsigned long SeqK3 = 0x10100100;           // K3
  8. unsigned long SeqA1 = 0x30100000;           // A1
  9. unsigned long SeqB1 = 0x50100000;           // A2
  10. unsigned long SeqC1 = 0x90800000;           // B1
  11. unsigned long SeqD1 = 0x10000101;           // C1
  12. unsigned long SeqE1 = 0x90100000;           // D1
  13. unsigned long SeqF1 = 0x30200000;           // E1
  14. unsigned long SeqG1 = 0x50400000;           // F1
  15. unsigned long SeqA2 = 0x60200000;           // A2
  16. unsigned long SeqB2 = 0xA0200000;           // B2
  17. unsigned long SeqC2 = 0x20000101;           // C2
  18. unsigned long SeqD2 = 0x20200200;           // D2
  19. unsigned long SeqE2 = 0x20200100;           // E2
  20. unsigned long SeqF2 = 0x60400000;           // F2
  21. unsigned long SeqG2 = 0xA0800000;           // G2
  22. unsigned long SeqK4 = 0xC0400000;           // K4
  23. unsigned long SeqA3 = 0x80000101;           // A3
  24. unsigned long SeqB3 = 0x40400100;           // B3
  25. unsigned long SeqC3 = 0x80800100;           // C3
  26. unsigned long SeqD3 = 0x10000202;           // D3
  27. unsigned long SeqE3 = 0x40000202;           // E3
  28. unsigned long SeqF3 = 0xC0800000;           // F3
  29. unsigned long SeqG3 = 0x40000101;           // G3
  30. unsigned long SeqA4 = 0x00000604;           // A4
  31. unsigned long SeqB4 = 0x00000602;           // B4
  32. unsigned long SeqC4 = 0x00000301;           // C4
  33. unsigned long SeqD4 = 0x80400202;           // D4
  34. unsigned long SeqE4 = 0x80800200;           // E4
  35. unsigned long SeqF4 = 0x00000302;           // F4
  36. unsigned long SeqG4 = 0x00000501;           // G4
  37. unsigned long SeqK5 = 0x40000404;           // K5
  38. unsigned long SeqK6 = 0x40400400;           // K6
  39.  
  40. //----------------------
  41. void Digito(unsigned long Segmento)         // Separa 4 bytes
  42. {
  43.   DDRD = Segmento >> 24;                    // Primeiro  Dir reg Ports 0 a 7. 0 INPUT 1 OUTPUT
  44.   PORTD = Segmento >> 16;;                  // Segundo Dados reg Ports 0 a 7. 0 LOW 1 HIGH
  45.   DDRB = Segmento >> 8;;                    // Terceiro  Dir reg Ports 8 a 13. 0 INPUT 1 OUTPUT
  46.   PORTB = Segmento;;                        // Quarto  Dados reg Ports 8 a 13. 0 0 LOW 1 HIGH
  47. }
  48. //----------------------
  49. void setup()
  50. {
  51.   Serial.begin(115200);
  52. }
  53. //----------------------
  54. void loop()
  55. {
  56.   // Acende segmento    Acende  1 2 3 4
  57.   // Delay
  58.  
  59. //  Digito(SeqA1);
  60. //  delay(Tempo);
  61.  
  62.   Digito(SeqB1);
  63.   delay(Tempo);
  64.  
  65.   Digito(SeqC1);
  66.   delay(Tempo);
  67.  
  68. //  Digito(SeqD1);
  69. //  delay(Tempo);
  70.  
  71. //  Digito(SeqE1);
  72. //  delay(Tempo);
  73.  
  74. //  Digito(SeqF1);
  75. //  delay(Tempo);
  76.  
  77. //  Digito(SeqG1);
  78. //  delay(Tempo);
  79.  
  80.   Digito(SeqA2);
  81.   delay(Tempo);
  82.  
  83.   Digito(SeqB2);
  84.   delay(Tempo);
  85.  
  86. //  Digito(SeqC2);
  87. //  delay(Tempo);
  88.  
  89.   Digito(SeqD2);
  90.   delay(Tempo);
  91.  
  92.   Digito(SeqE2);
  93.   delay(Tempo);
  94.  
  95. //  Digito(SeqF2);
  96. //  delay(Tempo);
  97.  
  98.   Digito(SeqG2);
  99.   delay(Tempo);
  100.  
  101. //  Digito(SeqK4);
  102. //  delay(Tempo);
  103.  
  104.   Digito(SeqA3);
  105.   delay(Tempo);
  106.  
  107.   Digito(SeqB3);
  108.   delay(Tempo);
  109.  
  110.   Digito(SeqC3);
  111.   delay(Tempo);
  112.  
  113.   Digito(SeqD3);
  114.   delay(Tempo);
  115.  
  116. //  Digito(SeqE3);
  117. //  delay(Tempo);
  118.  
  119. //  Digito(SeqF3);
  120. //  delay(Tempo);
  121.  
  122.   Digito(SeqG3);
  123.   delay(Tempo);
  124.  
  125. //  Digito(SeqA4);
  126. //  delay(Tempo);
  127.  
  128.   Digito(SeqB4);
  129.   delay(Tempo);
  130.  
  131.   Digito(SeqC4);
  132.   delay(Tempo);
  133.  
  134. //  Digito(SeqD4);
  135. //  delay(Tempo);
  136.  
  137. //  Digito(SeqE4);
  138. //  delay(Tempo);
  139.  
  140.   Digito(SeqF4);
  141.   delay(Tempo);
  142.  
  143.   Digito(SeqG4);
  144.   delay(Tempo);
  145.  
  146. //  Digito(SeqK5);
  147. //  delay(Tempo);
  148.  
  149. //  Digito(SeqK6);
  150. //  delay(Tempo);
  151. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement