Добрый день! Как на ардуино заставить светиться 100-ую лампочку ? Простите нуба, я помню вроде покупаются регистры ( так как на ардуине всего 7 портов вроде на выход) , следовательно покупается 10 регистров по 10 выводов.... и типа ардуино плата по ним имеет возможность загорать лампочку строго нужную ( в данном примере 100-ую) минуя остальные 99 лампочек. Не подскажите регистры (или как их называются) на ардуино искру ( ИЛИ АРДУИНО НЕО)
А сдвиговые регистры бывают на 10 бит? Если делать на 74HC595 (8 битных), их понадобится 13 (последний будет использован наполовину). Соответственно нужно предусмотреть массив из 13 байт, каждый бит в которых будет соответствовать лампочке. В зависимости от условной ориентации, сотая лампочка будет соответствовать либо младшему (нулевому) биту нулевого элемента массива, либо третьему биту 12-го байта (счет с нуля). Соответственно, взводим соответствующий бит соответствующего элемента массива k-й бит j-го байта взводится в 1 примерно так Код (Text): massiv[j]|=1<<k; а сбрасывается в 0 так: Код (Text): massiv[j]&=~(1<<k); В итоге, чтобы зажечь i-ю лампочку: Код (Text): massiv[i>>3]|=(1<<(i&7)); погасить: Код (Text): massiv[i>>3]&=~(1<<(i&7)); А дальше SS массива регистров в LOW и передаем содержимое массива. Если регистры подключены к SPI, то Код (Text): SPI.transfer(massiv,13); Если к другим пинам, то последовательно, байт за байтом, функцией shiftout. Затем SS массива регистров в HIGH, после чего регистры защелкнутся и новые значения бит будут выставлены на выходах регистров.