Разделы

В сети

Пользователей: 107
Из них просматривают:
Аналоги: 30. Видео: 1. Даташиты: 25. Инструкции: 1. Новости: 20. Остальное: 7. Программы: 4. Профиль пользователя: 1. Расчёты: 1. Теги: 4. Форум: 10. Чат: 3.
Участников: 5
Гостей: 102

KT315 , alex01981 , Google , wolf170571 , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

Arduino

Arduino. Ознакомление

Написал MACTEP в 20.08.2016 21:10:00 (9822 прочтений)
Arduino UNO
Эта статья открывает рубрику Arduino. Есть несколько видов, но основных, самых популярных 3. Это Arduino UNO, Arduino Mini и Arduino Nano. В этой статье будет обзор Arduino UNO.
В Arduino UNO контроллер собран на ATmega328. У платы четырнадцать входов/выходов, из них шесть могут использоваться как выходы ШИМ (распиновку рассмотрим ниже). Так же есть шесть аналоговых входов.
Плата имеет USB вход, разъем для питания. Кнопку сброса.



Китайская Arduino UNO
Рис. 1 Внешний вид китайской "Arduino UNO"

Родная, итальянская Arduino UNO стоит около 20$, а китайская подделка - 3$, разница только в упаковке :)
Я приобрел Arduino UNO в Китае, ее и буду рассматривать.

Для начала характеристики:

Микроконтроллер - ATmega328
Рабочее напряжение - 5 В
Входное напряжение - 7-12 В
Цифровые входы/выходы - 14 (6 из них + ШИМ)
Аналоговые входы - 6
Постоянный ток через вход/выход - 40 мА
Флеш-память - 32 Кб (из них 0.5 Кб загрузчик)
ОЗУ - 2 Кб
EEPROM - 1 Кб
Тактовая частота - 16 МГц

Arduino UNO может быть запитана от USB или от внешнего источника 7-12В. У меня от USB не запускается толком, подключил внешний источник 7В (Переделал зарядное устройство мобилы.)

Распиновка выводов:


POWER
5V - 5В
RES - Сброс
3.3V - 3.3В от внутреннего преобразователя
5V - 5В
GND - Общий
GND - Общий
VIN - Входное питание 7-12 В

ANALOG IN (Аналоговые входы)
A0
A1
A2
A3
A4
A5

DiGiTAL PWM(~) Цифровые входы/выходы (~ - ШИМ)
0 RX-> - Цифровой вход/выход 0 + последовательная шина приема данных
1 TX-> - Цифровой вход/выход 1 + последовательная шина передачи данных
2 - Цифровой вход/выход 2 + Внешнее прерывание
3~ - Цифровой вход/выход 3 + ШИМ + Внешнее прерывание
4 - Цифровой вход/выход 4
5~ - Цифровой вход/выход 5 + ШИМ
6~ - Цифровой вход/выход 6 + ШИМ
7 - Цифровой вход/выход 7
8 - Цифровой вход/выход 8
9~ - Цифровой вход/выход 9 + ШИМ
10~ - Цифровой вход/выход 10 + ШИМ
11~ - Цифровой вход/выход 11 + ШИМ
12 - Цифровой вход/выход 12
13 - Цифровой вход/выход 13
GND - Общий
AREF - Опорное напряжение
SDA - Связь I2C
SDL - Связь I2C


К пину 13 постоянно подключен светодиод L.
Остальные светодиоды на плате:
ON - питание
RX - получение данных
TX - Запись данных (китайцы наоборот вписали)

Для работы с Arduino необходимо скачать программное обеспечение на сайте Arduino (внизу ссылка).

Скачиваем програмное обеспечение Arduino
Рис. 2

Затем необходимо удостовериться, на какой микросхеме построен виртуальный COM порт. В китайских вариациях это обычно CH340, на нее надо установить драйвера. Скачать можно внизу статьи. При первом подключении система запросит установку драйвера, указываем путь к скачанной папке.

Настройки Arduino
Рис. 3

В самой программе указываем, какая у нас плата (Arduino UNO) и порт. У меня COM4. Посмотреть порт можно в диспетчере устройств.

COM порт
Рис. 4

Подключаем к Arduino два светодиода

Подключение к Arduino светодиодов
Рис. 5

Запишем первый скетч

void setup() {
  pinMode(12, OUTPUT);     //12 пин на вывод
  pinMode(13, OUTPUT);     //13 пин на вывод
}

void loop() {
  digitalWrite(13, HIGH);  // включаем светодиод на пине 13
  delay(200);              // пауза 200 мСек
  digitalWrite(13, LOW);   // отключаем светодиод на пине 13
  delay(200);              // пауза 200 мСек
  digitalWrite(13, HIGH);  // включаем светодиод на пине 13
  delay(200);              // пауза 200 мСек
  digitalWrite(13, LOW);   // отключаем светодиод на пине 13
  delay(200);              // пауза 200 мСек

  digitalWrite(12, HIGH);  // включаем светодиод на пине 12
  delay(200);              // пауза 200 мСек
  digitalWrite(12, LOW);   // отключаем светодиод на пине 12
  delay(200);              // пауза 200 мСек
  digitalWrite(12, HIGH);  // включаем светодиод на пине 12
  delay(200);              // пауза 200 мСек
  digitalWrite(12, LOW);   // отключаем светодиод на пине 12
  delay(200);              // пауза 200 мСек
}


Загрузка Arduino
Запускаем компиляцию и загрузку и...

Видео работы



Инфо

1. драйвер СР340 (СР341)
2. Программное обеспечение Arduino



6
 
Теги: Arduino   UNO  
Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити
grom
Отправлено: 20.08.2016 21:58  Обновлено: 20.08.2016 21:58
Главный Инженер
Дата регистрации: 18.12.2008
Откуда: Тирасполь
Сообщений: 1650
 Arduino. Ознакомление
Цитата:
азъем для питаня. Кнапку сброса.
Эм...ну как бы вы поняли...
alexfloka
Отправлено: 20.08.2016 22:26  Обновлено: 20.08.2016 22:26
Модератор
Дата регистрации: 25.02.2009
Откуда: ПМР Рыбница
Сообщений: 2023
 Arduino. Ознакомление
Гром, чем придираться к опечаткам, лучше бы написал интересную статью.
MACTEP
Отправлено: 20.08.2016 22:56  Обновлено: 20.08.2016 22:56
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
Гром, что мы должны понять?
grom
Отправлено: 21.08.2016 12:16  Обновлено: 21.08.2016 12:16
Главный Инженер
Дата регистрации: 18.12.2008
Откуда: Тирасполь
Сообщений: 1650
 Arduino. Ознакомление
грамматические ошибки
Цитата:
Для работы с Arduino необходимо скачать програмное обеспечение на сайте Arduino
MACTEP
Отправлено: 21.08.2016 12:37  Обновлено: 21.08.2016 12:37
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
Гром, мне надо клаву менять, вся стертая, глючит. Подсказывай в личке. Чтоб не засорять комменты.
MACTEP
Отправлено: 21.08.2016 12:39  Обновлено: 21.08.2016 12:39
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
Собрал часы на Arduino
Открыть изображение в новом окне
wolf170571
Отправлено: 21.08.2016 14:44  Обновлено: 21.08.2016 14:44
Технический Директор
Дата регистрации: 08.01.2009
Откуда: Tallinn
Сообщений: 2946
Пользователь активен!
 Arduino. Ознакомление
OOOOOOOOOO!
T112-10
Отправлено: 21.08.2016 19:44  Обновлено: 21.08.2016 19:44
Технический Директор
Дата регистрации: 17.07.2010
Откуда: Спиртогонск
Сообщений: 2084
 Arduino. Ознакомление
А чего так мелко-то?
MACTEP
Отправлено: 21.08.2016 21:12  Обновлено: 21.08.2016 21:12
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
Всмысле мелко? Этот индикатор воспроизводит знаки в своих знакоместах.
T112-10
Отправлено: 21.08.2016 23:03  Обновлено: 21.08.2016 23:11
Технический Директор
Дата регистрации: 17.07.2010
Откуда: Спиртогонск
Сообщений: 2084
 Arduino. Ознакомление
Цифры мелкие и где-то в углу. В лупу его разглядывать-что ли?
Надо чтобы цифры были покрупнее (по высоте на весь экран). А то как-то не смотрится и неудобно.
А вообще, сам по себе индикатор хорош, но думается, он может отображать и большие символы (одна цифра на четыре знакоместа).
Или это какие-то специальные часы?
MACTEP
Отправлено: 22.08.2016 1:00  Обновлено: 22.08.2016 1:00
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
Ну не даром же выбран двухстрочный индикатор. В одной строчке будут данные о погоде, во второй время. Это же Arduino Сам творишь, что хочешь.  Если умеешь. А вы с Громом, судя по всему, годитесь только в качестве экспертов...
grom
Отправлено: 22.08.2016 8:56  Обновлено: 22.08.2016 8:56
Главный Инженер
Дата регистрации: 18.12.2008
Откуда: Тирасполь
Сообщений: 1650
 Arduino. Ознакомление
Ахах, мелко я думал в смысле почему Мастер такой мелочный проект сделал...надо было управление ядерным реактором, или синхрофазотроном сделать. На крайняк уже управление инкубатором.
KT315
Отправлено: 22.08.2016 14:07  Обновлено: 22.08.2016 14:07
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Я так и не понял, а откуда код надо брать, который после фразы "Запишем первый скетч"?))
MACTEP
Отправлено: 22.08.2016 19:38  Обновлено: 22.08.2016 19:45
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
1. Самому писать
2. Из библиотеки Arduino
3. Найти готовый скетч в интернете

Я следующей статьей хочу затронуть как раз язык Arduino. На самом деле очень простой язык, на основе СИ, все интуитивно понятно, к примеру, в программе в статье в комментариях все расписано.

Открыть изображение в новом окне
KT315
Отправлено: 22.08.2016 20:23  Обновлено: 22.08.2016 20:23
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Если на основе этой платы что-то конструировать, само устройство же выйдет дорогим?
То есть плата только чтобы учиться кодить на самой плате? Или все коды можно потом в ту же Атмега328 прошивать и она будет работать?
T112-10
Отправлено: 23.08.2016 0:06  Обновлено: 23.08.2016 0:06
Технический Директор
Дата регистрации: 17.07.2010
Откуда: Спиртогонск
Сообщений: 2084
 Arduino. Ознакомление
А, они ещё и погоду показывают. Тогда другое дело.
wolf170571
Отправлено: 23.08.2016 12:15  Обновлено: 23.08.2016 12:15
Технический Директор
Дата регистрации: 08.01.2009
Откуда: Tallinn
Сообщений: 2946
Пользователь активен!
 Arduino. Ознакомление
А UHD телик можно сделать,на 3 светиках?
MACTEP
Отправлено: 23.08.2016 19:49  Обновлено: 23.08.2016 19:54
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
КТ, Эта плата стоит около 3$ это дорого? На фото часов плата с индикатором чуть меньше 3$.
Из популярных, есть arduino mini - нет подключения к компьютеру, но отдельно можно приобрести плату подключения к usb - цена mini - меньше 2$ (напомни, сколько атмега стоит?) - размеры mini можешь посмотреть у нас в магазине.
Есть еще Arduino Nano - цена тоже мизерная, но это практически аналог UNO - но микроскопических размеров.
Я еще приобрел "знаменитый набор" из 37 модулей (около 10$  то там одно Г.

Т.е. UNO - для отладки, а внедрение уже в Mini

Ну и отет еще на один твой вопрос, ну да, можно в atmega328 залить, развести и будет работать, конечно же. Только, как я сказал выше, это проще делать на Arduino Mini, Atmega стоит 1.4$ а Arduino Mini - 1.8$ При том, что atmega на arduino уже распаяна, есть стаб на 3.3В, кварц...
wolf170571
Отправлено: 23.08.2016 19:53  Обновлено: 23.08.2016 19:54
Технический Директор
Дата регистрации: 08.01.2009
Откуда: Tallinn
Сообщений: 2946
Пользователь активен!
 Arduino. Ознакомление
Raspberry Pi 3 крути,а с этим шо делать?
MACTEP
Отправлено: 23.08.2016 20:03  Обновлено: 23.08.2016 20:03
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
wolf170571, это разные вещи. Малинка практически полноценный компьютер, а Arduino - всего лишь ATMega328.
KT315
Отправлено: 23.08.2016 23:44  Обновлено: 23.08.2016 23:44
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Тады учи кодить.


ПС:  где обещанные 40 девственниц, за статьи, которые я писал для сайта?
T112-10
Отправлено: 24.08.2016 4:34  Обновлено: 24.08.2016 4:34
Технический Директор
Дата регистрации: 17.07.2010
Откуда: Спиртогонск
Сообщений: 2084
 Arduino. Ознакомление
Только резиновых.
proger
Отправлено: 12.12.2016 21:43  Обновлено: 12.12.2016 21:43
Старший сотрудник
Дата регистрации: 07.01.2010
Откуда:
Сообщений: 94
 Arduino. Ознакомление
Arduino это устаревшая платформа как и AVR. Даже близко не сравнится с STM32.
evildesign
Отправлено: 12.12.2016 22:00  Обновлено: 12.12.2016 22:00
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3555
 Arduino. Ознакомление
Мля...  К слову, библиотеки периферии от стм32 намного рукожопее библиотек ардуино. Да и ниши у стм и ардуино разные.
proger
Отправлено: 12.12.2016 23:41  Обновлено: 12.12.2016 23:41
Старший сотрудник
Дата регистрации: 07.01.2010
Откуда:
Сообщений: 94
 Arduino. Ознакомление
Я видел библиотеки ардуины. Это "шедевр" использовать C++ с динамическим созданием объектов в МК со столь ограниченными ресурсами. Еще один "шедевр" это сплошной ногодрыг даже в тех случаях когда задачу можно решить аппаратно.
Да и дело не в библиотеках. Процессорное ядро и периферия в STM32 намного продвинутее чем в ARV ATmega на которой построена ардуина.
https://geektimes.ru/post/255796/
https://geektimes.ru/post/263210/
Kosmonavt
Отправлено: 07.02.2019 17:33  Обновлено: 08.02.2019 23:07
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Вот тоже обзавёлся этой китайской платой. Пока что получилось заставить мигать светодиоды. Забавная вещица.
KT315
Отправлено: 09.02.2019 0:25  Обновлено: 09.02.2019 0:25
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Будешь по ней статьи писать? 
Kosmonavt
Отправлено: 09.02.2019 5:22  Обновлено: 09.02.2019 5:22
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
А что, будешь читать?
anatoliy03
Отправлено: 09.02.2019 8:22  Обновлено: 09.02.2019 8:22
Старший сотрудник
Дата регистрации: 10.07.2010
Откуда: Крым.Керчь.
Сообщений: 121
 Arduino. Ознакомление
А что, реально, физически происходит внутри микроконтроллера во время прошивки?
evildesign
Отправлено: 09.02.2019 9:57  Обновлено: 09.02.2019 9:57
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3555
 Arduino. Ознакомление
А зачем нужно знать ответ на этот вопрос?
anatoliy03
Отправлено: 09.02.2019 14:44  Обновлено: 09.02.2019 14:44
Старший сотрудник
Дата регистрации: 10.07.2010
Откуда: Крым.Керчь.
Сообщений: 121
 Arduino. Ознакомление
Почему все не исчезает, после отключения питания?
Можно, какой-то пример на пальцах, для чайника?
evildesign
Отправлено: 09.02.2019 15:52  Обновлено: 09.02.2019 15:52
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3555
 Arduino. Ознакомление
А почему на флэшке записанное не исчезает когда вытягивают ее из компьютера?
anatoliy03
Отправлено: 09.02.2019 19:24  Обновлено: 09.02.2019 19:24
Старший сотрудник
Дата регистрации: 10.07.2010
Откуда: Крым.Керчь.
Сообщений: 121
 Arduino. Ознакомление
Спаасибо
Про флешку информации много.
KT315
Отправлено: 10.02.2019 18:34  Обновлено: 10.02.2019 18:34
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Буду
Kosmonavt
Отправлено: 11.02.2019 7:55  Обновлено: 11.02.2019 7:55
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Вот прибудут датчики и дисплей с Алика, как что получится там видно будет.
KT315
Отправлено: 11.02.2019 23:32  Обновлено: 11.02.2019 23:32
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Лучше начать с простого, помигать светодиодами...
Kosmonavt
Отправлено: 11.02.2019 23:50  Обновлено: 11.02.2019 23:50
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Это уже сделано, нужно двигаться дальше.
KT315
Отправлено: 12.02.2019 22:33  Обновлено: 12.02.2019 22:33
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Как накодить бегущий огонь на ардуине?
MACTEP
Отправлено: 16.02.2019 9:20  Обновлено: 16.02.2019 9:20
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
Kosmonavt, у меня есть куча модулей (датчиков) для ардуино, мне не нужны, могу тебе подарить.
MACTEP
Отправлено: 16.02.2019 9:24  Обновлено: 16.02.2019 9:25
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
КТ, если просто, то поочередно выдать сигнал на один вывод, создать паузу, погасить вывод,и так далее, если нужно только такие бегущие огни,этого достаточно, но программисты так не делают, да и бессмыслено делать на ардуино то, что сделает ие8.
Делается база эффектов, затем выбирается эффект и выводится последовательно на выводы.
Kosmonavt
Отправлено: 16.02.2019 9:59  Обновлено: 16.02.2019 10:06
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Вот спасибо! С удовольствием приму! Буду очень рад! Как лучше сделаем? От меня человек будет в Тирасполе 25 февраля с 12 до 15 часов. Можно через маршрутку или почту. Сам приехать не могу, болею.
Kosmonavt
Отправлено: 16.02.2019 11:03  Обновлено: 16.02.2019 17:42
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Цитата:
 KT315 пишет: Как накодить бегущий огонь на ардуине?
Накодил, вот видео; https://youtu.be/X9fQP8jWYHg

Сам код:
void setup() {
  pinMode(6OUTPUT);     //6 пин на вывод
  pinMode(7OUTPUT);     //7 пин на вывод
  pinMode(8OUTPUT);     //8 пин на вывод
  pinMode(9OUTPUT);     //9 пин на вывод
  pinMode(10OUTPUT);     //10 пин на вывод
  pinMode(11OUTPUT);     //11 пин на вывод
  pinMode(12OUTPUT);     //12 пин на вывод
  pinMode(13OUTPUT);     //13 пин на вывод
}
void loop() {
  digitalWrite(13HIGH);  // включаем светодиод на пине 13
  delay(200);              // пауза 200 мСек
  digitalWrite(13LOW);   // отключаем светодиод на пине 13
  delay(200);              // пауза 200 мСек
  digitalWrite(12HIGH);  // включаем светодиод на пине 12
  delay(200);              // пауза 200 мСек
  digitalWrite(12LOW);   // отключаем светодиод на пине 12
  delay(200);              // пауза 200 мСек
  digitalWrite(11HIGH);  // включаем светодиод на пине 11
  delay(200);              // пауза 200 мСек
  digitalWrite(11LOW);   // отключаем светодиод на пине 11
  delay(200);              // пауза 200 мСек
  digitalWrite(10HIGH);  // включаем светодиод на пине 10
  delay(200);              // пауза 200 мСек
  digitalWrite(10LOW);   // отключаем светодиод на пине 10
  delay(200);              // пауза 200 мСек
  digitalWrite(9HIGH);  // включаем светодиод на пине 9
  delay(200);              // пауза 200 мСек
  digitalWrite(9LOW);   // отключаем светодиод на пине 9
  delay(200);              // пауза 200 мСек
  digitalWrite(8HIGH);  // включаем светодиод на пине 8
  delay(200);              // пауза 200 мСек
  digitalWrite(8LOW);   // отключаем светодиод на пине 8
  delay(200);              // пауза 200 мСек
  digitalWrite(7HIGH);  // включаем светодиод на пине 7
  delay(200);              // пауза 200 мСек
  digitalWrite(7LOW);   // отключаем светодиод на пине 7
  delay(200);              // пауза 200 мСек
  digitalWrite(6HIGH);  // включаем светодиод на пине 6
  delay(200);              // пауза 200 мСек
  digitalWrite(6LOW);   // отключаем светодиод на пине 6
  delay(200);              // пауза 200 мСек
}
MACTEP
Отправлено: 16.02.2019 11:25  Обновлено: 16.02.2019 11:25
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
Вышлю по почте.
MACTEP
Отправлено: 16.02.2019 11:30  Обновлено: 16.02.2019 11:30
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
О, 25 февраля выходной вроде. Тогда можно будет через твоего человека.
Kosmonavt
Отправлено: 16.02.2019 11:39  Обновлено: 16.02.2019 11:39
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Тогда отлично, 25 числа мой человек будет в Тирасполе и позвонит на ваш номер.
Kosmonavt
Отправлено: 16.02.2019 13:53  Обновлено: 16.02.2019 13:53
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Вообще красота: https://youtu.be/f2dQRWq85x0
Нравится мне эта игрушка!
Kosmonavt
Отправлено: 16.02.2019 19:21  Обновлено: 05.03.2019 21:10
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Пример случайного включения одного из восьми светодиодов
long randNumber;
void setup() {
  pinMode(6OUTPUT);  //6 пин на вывод
  pinMode(7OUTPUT);  //7 пин на вывод
  pinMode(8OUTPUT);  //8 пин на вывод
  pinMode(9OUTPUT);  //9 пин на вывод
  pinMode(10OUTPUT);  //10 пин на вывод
  pinMode(11OUTPUT);  //11 пин на вывод
  pinMode(12OUTPUT);  //12 пин на вывод
  pinMode(13OUTPUT);  //13 пин на вывод
}
void loop() {
  // выводим случайное число из диапазона 6..13
  randNumber random(614);
  digitalWrite(randNumberHIGH);  // включаем светодиод на случайном пине одного из 6-13 
  delay(100);  // пауза 100 мСек
  digitalWrite(randNumberLOW);   // отключаем светодиод на случайном пине одного из 6-13
  delay(100);  // пауза 100 мСек
}
Kosmonavt
Отправлено: 16.02.2019 19:52  Обновлено: 05.03.2019 21:10
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Псевдотелевизор или имитация работы некой загадочной аппаратуры
long randNumber;
void setup() {
  pinMode(6OUTPUT);
  pinMode(7OUTPUT);
  pinMode(8OUTPUT);
  pinMode(9OUTPUT);
  pinMode(10OUTPUT);
  pinMode(11OUTPUT);
  pinMode(12OUTPUT);
  pinMode(13OUTPUT);
}
void loop() {
  randNumber random(614);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  randNumber random(614);
  delay(100);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberHIGH);
  delay(100);
  randNumber random(614);
  digitalWrite(randNumberLOW);
  delay(100);
}
MACTEP
Отправлено: 16.02.2019 20:06  Обновлено: 16.02.2019 20:06
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
http://radio-hobby.org/modules/instruction/arduino/lang_arduino
Я начал оформлять ознакомление с ардуино, там не все, но может поможет (крестик открывает подпункты)
wolf170571
Отправлено: 16.02.2019 20:24  Обновлено: 16.02.2019 20:24
Технический Директор
Дата регистрации: 08.01.2009
Откуда: Tallinn
Сообщений: 2946
Пользователь активен!
 Arduino. Ознакомление
А что такое "Arduino"?
Kosmonavt
Отправлено: 18.02.2019 4:04  Обновлено: 18.02.2019 23:32
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Цитата:
А что такое "Arduino"?
http://radio-hobby.org/modules/instruction/arduino

Понравилось то, как работает Ардуино с логическим (булевым) типом данных boolean. Такой простой пример: жмём кнопку и отпускаем - включается светодиод, снова жмём кнопку и отпускаем - светодиод гаснет, удерживаем кнопку нажатой - светодиод мигает с периодом в половину секунды. Дребезг контактов кнопки устраняется введением в код паузы delay(500); в половину секунды. 
Открыть изображение в новом окне
int LEDpin 12// Светодиод на входе 12
int switchPin 5// выключатель на порту 5, замыкает на землю
 
boolean running false;
 
void setup()
{
  
pinMode(LEDpinOUTPUT);
  
pinMode(switchPinINPUT);
  
Serial.begin(9600);
}
 
void loop()
{
    if (
digitalRead(switchPin) == LOW)
  {
    
delay(500); // ждем 0.5сек
    
running = !running// меняем значение булевой переменной
    
digitalWrite(LEDpinrunning); // включаем или выключаем светодиод.
    
Serial.println(digitalRead(switchPin)); //считывание значений монитором с порта 5
  
}
}

Kosmonavt
Отправлено: 18.02.2019 4:12  Обновлено: 18.02.2019 4:13
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Цитата:
Я начал оформлять ознакомление с ардуино, там не все, но может поможет (крестик открывает подпункты)
Хорошо, жду остальные возможности, ведь нужно всё попробовать, а заодно пригодится в дальнейшем. А так приходится выискивать примеры, а они, бывают выложены с ошибкой, чаще забывают поставить точку с запятой ; или фигурные скобки { } и не сразу начинают у меня работать.
MACTEP
Отправлено: 18.02.2019 19:05  Обновлено: 18.02.2019 19:06
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
Да вряд ли будет продолжение... Ты первый,кто заинтересовался.
 Могу помочь с программированием, если что. А продолжать эту тему... В комментариях к статье больше стеба, чем реальной заинтересованности.
KT315
Отправлено: 19.02.2019 15:05  Обновлено: 19.02.2019 15:05
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Круть) Только у меня ардуина без ЮСБ разъема, и я не знаю как её прошить
https://i.ebayimg.com/images/i/221030168024-0-1/s-l1000.jpg

А у тебя ардуина на атмега32?
Kosmonavt
Отправлено: 19.02.2019 15:37  Обновлено: 19.02.2019 15:37
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Цитата:
 у меня ардуина без ЮСБ разъема, и я не знаю как её прошить
Нужен USB TTL адаптер
Видео: Прошивка arduino pro mini с помощью USB/TTL Adapter
MACTEP
Отправлено: 19.02.2019 23:09  Обновлено: 19.02.2019 23:09
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
О, Kosmonavt, хорошо,что ты в курсе,а то я тебе там передам в том числе и Pro Mini с адаптером
Kosmonavt
Отправлено: 19.02.2019 23:23  Обновлено: 19.02.2019 23:26
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
СПАСИБО! Буду должен! Сижу на больничном, ерундой разной занимаюсь, ни как не могу дождаться 25-го числа 
KT315
Отправлено: 20.02.2019 13:05  Обновлено: 20.02.2019 13:05
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
МАСТЕР, а ты больше не хочешь кодить на ардуине?((
evildesign
Отправлено: 20.02.2019 16:11  Обновлено: 20.02.2019 16:11
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3555
 Arduino. Ознакомление
Ардуина для лохов. Нормальные пацаны кодят на BBC micro:bit
MACTEP
Отправлено: 20.02.2019 20:02  Обновлено: 20.02.2019 20:02
Администратор
Дата регистрации: 07.08.2008
Откуда: Тирасполь
Сообщений: 6582
 Arduino. Ознакомление
На Ардуину тоже вроде есть какой то детский редактор - конструктор
evildesign
Отправлено: 20.02.2019 20:28  Обновлено: 20.02.2019 20:28
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3555
 Arduino. Ознакомление
Ну скрэтч не совсем детский редактор. http://s4a.cat/
Kosmonavt
Отправлено: 22.02.2019 3:26  Обновлено: 22.02.2019 4:10
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
У меня скрэтч, сперва, ни как не находит плату. Оказывается нужно было загрузить прошивку на саму Ардуино, а потом уже запускать скрэтч. Дети рисуют анимашки, мультики используя костюмы (сцены) задавая им алгоритм движения с озвучкой. Блоки алгоритма имееют "вырезы" как у пазлов, это наверное, чтобы дети складывали совместимые блоки, всё как в игре.
Kosmonavt
Отправлено: 25.02.2019 19:37  Обновлено: 26.02.2019 17:02
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Цитата:
Отправитель: MACTEP  Отправлено: 16.02.2019 9:20:55
Kosmonavt, у меня есть куча модулей (датчиков) для ардуино, мне не нужны, могу тебе подарить.
Неожиданно много разных датчиков, о существовании некоторых даже не подозревал! Все датчики в отличном состоянии, выполнены качественно. Разглядывали подарок с большим интересом, со своими домашними. Всем интересно посмотреть как они проявят себя в работе. Одним словом мы были очень удивлены и ни кто не остался равнодушным от столь щедрого подарка. ОГРОМНОЕ СПАСИБО за эти модули, я сам не ожидал! Представляю сколько впереди интересного ждёт! Приступим...
Открыть изображение в новом окне
Kosmonavt
Отправлено: 26.02.2019 0:16  Обновлено: 26.02.2019 19:25
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Arduino. Ознакомление
Цитата:
Отправитель: KT315  Отправлено: 19.02.2019 15:05:19

Круть) Только у меня ардуина без ЮСБ разъема, и я не знаю как её прошить
https://i.ebayimg.com/images/i/221030168024-0-1/s-l1000.jpg 

Если у тебя Arduino Pro Mini Atmega328 5V-16MHz и есть адаптер, то попробуй соединить их так и заодно проверишь работу светодиода на плате:
Открыть изображение в новом окне
После подключения к USB, запусти программу Arduino и выбери всё как на рисунках ниже:
Открыть изображение в новом окне
Открыть изображение в новом окне
Открыть изображение в новом окне
Открыть изображение в новом окне
Открыть изображение в новом окне

Теперь проверим работу светодиода на плате:
Открыть изображение в новом окне
Открыть изображение в новом окне
На плате должен начать мигать светодиод с периодом в одну две секунды (исправлено).
evildesign
Отправлено: 26.02.2019 18:57  Обновлено: 26.02.2019 18:57
Модератор
Дата регистрации: 26.01.2010
Откуда: Тирасполь
Сообщений: 3555
 Arduino. Ознакомление
Период 2 секунды
Kosmonavt
Отправлено: 02.03.2019 15:48  Обновлено: 05.03.2019 21:07
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Тест работоспособности портов и наличия КЗ между выводами Arduino
#define FIRST_PIN 0 // первый вывод
#define LAST_PIN 19 // последний вывод

void Test1(byte pin)
{
  if(
pin 10Serial.print(" PIN:  ");
  else 
Serial.print(" PIN: ");
  
Serial.print(pin);
  
pinMode(pinOUTPUT);
  
digitalWrite(pin0);
  
Serial.print("    LOW: ");
  if(!
digitalRead(pin)) Serial.print("OK  ");
  else 
Serial.print("FAIL");
  
digitalWrite(pin1);
  
Serial.print("  HIGH: ");
  if(
digitalRead(pin)) Serial.print("OK  "); 
  else 
Serial.print("FAIL");
  
pinMode(pinINPUT);
  
Serial.print("  PULL UP: ");
  if(
digitalRead(pin)) Serial.print("OK  ");
  else 
Serial.print("FAIL");
  
digitalWrite(pin0);
}

void Test2(byte pin)
{
  
Serial.print("     ");
  
pinMode(pinOUTPUT);
  
digitalWrite(pin1);
  
delay(5);
  if(!
digitalRead(pin))Serial.println("SHORT");
  else 
Serial.println("OK");
  
pinMode(pinINPUT); 
  
digitalWrite(pin0);

}

void setup() {
  
Serial.begin(9600); 

  
Serial.println("Test of short circuit on GND or VCC and between pins:");
  
Serial.println();
  for(
byte i FIRST_PIN<= LAST_PINi++) 
  {
    for(
byte j FIRST_PIN<= LAST_PINj++) 
    {
      
pinMode(jINPUT);
      
digitalWrite(j0);
    }
    
Test1(i);

    for(
byte j FIRST_PIN<= LAST_PINj++) 
    {
      
pinMode(jOUTPUT);
      
digitalWrite(j0);
    }
    
Test2(i);
  }

  for(
byte j FIRST_PIN<= LAST_PINj++) 
  {
    
pinMode(jINPUT);
    
digitalWrite(j0);
  }
}

void loop() {}
KT315
Отправлено: 03.03.2019 16:43  Обновлено: 03.03.2019 16:43
V.I.P.
Дата регистрации: 24.06.2011
Откуда: Мухосранск
Сообщений: 2241
Пользователь активен!
 Arduino. Ознакомление
Сп! Найду этот переходник и попробую!
Kosmonavt
Отправлено: 04.03.2019 1:12  Обновлено: 04.03.2019 1:22
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Часы на Arduino и TM1637
Открыть изображение в новом окне
/*
 * A library for the 4 digit display
 *
 * Copyright (c) 2012 seeed technology inc.
 * Website    : www.seeed.cc
 * Author     : Frankie.Chu
 * Create Time: 9 April,2012
 * Change Log :
 *
 * The MIT License (MIT)
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
#include <TimerOne.h>
#include "TM1637.h"
#define ON 1
#define OFF 0

int8_t TimeDisp[] = {0x00,0x00,0x00,0x00};
unsigned char ClockPoint 1;
unsigned char Update;
unsigned char halfsecond 0;
unsigned char second;
unsigned char minute 0;
unsigned char hour 12;


#define CLK 2//pins definitions for TM1637 and can be changed to other ports
#define DIO 3
TM1637 tm1637(CLK,DIO);

void setup()
{
  
tm1637.set();
  
tm1637.init();
  
Timer1.initialize(500000);//timing for 500ms
  
Timer1.attachInterrupt(TimingISR);//declare the interrupt serve routine:TimingISR
}
void loop()
{
  if(
Update == ON)
  {
    
TimeUpdate();
    
tm1637.display(TimeDisp);
  }

}
void TimingISR()
{
  
halfsecond ++;
  
Update ON;
  if(
halfsecond == 2){
    
second ++;
    if(
second == 60)
    {
      
minute ++;
      if(
minute == 60)
      {
        
hour ++;
        if(
hour == 24)hour 0;
        
minute 0;
      }
      
second 0;
    }
    
halfsecond 0;
  }
 
// Serial.println(second);
  
ClockPoint = (~ClockPoint) & 0x01;
}
void TimeUpdate(void)
{
  if(
ClockPoint)tm1637.point(POINT_ON);
  else 
tm1637.point(POINT_OFF);
  
TimeDisp[0] = hour 10;
  
TimeDisp[1] = hour 10;
  
TimeDisp[2] = minute 10;
  
TimeDisp[3] = minute 10;
  
Update OFF;
}
Kosmonavt
Отправлено: 12.03.2019 2:50  Обновлено: 12.03.2019 2:55
Главный Инженер
Дата регистрации: 08.02.2009
Откуда: Днестровск
Сообщений: 1442
 Симуляция работы Arduino Uno в программе Proteus 8.7
Симуляция работы Arduino Uno (пример Blink - мигающий встроенный светодиод на плате) в программе Proteus 8.7.
Скетч пишем как обычно или берём готовый пример, но в настройках программы Arduino ставим галочку: Файл->Настройки->Компиляция.
Затем жмём проверить скетч. Отправляемся заглянуть в папку c:\Users\Vasiliy\AppData\Local\Temp\
Здесь отыскиваем папку примерно такого названия arduino_build_747962\
Заходим в неё и ищем файл с расширением *.hex, а точнее Blink.ino.hex
Копируем его адрес, должно выглядеть так: c:\Users\Vasiliy\AppData\Local\Temp\arduino_build_747962\Blink.ino.hex
В программе Proteus в поле деятельности добавляем плату Arduino Uno и два раза кликаем на сам процессор.
Появится окно, где кроме всего прочего нужно вставить в строку напротив Program File: то что мы скопировали выше и нажать ОК.
Затем нажать знак треугольника (Run the simulation) в левом нижнем углу окна. Всё. Светодиод должен начать мигать.
Открыть изображение в новом окне
Lismus
Отправлено: 05.05.2019 20:48  Обновлено: 05.05.2019 20:49
Младший сотрудник
Дата регистрации: 09.10.2013
Откуда:
Сообщений: 26
 Тест работоспособности портов и наличия КЗ между выводами Arduino
слежу за развитием темы. новенького ничего не появилось??

Разное

Чтобы защитить стержень от обгорания, его нужно обмазать тонким слоем смеси силикатного клея и сухой минеральной краски (окись железа, цинка и магния).

Интересно

Паяльник в дежурном нагреве включайте через диод, этим Вы значительно продлите ему жизнь.

Похожие новости