Показано с 1 по 10 из 469

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    55
    Сообщений
    13,381
    Вес репутации
    10

    По умолчанию Re: Фоновая, пиксельная подсветка телевизора, Pixelight

    Проще по тестовому скетчу определить
    Цвета выделили жирным шрифтом

    Код:
    #include <SPI.h>
    
    typedef struct {uint8_t b; uint8_t g; uint8_t r;} RGB;
    RGB pixel[160];
    
    void setup() 
    {
      Serial.begin(115200);
      SPI.begin();
      SPI.setBitOrder(MSBFIRST);
      SPI.setDataMode(SPI_MODE0); 
      SPI.setClockDivider(SPI_CLOCK_DIV16);
      delay(1); 
    }
    
    void loop() 
    {
    run_pix(160); //количество тестируемых светодиодов в ленте
    }
    
    void run_pix(uint8_t num)
    {
          pixel[0].r=0;   
          pixel[0].g=0;
          pixel[0].b=255;
             
       for(uint8_t i=0; i<num; i++) 
       {
         pixel[i+1].r=pixel[i].r; 
          pixel[i+1].g=pixel[i].g;
          pixel[i+1].b=pixel[i].b;
          pixel[i].r=0; 
          pixel[i].g=0;
          pixel[i].b=0; 
          set_pix(num); 
          // delay(10); //пауза между вспышками светодиодов
       } 
    }
    
    void set_pix(uint8_t num)
    {
       for(uint8_t i=0; i<num; i++) 
       {   
          SPI.transfer(pixel[i].b);
          SPI.transfer(pixel[i].g);
          SPI.transfer(pixel[i].r);
        }
      delay(1);
    }
    Последний раз редактировалось Chip; 05.08.2013 в 23:59.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 5 (пользователей: 0 , гостей: 5)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •