Мы использовали оборудование и программное обеспечение Arduino в течение того, что кажется (и на самом деле) годами, но до сих пор оно находилось в «вечной бета-версии». Наконец, это изменилось с официальным выпуском Arduino 1.0.
Согласно объявлению в блоге Arduino:
Вскоре в этот выпуск внесены небольшие, но важные изменения, направленные на очистку среды и языка Arduino, а также добавление множества дополнительных функций.
Все это немного скромно для такой важной вехи, но тогда большинство разработчиков Arduino будут использовать Release Candidate в течение многих месяцев, и у него было «мероприятие по запуску» на Maker Faire в Нью-Йорке.
Обновленные функции в среде IDE включают новую цветовую схему и изображение, новый набор значков панели инструментов, включая значок галочки для проверки (компиляции) эскиза и стрелку для загрузки, индикатор выполнения для компиляции и загрузки и расширение файла для эскизы изменились с .pde на .ino (последние три буквы «Arduino»).
Изменения, которые имеют большее практическое влияние, относятся к языку Arduino и включают:
Последовательная передача теперь асинхронная — то есть вызовы Serial.print () и т. Д. Добавляют данные в исходящий буфер, который передается в фоновом режиме. Кроме того, команда Serial.flush () была перепрофилирована для ожидания передачи исходящих данных, а не для отбрасывания полученных входящих данных.
Поведение Serial.print () для байта было изменено, чтобы выровнять его с другими числовыми типами данных. В частности, теперь он будет печатать цифры своего аргумента как отдельные цифры ASCII (например, ‘1’, ‘2’, ‘3’), а не как один байт. Ключевое слово BYTE было удалено. Чтобы отправить один байт данных, используйте Serial.write ().
Класс Serial (а также другие классы, унаследованные от Stream, такие как EthernetClient, SoftwareSerial, Wire и другие) теперь содержат функции для анализа входящих данных.
Переопределен класс SoftwareSerial. Это позволяет использовать несколько экземпляров одновременно, хотя только один может получать одновременно.
Добавлена поддержка печати строк, хранящихся во флэш-памяти (программной памяти), а не в ОЗУ. Оберните строки в двойные кавычки в F (), чтобы указать, что они должны храниться во флэш-памяти, например F («привет, мир»).
Класс String был переопределен, чтобы повысить эффективность использования памяти и надежность. Некоторые функции, которые ранее возвращали новые экземпляры строк (например, trim () и toUpperCase ()), были изменены, чтобы вместо этого изменять строки на месте.
В библиотеку Ethernet добавлена поддержка DHCP и DNS. Большинство классов в библиотеке Ethernet были переименованы, чтобы добавить префикс «Ethernet» и избежать конфликтов с другими сетевыми библиотеками.
UDP API был изменен, чтобы быть более похожим на другие библиотеки.
Библиотека SD теперь поддерживает несколько одновременных открытых файлов. Он также предоставляет функции isDirectory (), openNextFile () и rewindDirectory () для перебора всех файлов в каталоге.