Відповісти

Введіть повідомлення і натисніть Надіслати
Параметри

Назад

Огляд теми (нові повідомленні вгорі)

seri0shka
2018-02-01 13:20:43

Для расширения входов-выходов применяю сдвиговые регистры с программным SPI, всё отлично работало. Сейчас осваиваю аппаратный SPI, возникли проблемы.
Вот фрагмент скетча в котором считывается 8 bit с входного регистра 74НС165 в переменную out1 (опрос каждые 100 мсек). Как считать 16 bit соответственно с двух последовательно включенных регистров? Заменить _8bit на _16bit не подходит!

#include <LineDriver.h>
#include <SPI.h>
#include <SPI_Bus.h>
int out1;
SPI_Bus reg1(_8bit,  9);
unsigned long time_1=0;
void setup()
{
reg1.setSelectionPolicy(SPI_Bus::SELECT_BEFORE);
}
void loop()
{
if (millis()>=  time_1)
  {   
    time_1 =millis()+ 100;
    noInterrupts();
    out1 = reg1.read8bits();
    interrupts();
  }
}

Підвал форуму