Вт дек 03, 2019 14:55:05
int dataPin = 9; //Пин подключен к DS входу 74HC595
int latchPin = 10; //Пин подключен к ST_CP входу 74HC595
int clockPin = 11; //Пин подключен к SH_CP входу 74HC595
void setup() {
//устанавливаем режим OUTPUT
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
digitalWrite(latchPin, LOW); // устанавливаем синхронизацию "защелки" на LOW
shiftOut(dataPin, clockPin, LSBFIRST, B01001100); // передаем последовательно на dataPin
digitalWrite(latchPin, HIGH); //"защелкиваем" регистр, тем самым устанавливая значения на выходах
}
void loop() {
}
int dataPin = 9; //Пин подключен к DS входу 74HC595
int latchPin = 10; //Пин подключен к ST_CP входу 74HC595
int clockPin = 11; //Пин подключен к SH_CP входу 74HC595
void setup() {
//устанавливаем режим OUTPUT
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
digitalWrite(latchPin, LOW); // устанавливаем синхронизацию "защелки" на LOW
// начинаем "продавливать" данные по цепочке регистров, начиная с последнего
shiftOut(dataPin, clockPin, LSBFIRST, B01001100); // передаем последовательно на dataPin - в первом регистре значение B01001100
shiftOut(dataPin, clockPin, LSBFIRST, B10000111); // "продавливаем" данные в следующий регистр - в первом регистре B10000111, во втором - B01001100
// и т.д. по количеству регистров
digitalWrite(latchPin, HIGH); //"защелкиваем" регистр, тем самым устанавливая значения на выходах
}
void loop() {
}
// пины подключенных устройств
int switchPin = 8;
int ledPin = 11;
// переменные для хранения состояния кнопки и светодиода
boolean lastButton = LOW;
boolean currentButton = LOW;
boolean ledOn = false;
void setup() {
pinMode(switchPin, INPUT);
pinMode(ledPin, OUTPUT);
}
// функция для подавления дребезга
boolean debounse(boolean last) {
boolean current = digitalRead(switchPin);
if(last != current) {
delay(5);
current = digitalRead(switchPin);
}
return current;
}
void loop() {
currentButton = debounse(lastButton);
if(lastButton == LOW && currentButton == HIGH) {
ledOn = !ledOn;
}
lastButton = currentButton;
digitalWrite(ledPin, ledOn);
}
Вт дек 03, 2019 18:14:20
Вт дек 03, 2019 18:23:31
Вт дек 03, 2019 18:37:09
Вт дек 03, 2019 18:49:23
Вт дек 03, 2019 18:54:01
Вт дек 03, 2019 19:15:44
int dataPin = 9; //Пин подключен к DS входу 74HC595
int latchPin = 10; //Пин подключен к ST_CP входу 74HC595
int clockPin = 11; //Пин подключен к SH_CP входу 74HC595
void setup() {
//устанавливаем режим OUTPUT
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
digitalWrite(latchPin, LOW); // устанавливаем синхронизацию "защелки" на LOW
// начинаем "продавливать" данные по цепочке регистров, начиная с последнего
shiftOut(dataPin, clockPin, LSBFIRST, B01001100); // передаем последовательно на dataPin - в первом регистре значение B01001100
shiftOut(dataPin, clockPin, LSBFIRST, B10000111); // "продавливаем" данные в следующий регистр - в первом регистре B10000111, во втором - B01001100
// и т.д. по количеству регистров
digitalWrite(latchPin, HIGH); //"защелкиваем" регистр, тем самым устанавливая значения на выходах
}
void loop() {
}
Вт дек 03, 2019 19:21:40
Вт дек 03, 2019 19:30:25
// начинаем "продавливать" данные по цепочке регистров, начиная с последнего
shiftOut(dataPin, clockPin, LSBFIRST, B01001100); // передаем последовательно на dataPin - в первом регистре значение B01001100
shiftOut(dataPin, clockPin, LSBFIRST, B10000111); // "продавливаем" данные в следующий регистр - в первом регистре B10000111, во втором - B01001100
Вт дек 03, 2019 19:43:56
int dataPin = 9; //Пин подключен к DS входу 74HC595
int latchPin = 10; //Пин подключен к ST_CP входу 74HC595
int clockPin = 11; //Пин подключен к SH_CP входу 74HC595
int data_buf;
void outdata();
void setup() {
// put your setup code here, to run once:
//устанавливаем режим OUTPUT
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
digitalWrite(latchPin, LOW); // устанавливаем синхронизацию "защелки" на LOW
data_buf = word (B10000111, B01001100);
}
void loop() {
// put your main code here, to run repeatedly:
outdata();
delay(1000);
data_buf ++;
}
//----------
void outdata()
{
// начинаем "продавливать" данные по цепочке регистров, начиная с последнего
shiftOut(dataPin, clockPin, LSBFIRST, lowByte(data_buf));
// передаем последовательно на dataPin - в первом регистре значение B01001100
shiftOut(dataPin, clockPin, LSBFIRST, highByte(data_buf));
// "продавливаем" данные в следующий регистр - в первом регистре B10000111,
// во втором - B01001100 и т.д. по количеству регистров
digitalWrite(latchPin, HIGH); //"защелкиваем" регистр, тем самым
// устанавливая значения на выходах
delayMicroseconds(5);
digitalWrite(latchPin, LOW); // устанавливаем синхронизацию "защелки" на LOW
}
Вт дек 03, 2019 19:52:45
Вт дек 03, 2019 19:58:28
ЗдесьAlex-DJ писал(а):BOB51, а где кнопка и её обработчик ?
Вт дек 03, 2019 20:10:59
Ср дек 04, 2019 14:13:23
Ср дек 04, 2019 14:59:29
Ср дек 04, 2019 18:10:22
// считаем клики кнопки, как уже делали это раньше
if (buttonWasUp && !digitalRead(BUTTON_PIN)) {
delay(10);
if (!digitalRead(BUTTON_PIN))
clicks = (clicks + 1) % 10;
}
buttonWasUp = digitalRead(BUTTON_PIN);
byte H_byte[10] = {
0b01001100, 0b01000101
}
byte L_byte[10] = {
0b10000111,0b010001010
}
// начинаем "продавливать" данные по цепочке регистров, начиная с последнего
shiftOut(dataPin, clockPin, LSBFIRST, H_byte[clicks]);
// передаем последовательно на dataPin - в первом регистре значение B01001100
shiftOut(dataPin, clockPin, LSBFIRST, L_byte[clicks]);
// "продавливаем" данные в следующий регистр - в первом регистре B10000111,
// во втором - B01001100 и т.д. по количеству регистров
digitalWrite(latchPin, HIGH); //"защелкиваем" регистр, тем самым
// устанавливая значения на выходах
delayMicroseconds(5);
digitalWrite(latchPin, LOW); // устанавливаем синхронизацию "защелки" на LOW
Ср дек 04, 2019 18:24:23
Ср дек 04, 2019 19:58:52
Ср дек 04, 2019 20:11:49
// считаем клики кнопки, как уже делали это раньше
if (buttonWasUp && !digitalRead(BUTTON_PIN)) {
delay(10);
if (!digitalRead(BUTTON_PIN))
clicks = (clicks + 1) % 10;
}
buttonWasUp = digitalRead(BUTTON_PIN);
byte H_byte[10] = {
0b01001100, 0b01000101
}
byte L_byte[10] = {
0b10000111,0b010001010
}
// начинаем "продавливать" данные по цепочке регистров, начиная с последнего
shiftOut(dataPin, clockPin, LSBFIRST, H_byte[clicks]);
// передаем последовательно на dataPin - в первом регистре значение B01001100
shiftOut(dataPin, clockPin, LSBFIRST, L_byte[clicks]);
// "продавливаем" данные в следующий регистр - в первом регистре B10000111,
// во втором - B01001100 и т.д. по количеству регистров
digitalWrite(latchPin, HIGH); //"защелкиваем" регистр, тем самым
// устанавливая значения на выходах
delayMicroseconds(5);
digitalWrite(latchPin, LOW); // устанавливаем синхронизацию "защелки" на LOW
byte H_byte[10] = {
0b01001100, 0b01000101
}
byte L_byte[10] = {
0b10000111,0b010001010
}
Ср дек 04, 2019 20:41:19