Автор Тема: Arduino  (Прочитано 2139 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн zusicks438

  • zusicks438
  • Мастер
  • ***
  • Сообщений: 8387
  • Страна: ru
  • Карма +219/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« : Март 14, 2017, 21:58:54 » [Получить ссылку]
Ну должна же была рано или поздно появиться такая тема :D

Заказал вот этот набор. Не зачем, а просто так. Сегодня забрал на почте. Сижу, играюсь. Весело :drag:

 

Оффлайн Romchik728

  • к-к-к-к-кембллллл!
  • Мастер
  • ***
  • Сообщений: 7935
  • Страна: vg
  • Карма +260/-0
  • Пол: Мужской
  • Зобанен за пердатоки
    • Просмотр профиля
  • Авто: Aveo (1st generation)
  • Тел: Microsoft Lumia 535 DS
Arduino
« Ответ #49 : Май 22, 2017, 11:46:05 » [Получить ссылку]
Прочёл вот этот пост и понял, что и UNO хватит :drag:
http://arduino.ru/forum/programmirovanie/umnaya-teplitsa-na-baze-arduino-mega?page=7#comment-150345
Ерунду говорят что денег мало — просто кокс дорогой (с)

Оффлайн zusicks438

  • zusicks438
  • Мастер
  • ***
  • Сообщений: 8387
  • Страна: ru
  • Карма +219/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #50 : Май 22, 2017, 11:55:58 » [Получить ссылку]
Ну всё, пили проект, потом отзыв с фоточками :drag:

Оффлайн Электромонтёр

  • Мастер
  • ***
  • Сообщений: 5777
  • Страна: ru
  • Город: Россия, Самара
  • Карма +142/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #51 : Май 22, 2017, 14:01:59 » [Получить ссылку]
Romchik728, 13 портов должно с избытком хватить на датчики и исполнительные устройства. Плату с цифровыми индикаторами и так спаять можно.
Осторожно, ардуиновый компилятор может глюки в прошивке делать! Я сталкивался с такой напастью, но метод программирования использовал обычный, а не ардуинский. То есть для управления битами писал свою процедуру, а не пользовал готовую функцию. Может у меня компилятор такой левый? Меняешь местами две строчки с независящими друг от друга переменными и всё работает.
Я всегда утверждал, что терроризм - это не выход, однако следователь ФСБ с моей точкой зрения НЕ согласился.

Оффлайн zusicks438

  • zusicks438
  • Мастер
  • ***
  • Сообщений: 8387
  • Страна: ru
  • Карма +219/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #52 : Май 22, 2017, 15:18:27 » [Получить ссылку]
Осторожно, ардуиновый компилятор может глюки в прошивке делать!
В смысле? Примеры давай :drag:

Оффлайн Электромонтёр

  • Мастер
  • ***
  • Сообщений: 5777
  • Страна: ru
  • Город: Россия, Самара
  • Карма +142/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #53 : Май 22, 2017, 18:24:03 » [Получить ссылку]
В последнем примере timer.ino если поменять местами строки 28 и 29 программа начинает работать неправильно считает нажатой соседнюю кнопку.
Я всегда утверждал, что терроризм - это не выход, однако следователь ФСБ с моей точкой зрения НЕ согласился.

Оффлайн zusicks438

  • zusicks438
  • Мастер
  • ***
  • Сообщений: 8387
  • Страна: ru
  • Карма +219/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #54 : Май 22, 2017, 18:59:13 » [Получить ссылку]
Электромонтёр, так это потому что ты битовый наркоман :D

Оффлайн Электромонтёр

  • Мастер
  • ***
  • Сообщений: 5777
  • Страна: ru
  • Город: Россия, Самара
  • Карма +142/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #55 : Май 22, 2017, 20:30:47 » [Получить ссылку]
zusicks438, отнюдь, я не силён в программировании.
Я всегда утверждал, что терроризм - это не выход, однако следователь ФСБ с моей точкой зрения НЕ согласился.

Оффлайн Romchik728

  • к-к-к-к-кембллллл!
  • Мастер
  • ***
  • Сообщений: 7935
  • Страна: vg
  • Карма +260/-0
  • Пол: Мужской
  • Зобанен за пердатоки
    • Просмотр профиля
  • Авто: Aveo (1st generation)
  • Тел: Microsoft Lumia 535 DS
Arduino
« Ответ #56 : Май 27, 2017, 21:34:49 » [Получить ссылку]
Существует какой-нибудь бесплатный аналог Autodesk 123D Circuits? :drag:
Ерунду говорят что денег мало — просто кокс дорогой (с)

Оффлайн zusicks438

  • zusicks438
  • Мастер
  • ***
  • Сообщений: 8387
  • Страна: ru
  • Карма +219/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #57 : Май 28, 2017, 00:17:58 » [Получить ссылку]
Нихренасе, я не знал про эту штуку :drag:

Оффлайн Romchik728

  • к-к-к-к-кембллллл!
  • Мастер
  • ***
  • Сообщений: 7935
  • Страна: vg
  • Карма +260/-0
  • Пол: Мужской
  • Зобанен за пердатоки
    • Просмотр профиля
  • Авто: Aveo (1st generation)
  • Тел: Microsoft Lumia 535 DS
Arduino
« Ответ #58 : Май 28, 2017, 00:43:34 » [Получить ссылку]
Нихренасе, я не знал про эту штуку
Я тоже не знал...но у нас в институте на элтехе была программа (чем-то похожая на Autocad Electrical в исполнении Office Visio, где можно было любую схему собрать и посмотреть как она работает...или не работает и происходит виртуальный бах или кз...логично было предположить, что под Ардуино такое тоже есть...просто пока моя едет хотелось бы что-нибудь набросать, да и на компе обкатывать всё проще, чем туда-сюда обратно перезаливать и подключать
Ерунду говорят что денег мало — просто кокс дорогой (с)

Оффлайн zusicks438

  • zusicks438
  • Мастер
  • ***
  • Сообщений: 8387
  • Страна: ru
  • Карма +219/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #59 : Май 28, 2017, 10:12:23 » [Получить ссылку]
чем-то похожая на Autocad Electrical в исполнении Office Visio, где можно было любую схему собрать и посмотреть как она работает...или не работает и происходит виртуальный бах или кз
Это да, на рабочих компах тоже стоит. Но тут прям под Arduino, прикольно.

Оффлайн Электромонтёр

  • Мастер
  • ***
  • Сообщений: 5777
  • Страна: ru
  • Город: Россия, Самара
  • Карма +142/-0
  • Пол: Мужской
    • Просмотр профиля
Arduino
« Ответ #60 : Сентябрь 10, 2017, 03:00:59 » [Получить ссылку]
Придумал интересный алгоритм подавления дребезга кнопок. Идея-кнопка подключена к входу последовательного регистра сдвига, если на выходе регистра одни нули или единицы - то дребезга нет и от кнопка выдаёт надёжный ноль или единицу, а иначе дребезг и игнор.
Как это выглядит программно: к любому удобному входу подключаем кнопку и задаём восьмибитную переменную. Через одинаковые промежутки времени, например в процедуре обработки прерывания от таймера, сдвигаем содержимое переменной влево на один бит, очищаем младший бит и в младший же бит пишем состояние вывода с кнопкой. Как только значение переменной достигнет 0х00, значит на входе ноль, если 0хFF, то единица, иначе дребезг и игнор.
Вот пример кода, правда на асме, но с подробными комментариями:
NOICE: ;процедура подавления дребезга кнопки
RLF DNC, F ;сдвигаем влево содержимое регистра дребезга
BCF DNC, 0 ;сбрасываем младший бит регистра дребезга
MOVF GPIO, W ;читаем состояние порта
ANDLW 0x01 ;выделяем состояние входа GP0
IORWF DNC, F ;складываем бит порта с регистром дребезга
MOVF DNC, W ;проверяем состояние регистра дребезга на ноль
BTFSC STATUS, Z ;если во всех битах были нули
GOTO ONE ;то на входе GP0 установился ноль
MOVF DNC, W ;загружаем состояние регистра дребезга в аккумулятор
XORLW 0xFF ;инвертируем аккумулятор
BTFSC STATUS, Z ;если во всех битах были единицы
GOTO ZERO ;то на входе GP0 установилась единица
RETURN ;иначе есть дребезг и возврат из процедуры
У меня кнопка подключена к младшему пину порта, поэтому выделение бита состояния кнопки несколько упрощено.
Я всегда утверждал, что терроризм - это не выход, однако следователь ФСБ с моей точкой зрения НЕ согласился.