Nrf24L+ + spi tft display

Тема в разделе "Проводная и беспроводная связь", создана пользователем Gilzasumkin, 13 мар 2016.

  1. Gilzasumkin

    Gilzasumkin Нуб

    Задача использовать на arduino uno r3 tft display подключаемый через интерфейс spi и nrf24l+, проблема заключается в том, что и радио модульи дисплей использует одинаковые пины d 10-13, есть возможность обхода проблемы без ковыряния библиотек?
     
  2. AlexVS

    AlexVS Гик

    softSPI -вам в помощь.
    Позволяет организовать SPI практически на любых пинах котроллера и посадить тот же nRF24 на эти пины.
    Я активно использую - все прекрасно работает.
     
  3. Alex..пожалуйста. пример какой нить?
     
  4. AlexVS

    AlexVS Гик

    Пример чего?
     
  5. AlexVS

    AlexVS Гик

    Код (C++):
    #include <DigitalIO.h>
    #include <RF24.h>
    const int _ce = 10;
    const int _csn = 8;
    SoftSPI<SOFT_SPI_MISO_PIN, SOFT_SPI_MOSI_PIN, SOFT_SPI_SCK_PIN, SPI_MODE> spi;
    RF24 radio(_ce,_csn);
    RF24Network network(radio);

    void setup() {
      spi.begin();
      delay(500);
      radio.begin();
    }
     
    Так же в файле RF24_config.h необходимо раскомментить строчку #define SOFTSPI
    И определить на каких выводах организуем SPI
    Код (C++):
          // change these pins to your liking
    ///////////////////////////////////////////////  
          const uint8_t SOFT_SPI_MISO_PIN = 12;
          const uint8_t SOFT_SPI_MOSI_PIN = 9;
          const uint8_t SOFT_SPI_SCK_PIN = 11;
          const uint8_t SPI_MODE = 0;
     
  6. А что, CS/CE (chip select/enable) не используется?
     
  7. AlexVS

    AlexVS Гик

    Код (C++):
    const int _ce = 10;
    const int _csn = 8;
    Это по вашему что? Или проблема со зрением?
     
  8. 2 AlexVS

    Может я и ошибаюсь, но Ваш пост я воспринимаю как хамство.

    SPI допускает использование нескольких устройств, для каждого свой пин CS (CE - синоним CS, например на ILI9340 он обозначен CS, на Nokia5110 - CE). Где здесь CS пин дисплея?
     
  9. AlexVS

    AlexVS Гик

    Воспринимайте как хотите. Вы мой первый ответ в данной теме прочли? Внимательно?
    Я про дисплей и не писал, я предложил вариант пересадить nRF24 на softSPI.
     
  10. А почему нельзя посадить два устройства на аппаратный spi?
    И по-моему есть путаница относительно select/enable.
    Насколько я понял из текста библиотеки собственно к spi имеет отношение только Chip Select (_csn).
     
  11. AlexVS

    AlexVS Гик

    1. Можно, в основном работает без проблем, но бывают нюансы. Вот тогда в качестве альтернативы можно смело задействовать softSPI.
    2. Не понятно, у кого путаница? У меня - нет.
    3. Из текста какой библиотеки? Я тут приводил в пример всего 2, это DigitalIO.h и RF24.h. Или это замечание не ко мне?
     
  12. Пока единственное, что приходит в голову - разница в допустимых скоростях обмена.
    Для дисплеев вроде упомянутого IL9340 скорость важна - и при 8 МГц он медленно работает.