Advertisement
Guest User

Untitled

a guest
Feb 19th, 2017
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.62 KB | None | 0 0
  1. #include <SPI.h>
  2. #include <SD.h>
  3.  
  4. #include "FastLED.h"
  5. #define NUM_LEDS 256
  6. #define DATA_PIN 22
  7. CRGB leds[NUM_LEDS];
  8.  
  9. //#include "SdFat.h"
  10. //SdFat SD;
  11.  
  12. const int chipSelect = 53;
  13.  
  14. void setup() {
  15.  
  16. FastLED.addLeds<WS2812B, DATA_PIN, GRB>(leds, NUM_LEDS);
  17. FastLED.setBrightness(15);
  18.  
  19. Serial.begin(115200);
  20.  
  21. Serial.print("Initializing SD card...");
  22.  
  23. if (!SD.begin(chipSelect)) {
  24. Serial.println("Card failed, or not present");
  25. return;
  26. }
  27. Serial.println("card initialized.");
  28.  
  29. delay(1000);
  30.  
  31. }
  32.  
  33. void loop() {
  34.  
  35. load_bmp("test.bmp");
  36. delay(1000);
  37. load_bmp("1.bmp");
  38. delay(1000);
  39.  
  40. }
  41.  
  42.  
  43.  
  44. void load_bmp(String img){
  45.  
  46. int height = 0;
  47. int width = 0;
  48. int data = 0;
  49. int line = 0;
  50. int offset = 40;
  51. int i = 0;
  52.  
  53.  
  54. File dataFile = SD.open(img);
  55.  
  56. if (dataFile) {
  57.  
  58.  
  59. while (dataFile.available()) {
  60. line++;
  61. data = dataFile.read();
  62. if (line == 11){
  63. offset = data;
  64. }
  65. if ((line >= 19) && (line <= 22)){
  66. width = (data + width);
  67. }
  68.  
  69. if(line > offset){
  70. leds[i].b = data;
  71. line++;
  72.  
  73. data = dataFile.read();
  74. leds[i].g = data;
  75. line++;
  76.  
  77. data = dataFile.read();
  78. leds[i].r = data;
  79. line++;
  80.  
  81. data = dataFile.read(); // Alpha data. Bruges ikke, så her gør vi ikke noget
  82. i++;
  83.  
  84. FastLED.show();
  85. }
  86. }
  87.  
  88. i = 0;
  89. height = ((line - offset) / 4 ) / width;
  90.  
  91. dataFile.close();
  92. }
  93.  
  94.  
  95. else {
  96. Serial.print("error opening ");
  97. Serial.println(img);
  98. }
  99.  
  100.  
  101. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement