Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 53 из 223 ПерваяПервая ... 3435051525354555663103153 ... ПоследняяПоследняя
Показано с 521 по 530 из 2227

Тема: ARDUINO

  1. #521

    Регистрация
    27.04.2014
    Адрес
    РОССИЯ
    Сообщений
    57
    Позывной
    UB4YBB
    Изготовил платку с кнопками.
    Нажмите на изображение для увеличения. 

Название:	IMG_20161023_170145.jpg 
Просмотров:	733 
Размер:	756.7 Кб 
ID:	246059Нажмите на изображение для увеличения. 

Название:	IMG_20161023_170223.jpg 
Просмотров:	748 
Размер:	702.8 Кб 
ID:	246060Нажмите на изображение для увеличения. 

Название:	IMG_20161023_170128.jpg 
Просмотров:	796 
Размер:	688.9 Кб 
ID:	246058

    Хотел сделать регулировку яркости дисплея и переключения режима отбражения но так и незаработало
    Может код не тот выбрал для кнопок?

    Скрытый текст

    int bl = 9; // Номер Pin к которому подключена подсветкаint brightness =0; // Переменная в которой хранится уровень яркости (От 0 до 254)
    int buttonPlus=8; // Номер Pin к которому подключена кнопка
    int buttonMinus=7; // Номер Pin к которому подключена кнопка -
    void setup() {
    pinMode(bl, OUTPUT); // Порт 9 (bl) будет работать как Выход.
    }
    void loop() { // Этот цикл будет выполняться бесконечное количество раз.
    if (digitalRead(buttonPlus) == HIGH) {
    brightness += 5;
    } // Делаем проверку, если вход под номером 9 (buttonPlus) имеет состояние 5 В. Увеличиваем значение переменной яркости на 5 единиц.
    if (digitalRead(buttonMinus) == HIGH) {
    brightness -= 5;
    } // Делаем проверку, если вход под номером 10 (buttonMinus) имеет состояние 5 В. Уменьшаем значение переменной яркости на 5 единиц.
    brightness = constrain(brightness, 0, 254); // Эта функция контролирует, что бы переменная brightness не стала больше 254 и меньше 0, если значение вылазит за границу то функция 0 или 254
    analogWrite(bl, brightness); // Устанавливаем состояние яркости дисплея
    delay(50); // Пауза 50 миллисекунд.
    }


    С демо программой дисплея работает.


  2. #522
    Цитата Сообщение от Kia2700d Посмотреть сообщение
    avg = (k * X) + (1.0 - k) * avg

    Х - текущий замер
    k - сглаживающий коэф. подобрать между 0 и 1 так чтобы глазу было приятно.
    Сделал вот так

    float newVolt = 10.04 * analogRead(battery_v oltage_pin) / 667;
    volt = (volt * 9 + newVolt) / 10; // вычисляем усредненное значение из 10
    lcd.setCursor (0, 1);
    lcd.print("BAT=");
    lcd.print(volt, 1);

    Вроде нормально. За Ваш вариант тоже спасибо, может пригодится еще.
    Владислав

  3. #523

    Регистрация
    28.04.2005
    Адрес
    Московская обл., г. Мытищи
    Сообщений
    3,920
    Позывной
    ex RW3DKC
    Цитата Сообщение от UB4YBB Посмотреть сообщение
    Может код не тот выбрал для кнопок?
    Как у вас кнопки подключены ?
    Обычно делают подтяжку ноги к +, а кнопкой замыкают на землю

    pinMode(buttonMinus, INPUT);
    digitalWrite(buttonM inus, HIGH);

    в вашем коде идет проверка на HIGH - как то не так.
    И добавьте антидребезг обязательно, можно простейший:

    if (digitalRead(buttonM inus) == LOW) { //Кнопка предположительно нажата
    delay(20); //Ждем когда дребезг кончится
    if (digitalRead(buttonM inus) == LOW) { //Кнопка нажата

    }
    }

    а лучше с учетом предыдущего состояния.

    Цитата Сообщение от UB4YBB Посмотреть сообщение
    int bl = 9;
    - Почему Ы ?
    - Чтобы никто не догадался
    Последний раз редактировалось R2DHG; 25.10.2016 в 10:03.

  4. Спасибо от UB4YBB

  5. #524

    Регистрация
    27.04.2014
    Адрес
    РОССИЯ
    Сообщений
    57
    Позывной
    UB4YBB
    R2DHG, Кнопки подключены стандартно +на вход кнопка замыкает на землю. Не Ы а bl.

  6. #525

    Регистрация
    28.04.2005
    Адрес
    Московская обл., г. Мытищи
    Сообщений
    3,920
    Позывной
    ex RW3DKC
    Цитата Сообщение от UB4YBB Посмотреть сообщение
    R2DHG, Кнопки подключены стандартно +на вход кнопка замыкает на землю.
    Тогда if (digitalRead(buttonP lus) == LOW) {}.

  7. Спасибо от UB4YBB

  8. #526
    ----------------------------------
    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(latchPi n, LOW); // устанавливаем синхронизацию "защелки" на LOW
    // начинаем "продавливать" данные по цепочке регистров, начиная с последнего
    shiftOut(dataPin, clockPin, LSBFIRST, B01001100); // передаем последовательно на dataPin - в первом регистре значение B01001100
    shiftOut(dataPin, clockPin, LSBFIRST, B10000111); // "продавливаем" данные в следующий регистр - в первом регистре B10000111, во втором - B01001100
    // и т.д. по количеству регистров
    digitalWrite(latchPi n, HIGH); //"защелкиваем" регистр, тем самым устанавливая значения на выходах
    }

    void loop() {
    }
    -----------------
    Вроде получилось сюда вставить....
    ,,Уж если ты родился баобабом,то баобабом и умрешь...,, В.Высоцкий

  9. #527

    Регистрация
    28.04.2005
    Адрес
    Московская обл., г. Мытищи
    Сообщений
    3,920
    Позывной
    ex RW3DKC
    Уже хорошо. А теперь приведите комбинации "в первом регистре B10000111, во втором - B01001100" для всех диапазонов.

  10. #528
    1.8 MHz
    B00010000 1рег
    B00000010 2 рег
    3.6
    B00010000
    B01000000
    7.0
    B00010000
    B00010000
    10/14
    B00010000
    B10000000
    18/21
    B00010000
    B00001000
    24/28
    B00010000
    B00000100
    50
    B00011000
    B01000000
    VHF
    B00100000
    B00000000
    UHF
    B01000000
    B00000000

  11. #529

    Регистрация
    27.04.2014
    Адрес
    РОССИЯ
    Сообщений
    57
    Позывной
    UB4YBB
    Цитата Сообщение от R2DHG Посмотреть сообщение
    Тогда if (digitalRead(buttonP lus) == LOW) {}.
    Как таким способом назначить одной кнопке + другой - и привязать на цифровой выход?


  12. #530

    Регистрация
    28.04.2005
    Адрес
    Московская обл., г. Мытищи
    Сообщений
    3,920
    Позывной
    ex RW3DKC
    Так же как у вас, но активный уровень у них LOW (нажата), а не HIGH. Единственное что у вас там вроде нет обработки ситуации "нажали и держим", что приведет вероятно к быстрому ++++++ или ------- до предела.

Страница 53 из 223 ПерваяПервая ... 3435051525354555663103153 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •