Я новичок в Arduino. Я хотел создать четырехходовую систему светофоров, используя Arduino и два восьмибитных сдвиговых регистра. Я заметил странное поведение двух моих «дорог», подключенных ко второму сдвиговому регистру. В конечном итоге эта схема будет включать в себя ИК-датчики, но сейчас я использую последовательность по умолчанию для проверки своего кода.
Я новичок в Arduino. Я хотел создать четырехходовую систему светофоров, используя Arduino и два восьмибитных сдвиговых регистра. Я заметил странное поведение двух моих «дорог», подключенных ко второму сдвиговому регистру. В конечном итоге эта схема будет включать в себя ИК-датчики, но сейчас я использую последовательность по умолчанию для проверки своего кода. [code]// Pin Definitions const int dataPin = 10; // DS const int clockPin = 8; // SH_CP const int latchPin = 9; // ST_CP
void updateTraffic(int road) { // Set all roads to red road1 = 0b001; road2 = 0b001; road3 = 0b001; road4 = 0b001; // Update the road based on priority switch (road) { case 1: road1 = 0b100; break; // Green for Road 1 case 2: road2 = 0b100; break; // Green for Road 2 case 3: road3 = 0b100; break; // Green for Road 3 case 4: road4 = 0b100; break; // Green for Road 4 }
writeShiftRegisters(); delay(10000); // Green light duration setYellow(road); //delay(1000); //setRed(road); }
void setYellow(int road) { // Set the selected road to yellow switch (road) { case 1: road1 = 0b010; break; case 2: road2 = 0b010; break; case 3: road3 = 0b010; break; case 4: road4 = 0b010; break; }
void setRed(int road) { // Set the selected road to red switch (road) { case 1: road1 = 0b001; break; case 2: road2 = 0b001; break; case 3: road3 = 0b001; break; case 4: road4 = 0b001; break; }