Arduino и Сдвиговый регистр 74HC165
Наверняка многим опытным (да и начинающим) «ардуинщикам» знакома ситуация нехватки выходных портов. В планах намечается воплощение большого сверх-идеального конструкторского проекта, а по сути - ничего не получается. Приобретать и инсталлировать дополнительные платы и микроконтроллеры – не выход (это хлопотно и дорого). Что же предпринять? - Предлагаем поработать с популярным модулем 74HC165 и оценить его несомненные достоинства.
Для этого обратимся к техническим характеристикам:
- напряжение питания: 2 - 6V;
- для включения достаточно 2 пинов платы расширения;
- рабочая частота: 2-100 МГц;
- диапазон температур: -40°C ... 125°C;
- размеры: 19.9 × 7.6 × 8.4 мм;
- вес: около 1 г.
Обратите внимание на распиновку выводов микросхемы, она изложена ниже:

Теперь попробуем подключить сдвиговый регистр 74HC165 к Arduino. Для выполнения этой цели понадобится следующее «железо»:
- Микроконтроллер Arduino Nano (Arduino Uno также может подойти)
- Сдвиговый регистр 74HC165
- Макетная плата
- Соединительные провода

const uint8_t data_pin = 11; // 9 pin, Q7 /данные или MISO
const uint8_t shld_pin = 8; // 1 pin, !PL /защелка
const uint8_t clk_pin = 12; // 2 pin, CP /такты или SCK
const uint8_t ce_pin = 9; // 15 pin, !CE / чипселект
void setup() {
Serial.begin(9600);
pinMode(shld_pin, OUTPUT);
pinMode(ce_pin, OUTPUT);
pinMode(clk_pin, OUTPUT);
pinMode(data_pin, INPUT);
// выключаем регистр
digitalWrite(clk_pin, HIGH);
digitalWrite(shld_pin, HIGH);
}
void loop() {
// Дергаем защелку, чтобы захватить состояние входов
digitalWrite(shld_pin, LOW);
delayMicroseconds(5);
digitalWrite(shld_pin, HIGH);
delayMicroseconds(5);
// это действительно нужно сделать
pinMode(clk_pin, OUTPUT);
pinMode(data_pin, INPUT);
// считываем байт из регистра
digitalWrite(ce_pin, LOW);
uint8_t the_shifted = shiftIn(data_pin, clk_pin, MSBFIRST);
digitalWrite(ce_pin, HIGH);
// отправлем в монитор порта
Serial.print(the_shifted);
Serial.print(" - ");
Serial.println(the_shifted, BIN);
delay(1000);
}
К слову, для нормальной работы достаточно стандартных библиотек Arduino IDE.Данную схему можно модернизировать, например, присоединив другие аппаратные компоненты (резисторы (сопротивление 10 кОм), тактовые кнопки, светодиоды ∕ индикаторы и др.).
Уверены, с таким устройством вы сможете воплотить любое конструкторское решение в жизнь! Экспериментируйте! Удачи!
Сегодня поговорим о том, как воплотить в жизнь подключение FPM10A к Arduino, что это за модуль, где используется, каковы параметры его работы и т.д. Речь идет...
Сегодня мы с вами рассмотрим подключение 74HC595 к Ардуино, а также поговорим о базовых характеристиках этой модели выходного сдвигового регистра и его...
Тема нашей сегодняшней статьи – подключение датчика сердечного ритма AD8232 к Ардуино. Про целесообразность и практичность подобного устройства много говорить...
В этой статье мы рассмотрим подключение ADS1115 к Ардуино. Речь идет о 16-битном аналого-цифровом преобразователе, оснащенном 4 входами непосредственно для...
На повестке дня - подключение AM2320 к Ардуино. Тема очень занятная по той простой причине, что подобные датчики являются просто «мастхевом» для современных...