У АРДУИНО имамо 20 И / О пинова, тако да можемо програмирати 20 пинова УНО који ће се користити као улаз или излаз. Иако на контролеру АТМЕГА328П има више пинова него на УНО, то је зато што су приликом дизајнирања плоче неке пинове задане.
Сада нам је за неке апликације потребно више од 30 пинова, рецимо ако желимо да дизајнирамо ЛЕД ЦУБЕ 5к5к5, тако да нам за ово требају 5к5 + 5 = 30пинс. У таквим случајевима користимо серијске или паралелне претварачке чипове или регистар померања. Чип регистра померања серијски узима податке са УНО плоче и даје излаз у 8-битној паралелној конфигурацији.
Компоненте потребне
Хардвер: Ардуино уно плоча, спојнице, отпорник 220Ω, ЛЕД (осам комада), 74ХЦ595 ИЦ, плоча за хлеб.
Софтвер: Ардуино сваке ноћи
Шема и радно објашњење
Овде ћемо послати податке у осмобитној величини кроз један канал за померање регистра. Регистар смене узима податке серијски и складишти их у својој меморији. Једном када податке пошаље контролер, послат ћемо наредбу за помак регистра да би се подаци приказали на излазу, с овом наредбом помак регистар даје податке паралелно.
Овај излаз приказује осам ЛЕД-а повезаних на излазу.
За повезивање регистра смене са Ардуино УНО морамо да урадимо две ствари:
|
Прво треба да поставимо било која три пина УНО-а као излаз. Затим на ова три излазна пина треба да повежемо дигитални пин, часовник и засун. Након тога морамо УНО-у рећи који пин чипа је повезан са пиновима УНО плоче. То се постиже једноставним писањем наредбе „
shiftOut(dataPin, clockPin, data);
“. Подаци овде могу бити у бинарном или децималном или хексадецималном облику. Осмобитне информације које треба послати написане су уместо „података“.
Подаци се шаљу као:
Онемогућите резу, ово говори чипу да за сада не приказује излаз.
Осам пута ћемо серијски слати податке са сатом, тако да је сат низак, а низак и тако даље.
Омогући засун, ово говори чипу да приказује осмобитне податке.
Рад АРДУИНО-а са СХИФТ РЕГИСТЕР-ом објашњен је корак по корак у Ц коду датом у наставку: