5227| 2
|
[进阶] 用8x8整体点阵模块和mp3模块来一个安全书包 |
其实和我之前做的8x8点阵模块一样,只是增加了MP3模块。做上一个帖子时候还没有那个mp3模块。 其实这个项目可以8x8柔性点阵屏。效果更好。柔性的可以更好的贴合在布料上。 mp3文件的文件名以0x开头,例如01,02.03.后面的字符无所谓。mp3文件拷贝到mp3模块里面。 这个项目用FastLED_master库文件。文件在附件里面有,解压后放在arduion\library目录里面。 [mw_shl_code=applescript,true]/*******Made by Gada888******/ /*******2019-01-29******/ #include <FastLED.h> #include "Plasma.cpp" #include "Snake.cpp" #include "Twinkle.cpp" #include "DeadChannel.cpp" #include "Sprite.cpp" #include <SoftwareSerial.h> SoftwareSerial Serial1(10, 11); unsigned char order[4] = {0xAA,0x06,0x00,0xB0}; #define WIDTH 8 #define HEIGHT 8 #define NUM_LEDS WIDTH * HEIGHT #define DATA_PIN 3 CRGB leds[NUM_LEDS]; void setup() { Serial1.begin(9600); volume(0x1E);//音量设置0x00-0x1E FastLED.addLeds<WS2812B, DATA_PIN, GRB>(leds, NUM_LEDS); } void loop() { play(0x01); delay(5000); doTwinkle(); doSnake(); //doSprite(); } void doDeadChannel() { DeadChannel deadChannel(leds, WIDTH, HEIGHT); deadChannel.start(); } void doPlasma() { Plasma plasma(leds, WIDTH, HEIGHT); plasma.start(); } void doTwinkle() { Twinkle twinkle(leds, WIDTH, HEIGHT, true, true); twinkle.start(); } void doSnake() { Snake snake(leds, WIDTH, HEIGHT); snake.start(); } void play(unsigned char Track) { unsigned char play[6] = {0xAA,0x07,0x02,0x00,Track,Track+0xB3};//0xB3=0xAA+0x07+0x02+0x00,即最后一位为校验和 Serial1.write(play,6); } void volume( unsigned char vol) { unsigned char volume[5] = {0xAA,0x13,0x01,vol,vol+0xBE};//0xBE=0xAA+0x13+0x01,即最后一位为校验和 Serial1.write(volume,5); } [/mw_shl_code] |
128.57 KB, 下载次数: 2174
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed