Arduino leonardo драйвер windows 7

Содержание
  1. Arduino leonardo драйвер windows 7
  2. Руководство к Arduino Leonardo и Micro
  3. Отличия от Arduino Uno
  4. Переназначение порта при сбросе платы.
  5. Отсутствие сброса при открытии последовательного порта.
  6. Эмуляция клавиатуры и мыши.
  7. Раздельное функционирование USB и UART.
  8. Установка драйверов для Arduino Leonardo и Micro
  9. Инструкции для Windows
  10. Linux
  11. Прошивка программ в Arduino Leonardo и Micro
  12. Правила хорошего тона при программировании Arduino Leonardo и Micro
  13. Скачать драйвер CH340 для китайских Arduino
  14. Установка драйвера Ардуино в Windows
  15. Как работает драйвер Ардуино USB-SERIAL CH340
  16. Драйвер для Ардуино Уно, Ардуино Нано, Ардуино Мега
  17. Getting Started with the Arduino Leonardo, Leonardo ETH and Micro
  18. Use your Leonardo, Leonardo ETH and Micro on the Arduino Web IDE
  19. Use your Leonardo, Leonardo ETH and Micro on the Arduino Desktop IDE
  20. Installing drivers for Leonardo, Leonardo ETH and Micro
  21. Open the Blink example
  22. Select your board
  23. Select your serial port
  24. Upload and Run your first Sketch
  25. Tutorials
  26. Please read.
  27. Good Coding Practice With the Leonardo, Leonardo ETH and Micro
  28. Differences from the Arduino Uno
  29. Uploading Code to the Leonardo, Leonardo ETH and Micro
  30. Arduino Leonardo
  31. Характеристики
  32. Схема и исходные данные
  33. Питание
  34. Память
  35. Входы и Выходы
  36. Связь
  37. Программирование
  38. Автоматическая (программная) перезагрузка
  39. Токовая защита разъема USB
  40. Физические характеристики
  41. Arduino leonardo драйвер windows 7
  42. 2. Устанавливаем драйвера
  43. ПОЛЬЗОВАТЕЛЯМ WINDOWS
  44. ПОЛЬЗОВАТЕЛЯМ MAC
  45. ПОЛЬЗОВАТЕЛЯМ LINUX MINT
  46. ПОЛЬЗОВАТЕЛЯМ LINUX ARCH
  47. 3. Настраиваем Arduino IDE
  48. 3.1 Настраиваем Arduino IDE для плат Digispark
  49. 3.2 Настраиваем Arduino IDE для плат на ESP
  50. 4. Установка библиотек Arduino
  51. 5. Основные ошибки при прошивке Arduino (FAQ)
  52. 5.1 Ошибка компиляции
  53. 5.2 Ошибка загрузки
  54. 5.3 Решение конфликтов библиотек
  55. 5.4 pragma message
  56. 5.5 Нехватка памяти
  57. 6. Полезные советы при работе с Arduino
  58. Работа с текстовыми файлами
  59. Написание текста программы
  60. Хаки с питанием
  61. Энергосбережение
  62. 7. Ответы на частые вопросы

Arduino leonardo драйвер windows 7

Руководство к Arduino Leonardo и Micro

Отличия от Arduino Uno

В целом, порядок работы и программирования Leonardo и Micro точно такой же, как и в других моделях Ардуино. Тем не менее, существует и несколько важных отличий.

Переназначение порта при сбросе платы.

Такая организация приводит к тому, что при каждом сбросе платы, USB-соединение с компьютером будет разрываться и устанавливаться вновь. В системе устройство будет исчезать из списка доступных портов, соответственно последовательные порты будут перенумеровываться. Поэтому все программы, в которых был открыт порт Ардуино, потеряют соединение с устройством. Это одно из явных отличий Leonardo/Micro от Arduino Uno, в котором сброс микроконтроллера (ATmega328P) не приводит к разрыву USB-соединения (которое поддерживается дополнительным процессором ATmega8U2 или ATmega16U2). Эти отличия приводит к некоторым особенностям установки драйвера, процесса прошивки и взаимодействия с устройством, которые описаны ниже.

Отсутствие сброса при открытии последовательного порта.

В отличие от Arduino Uno, Arduino Leonardo и Micro не перезапускают загруженный скетч при каждом открытии последовательного порта на компьютере. Это означает, что компьютер не получит данные, отправленные платой до открытия в операционной системе последовательного порта (в том числе, например, данные, отправляемые в блоке setup()).

Такое изменение приводит к тому, что любые функции для передачи последовательных данных (такие, как print(), println(), write() и др.), написанные в блоке setup, не будут вызываться в момент открытия последовательного порта. Чтобы обойти эту проблему, можно программно проверять статус последовательного порта после вызова функции Serial.begin(), например, так:

Эмуляция клавиатуры и мыши.

Раздельное функционирование USB и UART.

Отличия в распиновке.

Распиновка Arduino Leonardo несколько отличается от стандартного расположения некоторых выводов (особенно выводов интерфейсов SPI и TWI). Эти отличия подробно описаны на странице описания устройства.

Установка драйверов для Arduino Leonardo и Micro

Инструкции для Windows

Нижеследующие инструкции, прежде всего, относятся к Windows 7, хотя они также подходят и для Windows XP (лишь с небольшими отличиями в диалоговых окнах).

Linux

Под Linux установка драйверов не требуется вообще. (Проверено на Ubuntu 10.0.4)

Прошивка программ в Arduino Leonardo и Micro

В целом, процесс загрузки программы в Arduino Leonardo или Micro особо ничем не отличается от прошивки Uno или других моделей Ардуино. Достаточно в среде разработки нажать кнопку Upload, и ваша программа будет автоматически загружена в память Ардуино и запущена им на выполнение. В общих чертах этот процесс устроен точно так же, как и в Arduino Uno: среда Arduino инициирует сброс платы, который приводит к запуску загрузчика, отвечающего за получение, хранение и запуска нового скетча.

Правила хорошего тона при программировании Arduino Leonardo и Micro

Несколько слов предостережения об использовании библиотек USB Mouse и Keyboard : постоянно запущенные на устройстве библиотеки Mouse или Keyboard могут сильно усложнить процесс прошивки Ардуино. Такие функции, как Mouse.move() и Keyboard.print() перемещают указатель мыши или постоянно отправляют сигналы о нажатии клавиш подключенному компьютеру, поэтому они должны вызываться только тогда, когда вы готовы обрабатывать поступающие от них события. Рекомендуется использовать какую-нибудь систему управления, позволяющую выключать подобную функциональность, например, в зависимости от положения переключателя или сигнала на выводе, состояние которого вы можете контролировать. Перед использованием функций библиотек Mouse или Keyboard непосредственно с компьютером, лучше всего протестировать возвращаемые ими значения с помощью функции Serial.print(). Так вы сможете удостовериться в правильности отправляемых значений. Подробнее см. примеры работы с библиотеками Mouse и Keyboard.

Эффективное использование программы Serial Monitor: поскольку последовательные данные идут только через один процессор, Ардуино может заполнять приемный буфер компьютера гораздо быстрее, чем другие устройства. Вам следует помнить, что при циклической отправке данных по последовательному интерфейсу, например, так:

Serial Monitor в среде разработки может подтормаживать, поскольку он не будет успевать отображать поступающие от Ардуино данные. Если у вас возникла такая ситуация, добавьте небольшую задержку внутрь вашего цикла, чтобы приемный буфер компьютера не заполнялся слишком быстро. Поможет даже небольшая задержка в 1 мс:

Приложения, работающие с последовательным портом через родные библиотеки, а не через библиотеку RXTX, как правило, считывают данные с порта гораздо быстрее, поэтому в большинстве случаев вы не столкнетесь с этой ошибкой за исключением программ, построенных на базе функций RXTX (в том числе Serial Monitor, Processing и пр.).

Для получения дополнительной информации об Arduino Leonardo и Micro, см. описание устройств Leonardo и Micro. Подробнее о возможностях работы с USB см. справку по библиотекам Mouse и Keyboard.

Источник

Скачать драйвер CH340 для китайских Arduino

На китайских репликах Ардуино для снижения себестоимости платы в качестве преобразователя USB – UART устанавливают микросхему CH340G. С помощью этого чипа Arduino IDE, установленная на компьютере, может взаимодействовать с платой Arduino через USB.

Чип CH340G является качественной микросхемой и ничуть не хуже справляется со своей задачей, чем это делает микроконтроллер ATmega16U2. В момент соединения Arduino с компьютером микросхема CH340G запрашивает у операционной системы открытие порта для взаимодействия. Система Windows ищет USB драйвер для подключенной платы, который должен быть заранее установлен в системе.

Установка драйвера для CH340 очень проста и не вызывает проблем в наиболее распространенных системах Windows 7, Windows 8 и Windows 10.

Для того, чтобы определить какая у вас плата Ардуино и нужно ли вам устанавливать драйвер для микросхемы CH340G, рассмотрим рисунок, на котором приводится сравнение двух плат. Чипы, отвечающие за связь Arduino Uno с компьютером по USB, обведены красным.


Микросхема CH340 выглядит подобным образом не только на платах Ардуино Уно, но и на Ардуино Нано (находится на нижней стороне платы) и Ардуино Мега.

Установка драйвера Ардуино в Windows

Для того, чтобы установить драйвер для Arduino Uno, Nano, Mega, скачайте установщик по ссылке в конце статьи.

Подключите ваш Arduino к компьютеру с помощью USB-кабеля и запустите загруженный файл.

Нажмите кнопку «INSTALL» в появившемся окне.
Дождитесь конца установки и появления сообщения об успешной установке.

Закройте окно программы установки драйвера.
На этом установка драйвера в Windows завершена.

Как работает драйвер Ардуино USB-SERIAL CH340

Драйвер USB-SERIAL CH340 работает в режиме эмуляции последовательного COM-порта. То есть при подключении Ардуино операционная система создает виртуальный COM-порт, с которым и взаимодействует драйвер. Увидеть виртуальный COM-порт, созданный Windows для CH340, можно в диспетчере устройств.

Зайдем в диспетчер устройств (Панель управления >> Система и безопасность >> Система >> Диспетчер устройств) и проверим в разделе «Порты COM и LPT» наличие драйвера USB-SERIAL CH340.

Читайте также:  Windows google keep widget

Драйвер для Ардуино Уно, Ардуино Нано, Ардуино Мега

Скачать USB-драйвер CH340 для Windows

Источник

Getting Started with the Arduino Leonardo, Leonardo ETH and Micro

The Leonardo ETH is a retired product

The Arduino Leonardo, Leonardo ETH and Micro boards use an ATmega32U4 to offer you more functionalities compared to Uno.

The Leonardo, Leonardo ETH and Micro are programmed using the Arduino Software (IDE), our Integrated Development Environment common to all our boards and running both online and offline. For more information on how to get started with the Arduino Software visit the Getting Started page.

Use your Leonardo, Leonardo ETH and Micro on the Arduino Web IDE

All Arduino boards, including this one, work out-of-the-box on the Arduino Web Editor, you only need to install Arduino Create Agent to get started.

The Arduino Web Editor is hosted online, therefore it will always be up-to-date with the latest features and support for all boards. Follow this simple guide to start coding on the browser and upload your sketches onto your board.

Use your Leonardo, Leonardo ETH and Micro on the Arduino Desktop IDE

If you want to program your Leonardo, Leonardo ETH and Micro while offline you need to install the Arduino Desktop IDE.

Installing drivers for Leonardo, Leonardo ETH and Micro

Drivers should be automatically installed plugging with an USB cable the board to your PC, but with some version of the Windows operative system (like Windows 7, Vista and 10) it can happen that your board won’t be recognized and you will get the message Unknown USB device. It is so necessary to manually install them following the guide Manually install Drivers on Windows.

Now that you’ve set up your online IDE let’s make sure your computer can talk to the board, it’s time to make sure you can upload a program. To do that let’s open the LED blink example sketch: File > Examples > 1.Basics > Blink.

Select your board

You’ll need to select your board in the Tools > Board menu:

Arduino Leonardo ETH

according to the board you have.

Select your serial port

Select the serial device of the board from the Tools > Serial Port menu.

Upload and Run your first Sketch

Click the Upload button in the upper left to load and run the sketch on your board:

After the compilation and upload process, you should see the message Done Uploading and the built-in LED of the board should start blinking.

Tutorials

Now that you have set up and programmed your Leonardo, Leonardo ETH or Micro board, you may find inspiration in our Project Hub tutorial platform.

More examples on the following library pages will help you in making very cool things!

Ethernet for connecting to the internet using the Arduino Ethernet Shield, Arduino Ethernet Shield 2 and Arduino Leonardo ETH

Please read.

Good Coding Practice With the Leonardo, Leonardo ETH and Micro

A word of caution on using the USB Mouse and Keyboard Libraries: if the Mouse or Keyboard library is constantly running, it will be difficult to program your board. Functions such as Mouse.move() and Keyboard.print() will move your cursor or send keystrokes to a connected computer and should only be called when you are ready to handle them. It is recommended to use a control system to turn this functionality on, like a physical switch or only responding to specific input you can control. When using the Mouse or Keyboard library, it may be best to test your output first using Serial.print(). This way, you can be sure you know what values are being reported. Refer to the Mouse and Keyboard examples for some ways to handle this.

Using the serial monitor effectively: Since serial is going through only one processor, the board is capable of filling your computer’s serial buffer faster than the Uno or earlier boards. You may notice that if you send serial continually, for example like this:

the Serial Monitor in the IDE slows down considerably as it tries to keep up. If you encounter this, add a short delay to your loop so that the computer’s serial buffer is not filled as fast. Even a millisecond delay will help:

Serial applications using native libraries other than RXTX library read the serial buffer faster, so you may not encounter this error much outside of the Serial Monitor, Processing, or other RXTX-based serial applications.

Differences from the Arduino Uno

In general, you program and use the Leonardo, Leonardo ETH and Micro as you would other Arduino boards. There are, however, a few important differences.

Single processor for sketches and USB communication

The Leonardo, Leonardo ETH and Micro differ from other Arduino boards in that they use a single microcontroller to both run your sketches and for USB communication with the computer. The Uno and other boards use separate microcontrollers for these two functions, meaning that the USB connection to the computer remains established regardless of the state of the main microcontroller. By combining these two functions onto a single processor, the Leonardo allows for more flexibility in its communication with the computer. It also helps to lower the cost of the board by removing the need for an additional processor.

This means that every time you reset the board, the USB serial connection will be broken and re-established. The board will disappear from the list of serial ports, and the list will re-enumerate. Any program that has an open serial connection to the Leonardo will lose its connection. This is in contrast to the Arduino Uno, with which you can reset the main processor (the ATmega328P) without closing the USB connection (which is maintained by the secondary ATmega8U2 or ATmega16U2 processor). This difference has implications for driver installation, uploading, and communication; these are discussed below.

No reset when you open the serial port. Unlike the Arduino Uno, the Leonardo and Micro won’t restart your sketch when you open a serial port on the computer. That means you won’t see serial data that’s already been sent to the computer by the board, including, for example, most data sent in the setup() function.

This change means that if you’re using any Serial print(), println() or write() statements in your setup, they won’t show up when you open the serial monitor. To work around this, you can check to see if the serial port is open after calling Serial.begin() like so:

Keyboard and mouse emulation. One advantage of using a single chip for your sketches and for USB is increased flexibility in the communication with the computer. While the board appears as a virtual serial port to your operating system (also called CDC) for programming and communication (as with the Arduino Uno), it can also behave as a (HID) keyboard or mouse. See the «Good Coding Practice» section below for a warning about using this functionality.

Separation of USB and serial communication. On the Leonardo, Leonardo ETH and Micro, the main Serial class refers to the virtual serial driver on the board for connection to your computer over USB. It’s not connected to the physical pins 0 and 1 as it is on the Uno and earlier boards. To use the hardware serial port (pins 0 and 1, RX and TX), use Serial1. (See the Serial reference pages for more information.)

Differences in pin capabilities. The Leonardo, Leonardo ETH and Micro has some slight differences in the capabilities and assignments of various pins (especially for SPI and TWI). These are detailed on the hardware page.

Uploading Code to the Leonardo, Leonardo ETH and Micro

The text of the Arduino getting started guide is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the guide are released into the public domain.

Читайте также:  Windows live movie maker на русском

Источник

Arduino Leonardo

Arduino Leonardo — контроллер на базе ATmega32u4. Платформа имеет 20 цифровых вход/выходов (7 из которых могут использоваться как выходы ШИМ и 12 как аналоговые входы), кварцевый генератор 16 МГц, разъем микро-USB, силовой разъем, разъем ICSP и кнопку перезагрузки. Для работы необходимо подключить платформу к компьютеру посредством кабеля USB, либо подать питание при помощи адаптера AC/DC или батареи.

В отличие от всех предыдущих плат ATmega32u4 имеет встроенную поддержку для USB соединения, это позволяет задать как Leonardo будет виден при подключение к компьютеру, это может быть клавиатура, мышь, виртуальный серийный / COM порт.

Характеристики

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

Схема и исходные данные

Питание

Arduino Leonardo может получать питание через подключение USB или от внешнего источника питания. Источник питания выбирается автоматически.

Внешнее питание (не USB) может подаваться через преобразователь напряжения AC/DC (блок питания) или аккумуляторной батареей. Преобразователь напряжения подключается посредством разъема 2.1 мм с центральным положительным полюсом. Провода от батареи подключаются к выводам Gnd и Vin разъема питания.

Платформа может работать при внешнем питании от 6 В до 20 В. При напряжении питания ниже 7 В, вывод 5V может выдавать менее 5 В, при этом платформа может работать нестабильно. При использовании напряжения выше 12 В регулятор напряжения может перегреться и повредить плату. Рекомендуемый диапазон от 7 В до 12 В.

Память

Микроконтроллер ATmega32u4 располагает 32Кб флэш памяти, из которых 4 Кб используется для хранения загрузчика, а также 2.5 кБ ОЗУ (SRAM) и 1 Кб EEPROM.

Входы и Выходы

Каждый из 20 цифровых выводов Leonardo может настроен как вход или выход. Выводы работают при напряжении 5 В. Каждый вывод имеет нагрузочный резистор (по умолчанию отключен) 20-50 кОм и может пропускать до 40 мА. Некоторые выводы имеют особые функции:

Дополнительная пара выводов платформы:

AREF. Опорное напряжение для аналоговых входов.

Reset. Низкий уровень сигнала на выводе перезагружает микроконтроллер. Обычно применяется для подключения кнопки перезагрузки на плате расширения, закрывающей доступ к кнопке на самой плате Arduino.

Обратите внимание на соединение между выводами Arduino и портами ATmega32u4:

Связь

ATmega32U4 поддерживает интерфейсы I2C (TWI) и SPI.

Arduino Leonardo умеет определяться при подключение к компьютеру как устройство мышь или клавиатура.

Программирование

Платформа программируется посредством ПО Arduino. Из меню Tools > Board выбирается «Arduino Leonardo» (согласно установленному микроконтроллеру). Подробная информация находится в справочнике и инструкциях.

Микроконтроллер ATmega32U4 на Leonardo поставляется с записанным загрузчиком, опрощающим запись новых программ без использования внешних программаторов. Связь осуществляется протоколом AVR109.

Имеется возможность не использовать загрузчик и запрограммировать микроконтроллер через выводы ICSP (внутрисхемное программирование). Подробная информация находится в данной инструкции.

Автоматическая (программная) перезагрузка

Leonardo разработана таким образом, чтобы перед записью нового кода перезагрузка осуществлялась самой программой Arduino на компьютере, а не нажатием кнопки на платформе. Перезагрузка срабатывает когда виртуальный CDC COM порт открывается со скоростью 1200 бод, а затем закрывается. Когда это происходит, микропроцессор уходит на перезагрузку, разрывая USB соединение. После перезагрузки стартует загрузчик (бутлодер) и остается активным примерно 8 секунд. Загрузчик также можно инициировать нажатием кнопки Reset. Обратите внимание, что при подачи питания контроллер сразу переходит к выполнению загруженной пользовательской программы без выполнения загрузчика.

Токовая защита разъема USB

В Arduino Leonardo встроен самовостанавливающийся предохранитель (автомат), защищающий порт USB компьютера от токов короткого замыкания и сверхтоков. Хотя практически все компьютеры имеют подобную защиту, тем не менее, данный предохранитель обеспечивает дополнительный барьер. Предохранитель срабатыват при прохождении тока более 500 мА через USB порт и размыкает цепь до тех пока нормальные значения токов не будут востановлены.

Физические характеристики

Размер печатной платы Leonardo составляют 6.9 на 5.3 см. Разъем USB и силовой разъем выходят за границы данных размеров. Четыре отверстия в плате позволяют закрепить ее на поверхности. Расстояние между цифровыми выводами 7 и 8 равняется 0,4 см, хотя между другими выводами оно составляет 0,25 см.

Источник

Arduino leonardo драйвер windows 7

Качаем и устанавливаем JRE (Java Runtime Environment) с сайта разработчика. Arduino IDE работает на Java, то есть нужно скачать и установить бесплатный пакет, без которого невозможна работа никаких программ, написанных на Java.

2. Устанавливаем драйвера

При установке Arduio IDE должны автоматически поставиться необходимые для работы драйверы. На большинстве китайских Arduino-плат стоит контроллер интерфейса USB CH341, для работы с ним нужен отдельный специальный драйвер. Китайский контроллер ничем не хуже, он просто дешевле =)

ПОЛЬЗОВАТЕЛЯМ WINDOWS

Далее подключить Arduino к компьютеру, подождать, пока Windows её распознает и запомнит (первое подключение).
P.S. Вылезет окошечко, сообщающее, что устройство опознано и подключено к COM порту с определённым номером отличным от номера 1

ПОЛЬЗОВАТЕЛЯМ MAC

Драйвер CH341 для Mac можно скачать по ссылке с моего сайта, либо со страницы источника. Если у вас будут какие-то проблемы с OSX Sierra и выше, читайте вот эту статью.

За инфу спасибо Денису Алексееву

ПОЛЬЗОВАТЕЛЯМ LINUX MINT

За инфу спасибо Владу Шеменкову

ПОЛЬЗОВАТЕЛЯМ LINUX ARCH

Вся информация по работе с IDE на данной ОСи есть вот в этой статье

3. Настраиваем Arduino IDE

Выбрать модель платы/микроконтроллера (загрузчика) Инструменты\Процессор\”Ваша модель”.

ВНИМАНИЕ! У используемой в моих проектах Arduino NANO может быть прошит “новый” или “старый” загрузчик, в продаже есть и те и те. Начиная с Arduino IDE версии выше 1.8.4 можно выбрать ATmega328P и ATmega328P (Old Bootloader), попробуйте оба, потому что это определяется методом тыка.

Выбрать порт: инструменты\порт\”COM отличный от COM1, например COM3, COM5…” См. второй скриншот. Какой именно порт вы могли видеть при первом подключении Ардуино к компьютеру.
Примечание: если у вас только СОМ1 – значит либо не встали драйвера, либо сдохла плата.

Готовые прошивки просто открываются двойным кликом. Чтобы загрузить прошивку, жмите кнопку ЗАГРУЗИТЬ на верхней панели инструментов, она в виде стрелочки.

ВНИМАНИЕ! В пути к папке со скачанными скетчами не должно быть русских букв! Создайте в корне диска папку Arduino и работайте в ней!

ВНИМАНИЕ! Как только достанете Arduino из пакетика, сразу прошейте в неё скетч с миганием светодиода (blink.ino)
Таким образом вы узнаете, что Ардуина рабочая (на тот случай, когда после сборки/пайки она перестанет работать и прошиваться), то есть вы сами её сломали, а не она была изначально бракованная

3.1 Настраиваем Arduino IDE для плат Digispark

Запустить Arduino IDE, перейти в Файл/Настройки. В окошко “Дополнительные ссылки…” Вставить http://digistump.com/package_digistump_index.json и нажать ОК
Если ссылка не работает (в этом виноват Чебурнет), попробовать эту https://raw.githubusercontent.com/digistump/arduino-boards-index/master/package_digistump_index.json

Перейти в Инструменты/Плата/Менеджер плат… Начать вводить в поиске “Digispark”. Выбрать и установить Digistump AVR Boards

Теперь в списке плат появится семейство плат Digispark! Выбираем первую Digispark (Default – 16.5mhz)

Также нужно установить драйвера, скачать можно на официальном GitHub проекта (в папке tools), либо с моего FTP. Драйвера есть для Win, MacOS и Linux.

Пользователям Linux читать здесь

Прошивка загружается следующим образом: ПЛАТУ НЕ ПОДКЛЮЧАЕМ, ПОРТ НЕ ВЫБИРАЕМ, нажимаем загрузка, ждём компиляции. Появится надпись “подключите плату”. Втыкаем дигги в USB и прошивка загружается. Почему так? Дигги имеет на борту свой USB интерфейс, поэтому работает напрямую.

3.2 Настраиваем Arduino IDE для плат на ESP

Запустить Arduino IDE, перейти в Файл/Настройки. В окошко “Дополнительные ссылки…” Вставить http://arduino.esp8266.com/stable/package_esp8266com_index.json и нажать ОК

Перейти в Инструменты/Плата/Менеджер плат… Начать вводить в поиске “ESP”. Выбрать и установить ESP8266 boards

Теперь в списке плат появится семейство плат ESP! Выбираем соответствующую своей плате конфигурацию.

Для работы с китайскими платами NodeMCU и Wemos D1 Mini нужно установить драйвер на CH341, об этом мы говорили во втором пункте этого гайда.

4. Установка библиотек Arduino

Допустим, скачали библиотеку. Её нужно разархивировать и положить в папку:

64-битная версия Windows – C:\Program Files (x86)\Arduino\libraries\
32-битная версия Windows – C:\Program Files\Arduino\libraries\

Как пример – библиотека для дисплея на чипе TM1637, смотрите скриншот

Читайте также:  Ez mode asus переустановка виндовс

В папке libraries должна появиться папка TM1637, в которой есть папка examples и остальные файлы библиотеки.

5. Основные ошибки при прошивке Arduino (FAQ)

5.1 Ошибка компиляции

Возникает на этапе компиляции прошивки перед загрузкой. Ошибки компиляции вызваны проблемами в коде прошивки. Во время компиляции код проверяется и выявляются ошибки, Ардуино в этом случае может быть вообще не подключена к компьютеру.

“Какой-то текст”, not declared, no such file…

В некоторых случаях ошибка возникает при наличии кириллицы (русских букв) в пути к папке со скетчем. Решение: завести для скетчей отдельную папочку в корне диска с английским названием.

В чёрном окошке в самом низу Arduino IDE можно прочитать полный текст ошибки и понять, куда копать

При использовании каких-то особых библиотек, методов или функций, ошибкой может стать неправильно выбранная плата в “Инструменты/плата“. Пример: прошивки с библиотекой Mouse.h или Keyboard.h компилируются только для Leonardo и Micro.

Если прошивку пишете вы, то любые синтаксические ошибки в коде будут подсвечены, а снизу в чёрном окошке можно прочитать более детальное описание, в чём собственно косяк. Обычно указывается строка, в которой сделана ошибка, также эта строка подсвечивается красным.

Иногда причиной ошибки бывает слишком старая, или слишком новая версия Arduino IDE, читайте комментарии разработчика скетча. В большинстве случаев версия IDE ниже 1.8 будет выдавать ошибки, особенно в программах для ESP8266. Обновляйтесь!!

Также не рекомендуется ставить Arduino IDE из магазина Windows. Ставьте обычную как в инструкции выше.

Ошибка недостаточно свободного места возникает по вполне понятным причинам. Если в проекте используется плата Nano на процессоре 328p, а вы сэкономили три рубля и купили на 168 процессоре – скупой платит дважды. Оптимизация: статическая память – память, занимаемая кодом (циклы, функции). Динамическая память занята переменными.

5.2 Ошибка загрузки

Возникает на этапе, когда прошивка собрана, скомпилирована, в ней нет критических ошибок, и производится загрузка в плату по кабелю. Ошибка может возникать как по причине неисправностей железа, так и из-за настроек программы и драйверов.

Произошла ошибка при загрузке скетча

USB кабель, которым подключается Arduino, должен быть Data-кабелем, а не кабелем только для зарядки. Нужным нам кабелем подключаются к компьютеру плееры и смартфоны.

Причиной ошибки загрузки являются не установленные/криво установленные драйвера CH340, если у вас китайская NANO.

Большинство проблем при загрузке, вызванных “зависанием” ардуины или загрузчика, лечатся полным отключением ардуины от питания. Потом вставляем USB и по новой прошиваем.

Причиной ошибки загрузки может быть неправильно выбранная плата в “Инструменты/Плата”, а также неправильно выбранный процессор (загрузчик, bootloader) в “Инструменты/Процессор”. Для китайских Нано нужно выбирать ATmega328P (Old Bootloader), хотя некоторые продавцы продают платы с новым загрузчиком (первый в списке).

Если у вас открыт монитор COM порта в другом окне Arduino IDE или плата общается через СОМ порт с другой программой (Ambibox, HWmonitor, SerialPortPlotter и т.д.), то вы получите ошибку загрузки, потому что порт занят. Отключитесь от порта или закройте другие окна и программы.

Если у вас задействованы пины RX или TX – отключите от них всё! По этим пинам Arduino общается с компьютером, в том числе для загрузки прошивки.

5.3 Решение конфликтов библиотек

Иногда случается конфликт библиотек, который заключается в том, что IDE находит на компьютере несколько одинаковых библиотек. Об этом сообщается в логе компиляции предупреждением: “несколько библиотек найдено… используется то, не используется сё“. Если вы ставили некоторые библиотеки через менеджер (Скетч/Подключить библиотеки/Управлять библиотеками…), они будут воевать с библиотеками, установленными вручную в папку с программой. Где вообще лежат библиотеки?

Конфликтовать могут и ядра, поэтому решением всех проблем может стать чистая установка Arduino IDE с удалением остатков от предыдущей версии. Удаляем программу как программу, и вручную сносим папки:

5.4 pragma message

Иногда прошивка успешно компилируется/загружается, но в логе компилятора оранжевыми буквами всплывает несколько строчек:

Это всего лишь сообщение про библиотеку, точнее – про её текущую версию. Если код скомпилировался или успешно загрузился – бояться оранжевых букв не нужно!

5.5 Нехватка памяти

Иногда прошивка успешно компилируется/загружается, но в логе компилятора написано о недостатке места

Запомните: если компиляция/загрузка завершена, значит всё в порядке и скетч будет работать. Ведь написано, что “завершена”! Память устройства можно добивать до 99%, ничего страшного не случится. Это флэш память и во время работы она не изменяется. А вот динамическую память желательно забивать не более 85%, иначе реально могут быть непонятные глюки в работе, так как память постоянно “бурлит” во время работы. НО. Это зависит от скетча и в первую очередь от количества локальных переменных. Можно написать такой код, который будет стабильно работать при 99% занятой SRAM памяти. Так что ещё раз: это всего лишь предупреждение, а не ошибка.

6. Полезные советы при работе с Arduino

Работа с текстовыми файлами

При дальнейшей работе с Arduino вам часто придётся разбираться с файлами библиотек (смотреть список методов или писать свои библиотеки), поэтому нужно сделать две очень важные вещи: включить отображение расширений файлов и скачать блокнот++. Блокнот++ удобнее обычного блокнота и имеет кучу фишек, например распознаёт “язык кода” и подсвечивает синтаксис.

Далее необходимо включить отображение расширений у файлов, чтобы знать, что перед вами за зверь. Краткая инструкция для Windows 7 и 10.

После этого делаем нужные файлы открываемыми по умолчанию в Notepad++

Написание текста программы

Автоформатирование – Arduino IDE умеет автоматически приводить ваш код в порядок (имеются в виду отступы, переносы строк и пробелы). Для автоматического форматирования используйте комбинацию CTRL+T на клавиатуре, либо Инструменты/АвтоФорматирование в окне IDE. Используйте чаще, чтобы сделать код красивым (каноничным, классическим) и более читаемым для других!

Скрытие частей кода – сворачивайте длинные функции и прочие куски кода для экономии места и времени на скроллинг. Включается здесь: Файл/Настройки/Включить сворачивание кода

Не используйте мышку! Чем выше становится ваш навык в программировании, тем меньше вы будете использовать мышку (да-да, как в фильмах про хакеров). Используйте обе руки для написания кода и перемещения по нему, вот вам несколько полезных комбинаций и хаков, которыми я пользуюсь ПОСТОЯННО:

Также для отодвигания комментариев в правую часть кода используйте TAB, а не ПРОБЕЛ. Нажатие TAB перемещает курсор по некоторой таблице, из-за чего ваши комментарии будут установлены красиво на одном расстоянии за вдвое меньшее количество нажатий!

Хаки с питанием

Питание от пинов – во время разработки прототипов без брэдборда всегда не хватает пинов для питания датчиков и модулей. Так вот, слабые (с потреблением тока менее 40 мА ) 5 Вольтовые датчики можно питать от любых пинов! Достаточно сформировать пин как выход, и подать на него нужный сигнал (HIGH – 5 Вольт, LOW – GND).

Пример: подключаем трёхпиновый датчик звука, не используя пины 5V и GND

Питание от штекера для программатора. Вы наверняка задавались вопросом, а зачем на Arduino NANO на краю платы расположены 6 пинов? Это порт для подключения ISP программатора. Что он делает в списке лайфхаков? Вот вам фото распиновки, используйте!

Энергосбережение

Использовать библиотеку энергосбережения Low Power. Примеры и описание внутри (видео урок пока не готов)

В паре с библиотекой сделать несколько модификаций: отключить светодиод питания и отрезать левую ногу регулятора напряжения. ВНИМАНИЕ! Резать ногу регулятору можно только в том случае, если плата питается от источника 3-5 Вольт в пины 5V и GND.

7. Ответы на частые вопросы

Ардуину можно прошить только один раз? Нет, несколько десятков тысяч раз, всё упирается в ресурс flash памяти. А он довольно большой.

Как стереть/нужно ли стирать старую прошивку при загрузке новой? Память автоматически очищается при прошивке. Старая прошивка будет автоматически удалена.

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

Можно ли “вытащить” прошивку с уже прошитой Ардуины? Теоретически можно, но только в виде машинного кода, в который преобразуется прошивка на С++ при компиляции, т.е. вам это НИКАК не поможет, если вы не имеете диплом по низкоуровневому программированию. Так что нет, нельзя.

Источник

Поделиться с друзьями
Советы экспертов и специалистов
Adblock
detector