Шаблон:Arduino/Примеры: различия между версиями
Myagkij (обсуждение | вклад) |
Myagkij (обсуждение | вклад) |
||
Строка 568: | Строка 568: | ||
===Библиотека Servo=== | ===Библиотека Servo=== | ||
<gallery mode="traditional" widths=200px heights=200px> | |||
Файл:Knob bb.png|link=Arduino:Примеры/Knob|[[Arduino:Примеры/Knob|Как настроить Arduino Robot таким образом, чтобы при кручении потенциометра вращался вал сервомотора.]] | |||
Файл:Sweep bb.png|link=Arduino:Примеры/Sweep|[[Arduino:Примеры/Sweep|Вращение валом сервомотора вперед и назад.]] | |||
</gallery> | |||
===Библиотека Software Serial=== | ===Библиотека Software Serial=== |
Версия от 09:46, 8 января 2023
Примеры
Стандартные функции
Простые программы, которые демонстрируют основные команды Arduino.
Они включены в среду Arduino; чтобы открыть их, нажмите кнопку "Открыть" на панели инструментов и посмотрите в папке примеров.
Основы
Цифровой сигнал
Аналоговый сигнал
Связь
Эти примеры позволяют Arduino «общаться» со скетчами для Processing, запущенными на компьютере. Для более подробной информации о Processing пройдите сюда – processing.org (там же можно скачать программу).
Здесь также представлены патчи Max/MSP, связанные со скетчами Arduino. Более подробно о Max/MSP читайте на Cycling 74. О патчах для Pd, которые могут работать с этими примерами, читайте в примерах Скотта Фитцджеральда.
Управляющие структуры
Датчики
Дисплей
Примеры, объясняющие основы управления дисплеем:
Строки
USB (для Leonardo, Micro и Due плат)
В этой секции имеют место примеры, которые демонстрируют использование библиотек, уникальных для плат Leonardo, Micro и Due.
Клавиатура
Мышь
Разное
Использование сдвигового регистра 74HC595
Использование одного сдвигового регистра 74HC595
- ShftOut11 - Простая передача битов
- ShftOut12 - Один за одним
- ShftOut13 - Использование массива
- Управление светодиодами с помощью сдвигового регистра 74HC595
- Создание эффекта "бегущий всадник" с помощью сдвигового регистра 74HC595
- Гистограмма расстояния с помощью сдвигового регистра 74HC595 и ИК-датчика расстояния
Использование двух сдвиговых регистров 74HC595
- ShftOut21 - Два светодиодных счетчика от «0» до «255» (в двоичном формате)
- ShftOut22 - Поочередное зажигание 16 светодиодов
- ShftOut23 - Использование двух массивов
Использование сдвигового регистра CD4021B
Использование одного сдвигового регистра CD4021B
- ShftIn11 - Простой ввод данных
- ShftIn12 - Какая кнопка нажата?
- ShftIn13 - Проверка разных комбинаций
- ShftIn14 - Нажата ли кнопка?
Использование двух сдвиговых регистров CD4021B
- ShftIn21 - Простой ввод данных от двух сдвиговых регистров
- ShftIn22 - Проверка разных комбинаций на двух комплектах переключателей
- ShftIn23 - Печать включенных настроек
DHT
BMP180
Датчики дождя
Датчики влажности
Датчики освещенности
Температурные датчики
Часы реального времени
Датчики газа/дыма
Ультразвуковые датчики
Датчики движения
Уклономеры
Датчики звука
Герконы
RFID
Реле
nRF24L01
Приемники/передатчики RF 433 MHz
OLED-дисплеи
LCD-дисплеи
Светодиодные матрицы
Cветодиодные ленты
Клавиатуры
Роботы
Датчик цвета
Управление DC-моторами
Управление серводвигателями
Управление RGB-светодиодом
Источники звука
Последовательный порт
Использование библиотеки Keyboard
Использование библиотеки Wire
Использование библиотеки SPI
Использование библиотеки SD
- Запись произвольных данных на SD карту
- Чтение и запись произвольных данных на SD карту
- Чтение и запись произвольных данных на SD карту с использованием часов реального времени
- Регистратор прохода через дверь
Использование библиотеки Ethernet
Использование прерываний
Аппаратные прерывания
Прерывания по таймеру
Библиотеки
Примеры к библиотекам, входящим в состав ПО для Arduino.
Библиотека Bridge (для Arduino Yún)
- Bridge - Доступ к контактам платы через веб-браузер.
- Console ASCII Table - Демонстрирует, как выводить на консоль символы в разных форматах.
- Console Pixel - Управление светодиодом при помощи консоли.
- Console Read - Анализ информации, пришедшей через консоль, а затем отправка ее обратно.
- Datalogger - Сохранение информации от датчика на SD-карте.
- File Write Script - Демонстрирует, как при помощи класса Process записывать shell-скрипт в файловую систему Yun, а затем исполнять его.
- HTTP Client - Создает простой клиент, который загружает веб-страницу и выводит ее на Serial Monitor.
- Process - Демонстрирует, как использовать класс Process для запуска Linux-команд.
- Shell Commands - Использует класс Process для запуска shell-команд.
- Temperature Web Panel - После запроса через браузер постит на веб-странице данные от датчика.
- TimeCheck - Берет информацию о текущем времени от сетевого сервера времени, а затем выводит ее на Serial Monitor.
- WiFiStatus - Запускает преднастроенный скрипт, который в ответ сообщает о мощности сигнала в текущей WiFi-сети.
- Yun Serial Terminal - Доступ к Linux Terminal через Serial Monitor.
- MailboxReadMessage - Отправляет процессору Arduino текстовые сообщения через браузер и при помощи REST API.
Примеры для Temboo На сайте Temboo есть отдельная секция о библиотеке Temboo и примерах с использованием IDE Arduino. Смотрите здесь.
Примеры для Spacebrew Для Yun и Spacebrew существует множество примеров. Подробнее смотрите на страницах с проектной документацией.
Советы и хитрости при работе с Linux
- Pacakage Manager - Как установить на Yun дополнительное ПО.
- Expanding Yún disk space - Как расширить дисковое пространство Yun при помощи SD-карты.
Библиотека EEPROM
Библиотека Esplora
Esplora для начинающих
Esplora для экспертов
Библиотека Ethernet
Библиотеки Firmata
Библиотека GSM
Примеры для GSM
- GSM Examples Make Voice Call - Генерация телефонного звонка через Serial Monitor при помощи GSM Shield.
- GSM Examples Receive Voice Call - Проверка статуса модема и прием голосовых звонков.
- GSM Examples Send SMS - Использование Serial Monitor, чтобы печатать и отправлять SMS-сообщения на разные телефонные номера.
- GSM Examples Receive SMS - Получение SMS-сообщений и их показ на Serial Monitor.
- GSM Examples Web Client - Загрузка содержимого вебсайта на плату Arduino при помощи GPRS.
- GSM Examples Web Server
Инструменты для GSM
- GSM Examples Test Modem - Получение IMEI-номера модема.
- GSM Examples Test GPRS - Проверка функциональности GPRS-сети при помощи SIM-карты.
- GSM Examples GSM Scan Networks - Проверка доступных сетей.
- GSM Examples Pin Management - Управление PIN-кодом вашей SIM-карты.
- GSM Examples Band Management - Управление диапазон частот, к которым подключается GSM Shield.
- GSM Examples Test Web Server - Создание веб-сервера при помощи GSM Shield.
Библиотека LiquidCrystal
- LiquidCrystal Hello World - Показывает надпись «Hello, World!» и секунды с последнего RESET’а.
- LiquidCrystal Blink - Управление блокообразным курсором.
- LiquidCrystal Cursor - Управление курсором в виде нижнего подчеркивания.
- LiquidCrystal Display - Как быстро погасить дисплей, при этом не теряя имеющейся на нем информации.
- LiquidCrystal TextDirection - Управление тем, в какую сторону от курсора будет перемещаться текст.
- LiquidCrystal Scroll - Изменение направления двигающегося текста.
- LiquidCrystal Serial input - Принимает данные, пришедшие черед последовательный порт и отображает их.
- LiquidCrystal SetCursor - Устанавливает позицию курсора.
- LiquidCrystal Autoscroll - Автоматическое смещение текста.
Библиотека SD
- Card Info – Получение информации о SD-карте
- Yún Datalogger – Запись на SD-карту логов от трех аналоговых датчиков
- Datalogger – Регистрация данных от датчиков при помощи SD-карты
- Dump File – Считывание файла с SD-карты
- Files – Создание/удаление файла с SD-карты
- List Files – Отображение списка файлов и папок, находящихся в указанной директории на SD-карте
- Read Write – Считывание/запись данных на SD-карту
Библиотека Robot
- Robot Logo - Как задать направление движения для робота при помощи встроенной клавиатуры.
- Robot Line Following - Рисуем «гоночный трек» и программируем робота, чтобы он по нему ехал.
- Robot Disco Bot - Превращаем робота в музыкальный проигрыватель, который, к тому же, умеет еще и танцевать.
- Robot Compass - Настраиваем компас и ищем карту сокровищ (опционально).
- Robot Inputs - Учимся, как управлять потенциометром и кнопками на верхней (контрольной) плате Arduino Robot.
- Robot Wheel Calibration - Регулируем точность колес.
- Robot Runaway Robot - Оснащаем робота дальномером, а затем играем с ним в пятнашки (опционально).
- Robot Remote control - Удаленное управление роботом при помощи пульта от телевизора.
- Robot Picture browser - Хотите просматривать на экране Arduino Robot собственные картинки?
- Robot Rescue - «Спасение пострадавших».
- Robot Hello User - Взламываем приветственное демо Arduino Robot и делаем на его основе собственное.
- Robot Calibrate Compass - Калибруем компас-модуль, чтобы он вращался равномерно (для старых моделей, использующих Honeywell HMC 6352).
Библиотека SPI
Библиотека Servo
Библиотека Software Serial
- Software Serial Example - Объясняет, как использовать библиотеку SoftwareSerial... потому что иногда одного последовательного порта просто недостаточно.
- Two Port Receive - Как работать с несколькими портами типа Software Serial.
Библиотека Stepper
- Motor Knob – Управление очень точным шаговым мотором при помощи потенциометра
- Stepper One Revolution – Поворот вала на один оборот по часовой стрелке и на один оборот против часовой стрелки
- Stepper One Step At A Time – Пошаговый поворот вала для проверки того, правильно ли подключен мотор
- Stepper Speed Control – Управление скоростью «шагов» при помощи потенциометра
Библиотека TFT
Esplora
Arduino
Библиотека Wire
Библиотека WiFi
- Connect No Encryption - Демонстрирует, как подключаться к открытой сети.
- Connect With WEP - Демонстрирует, как подключаться к WEP-зашифрованной сети.
- Connect With WPA - Демонстрирует, как подключаться к сети, зашифрованной через WPA2 Personal.
- Scan Networks - Показывает все доступные WiFi-сети.
- WiFi Chat Server - Настраиваем простой чат-сервер.
- WiFi Web Client - Подключаемся к удаленному веб-серверу.
- WiFi Web Client Repeating - Делаем повторяющиеся HTTP-запросы на сервер.
- WiFi Web Server - Настраиваем Arduino и WiFi Shield, чтобы они служили веб-сервером с веб-страницей.
- WiFi Send Receive UDP String – Отправка и получение текстовых строк через UDP при помощи WiFi-модуля
- WiFi Udp NTP Client – Создание при помощи WiFi-модуля клиента, запрашивающего время через NTP
Только для Arduino 101
Библиотека CurieBLE
- Genuino101CurieBLEHeartRateMonitor - Отслеживание пульса
- Genuino101CurieBLEBatteryMonitor - Отслеживание уровня заряда батареи
- Genuino101CurieBLEButtonLED - Включение/выключение светодиода нажатием на кнопку
- Genuino101CurieBLECallbackLED - Включение/выключение светодиода нажатием на кнопку (с помощью функций внешнего вызова)
- Genuino101CurieBLELED - Включение/выключение светодиода
Библиотека Curie IMU
- Curie IMU Orientation Visualizer - 3D-визуализатор положения платы в пространстве
- Curie IMU Accelerometer - Считывание данных с акселерометра
- Curie IMU Accelerometer Orientation - Короткие уведомления о положении платы в пространстве
- Curie IMU Gyro - Считывание данных с гироскопа
- Curie IMU Raw Imu Data Serial - Считывание данных с гироскопа и акселерометра одной функцией
- Curie IMU Shock Detect - Определение удара
- Curie IMU Step Count - Счетчик шагов
- Curie IMU Tap Detect - Определение двойного нажатия
Библиотека Curie Timer One
- Curie Timer One Interrupt – Устанавливает таймер и запускает прерывание
- Curie Timer One PWM – Генерация ШИМ-сигнала на цифровом контакте (полное управление всеми параметрами)
Только для Arduino Due
Библиотека Audio
- Simple Audio Player - Простой аудиопроигрыватель
Библиотека Scheduler
- MultipleBlinks – Мигание несколькими светодиодами, выполняемое в их собственных loop-функциях.
Только для Arduino Due, Zero и MKR1000
Библиотека USBHost
- MouseController – Скетч, демонстрирующий работу функций MouseController
- KeyboardController – Скетч, демонстрирующий работу функций KeyboardController
Только для Arduino Zero и MKR1000
Библиотека Audio Frequency Meter Library
- Simple Audio Frequency Meter - Простой измеритель звуковой частоты
Библиотека AudioZero
- Simple Audio Player Zero - Простой аудиопроигрыватель для Arduino Zero
Библиотеки RTC
- Simple RTC - Простые часы реального времени (RTC)
- Simple RTC Alarm - Простой будильник для часов реального времени (RTC)
- Sleep RTC Alarm - RTC-будильник, выводящий плату из спящего режима
Только для WiFi 101 и MKR1000
- wifi101ConnectNoEncryption – Демонстрирует, как подключиться к открытой сети.
- wifi101ConnectWithWEP – Демонстрирует, как подключаться к WEP-зашифрованной сети. wifi101ConnectWithWPA – Демонстрирует, как подключаться к сети, зашифрованной через WPA2 Personal.
- wifi101ConnectWithWPA - Демонстрирует, как подключаться к WPA2 Personal - зашифрованной сети.
- wifi101ScanNetworks – Показывает все доступные WiFi-сети.
- wifi101WiFiChatServer – Настройка простого чат-сервера.
- wifi101WiFiWebClient – Подключение к удаленному веб-серверу.
- wifi101WiFiWebClientRepeating – Генерация повторяющихся HTTP-запросов на сервер.
- wifi101WiFiWebServer – Настройка Arduino и WiFi-модуля, чтобы они служили веб-сервером с веб-страницей.
- Wifi101WiFiUdpSendReceiveString – Отправка и получение текстовых строк через UDP при помощи WiFi-модуля
- wifi101UdpNTPClient – Демонстрирует, как при помощи WiFi-модуля создать клиент, запрашивающий время через NTP
Библиотека CmdMessenger
- Receive – Настройка PC-переключателя для светодиода, встроенного в Arduino.
- SendandReceive – Расширенная версия Receive. Теперь Arduino отсылает обратно статус.
- SendandReceiveArguments – Расширенная версия SendandReceive. Теперь Arduino получает и отправляет множество float-значений.
- SendandReceiveBinaryArguments – Расширенная версия SendandReceiveArguments. Теперь Arduino принимает и отсылает множество двоичных значений, тем самым демонстрируя более эффективный способ коммуникации
- DataLogging – Расширенная версия SendandReceiveBinaryArguments. Теперь при перемещении ползунка PC будет отправлять команды на Arduino.
- ArduinoController – Расширенная версия Receive. Теперь Arduino отправляет обратно статус.
- SimpleWatchdog – Демонстрирует настройку автоматического подключения между PC и Arduino.
- TemperatureControl – Расширенная версия ArduinoController. Демонстрирует, как создать адаптивный интерфейс (в данном случае для отображения температурных данных).
- ConsoleShell – Демонстрирует, как использовать ConsoleShell в качестве оболочки и коммуницировать с нею при помощи консоли. Этот пример отличается от других тем, что для него нет PC-кода.
Библиотека OneWire
- DS18x20 Temperature - Этот пример демонстрирует, как при помощи библиотеки OneWire считывать данные с температурных датчиков типа 1-Wire. Поддерживаются модели DS18S20, DS18B20 и DS1822.
- DS2408 Switch - Этот пример показывает, как при помощи библиотеки OneWire работать с PIO-чипом DS2048.
- DS250x PROM - Этот пример показывает, как считывать данные с PROM-чипа семейства DS250x.
Библиотека PS2Keyboard
- PS2Keyboard International - Работа с разными клавиатурными раскладками
- PS2Keyboard Simple Test - Отображение символов, введенных на клавиатуре
Библиотека SimpleMessageSystem
- SimpleMessageSystem example 1 - Управление функциями Arduino при помощи сообщений
Библиотека SSerial2Mobile
- SSerial2Mobile Example1 - Отправка SMS и имейлов
Библиотека Webduino
- Web AjaxBuzzer - Управление зуммером через браузерный интерфейс (AJAX)
- Web AjaxRGB - Управление RGB-светодиодом через браузерный интерфейс
- Web AjaxRGB mobile - Управление RGB-светодиодом при помощи смартфона
- Web Authentication - HTTP-аутентификация
- Web Buzzer - Управление зуммером через браузерный интерфейс
- Web Demo - Запрос значений на контактах через браузерный интерфейс
- Web HelloWorld - Показ в браузере надписи «Hello, World!»
- Web Image - Показ в браузере иконки со светодиодом
- Web Net Setup - Браузерный интерфейс для настройки сети
- Web Parms - Передача и анализ параметров
Библиотека X10
- x10Blink - Мигание лампочкой
- x10Fade - Управление яркостью лампочки
- x10Multi - Включение/выключение нескольких лампочек
Библиотека XBee
- AtCommand - Отправка AT-запросов к XBee-модулю
- Echo Callbacks - Прослушка входящих пакетов и отправка идентичных ответов
- RemoteAtCommand - Отправка AT-команд на удаленный XBee-модуль
- Series1 IoSamples - Получение данных от удаленного XBee-модуля
- Series1 Rx - Получение пакетов и преобразование в ШИМ-сигнал
- Series1 Tx - Отправка пакетов
- Series2 IoSamples - Получение данных от удаленного XBee-модуля (Series 2)
- Series2 Rx - Получение пакетов и преобразование в ШИМ-сигнал (Series 2)
- Series2 Rx Nss - Получение и отображение пакетов (Series 2)
- Series2 Sleep - Введение и выведение XBee-модуля из режима ожидания
- Series2 Tx - Отправка пакетов (Series 2)
- ZdpScan - Поиск узлов в XBee-сети
Библиотека CapacitiveSensing
- Demo Sketch - Демо-скетч библиотеки CapacitiveSensor
- Threshold - Установление порога для запуска события
Библиотека Bounce
- Bounce - Устранение дребезга при нажатии на кнопку (вариант с одной кнопкой)
- Bounce2Buttons - Устранение дребезга при нажатии на кнопку (вариант с двумя кнопками)
- Change - Определение перехода из HIGH в LOW
- Duration - Определение продолжительности нажатия на кнопку
- Retrigger - Перезапуск события
Библиотека GLCD
- BigNums - Использование текстовых областей
- clockFace - Аналоговые часы
- GLCDdemo - Пример работы нескольких графических функций
- GLCDdiags - Тест памяти и интерфейса GLCD-модуля
- HelloWorld - «Привет, мир!»
- ks0108example - Пример работы нескольких графических функций (версия для ks0108)
- life - Игра «Жизнь»
- Rocket - Игра «Ракета»
- Serial2GLCD - Показ символов, введенных через монитор порта
- GLCD BigDemo - Большое демо
Библиотека LedControl
- Demo for a Led matrix - Управление матрицей светодиодов
- Demo for a 7-segment display - Управление 7-сегментным дисплеем
- Demo for driving more than one MAX72XX - Управление двумя и более MAX72xx
Библиотека LedDisplay
- LedDisplay fade - Печать функцией print() и изменение яркости дисплея
- LedDisplay print - Печать функцией print()
- LedDisplay printAnalog - Печать аналоговых данных
- LedDisplay scroll - Перемещение строки влево/вправо
- LedDisplay scroll multiple - Печать на трех LED-дисплеях
- LedDisplay scroll serial - Печать данных из последовательного порта
- LedDisplay writeCharacters - Печать функцией write()
Библиотека Matrix
- hello matrix - Приветственный смайлик
- sprite animation - Спрайтовая анимация
Библиотека PCD8544
- pcdtest - Тестовый скетч для библиотеки PCD8544
Библиотека ST7735
- graphicstest - Графический тест
- rotationtest - Тест функций вращения
- shieldtest - Перемещение картинки на TFT-дисплее (при помощи джойстика)
- soft spitftbitmap - Вывод изображения на 1,8-дюймовый TFT-дисплей
- spitftbitmap - Вывод изображения на 1,8-дюймовый или 1,44-дюймовый TFT-дисплей
Библиотека FFT
- fft adc - Применение БПФ на данных от АЦП и отправка результата посредством write()
- fft adc serial - Применение БПФ на данных от АЦП и отправка результата посредством println()
- fft codec - Применение БПФ на данных от модуля Codec Shield
Библиотека Tone
Библиотека TLC5940
- BasicAnimations - Базовые анимации
- BasicUse - Базовое использование
- CircularLightBuffer - Анимированный «значок загрузки» из светодиодов
- FadeScope - Простой осциллограф
- Fades - Затухание светодиодов
- Servos - Сервомотор
- UsingProgmem - Использование PROGMEM
Библиотека Time
- TimeArduinoDue - Синхронизация времени с помощью RTC (для Arduino Due)
- TimeGPS - Синхронизация времени с помощью GPS
- TimeNTP - Синхронизация времени с помощью NTP-сервера
- TimeNTP ESP8266WiFi - Синхронизация времени с помощью NTP-сервера и WiFi
- TimeRTC - Синхронизация времени с помощью RTC (для остальных Arduino)
- TimeRTCLog - Учет изменений состояний на контактах с помощью RTC
- TimeRTCSet - Установка RTC-времени
- TimeSerial - Настройка библиотеки Time при помощи последовательного порта
- TimeSerialDateStrings - Настройка библиотеки Time при помощи последовательного порта (со строковыми сообщениями)
- TimeTeensy3 - Синхронизация времени с помощью RTC на Teensy
Библиотека Metro
- blinking - Периодическое мигание светодиодом
- blinking 2 instances - Периодическое мигание двумя светодиодами
- blinking 2 intervals - Мигание светодиодом с использованием двух периодичностей
- serialInterval - Периодическая отправка сообщений по последовательному порту
Библиотека MsTimer2
- FlashLed - Периодическое включение и выключение светодиода
Библиотека FlexiTimer2
- FlashLedFlexiTimer2 - Периодическое включение и выключение светодиода (для FlexiTimer2)
Библиотека PString
- test pstring - Тестовый скетч для класса PString
Библиотека Streaming
- streaming example - Пример для библиотеки Streaming