image Познакомьтесь с обновленной версией легендарного бестселлера Саймона Монка. Это издание представляет собой полностью обновленную книгу, основанную на Arduino 1.6.

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

Хотите создать умный дом или запрограммировать робота? Нет ничего проще. Саймон Монк не только поможет разобраться с проволочками, контактами и датчиками, но и покажет, как заставить все это хитросплетение проводов и плат делать то, что вам нужно. Arduino — это не так сложно, как кажется с первого взгляда. Вы сразу будете покорены открывающимися возможностями.

Предисловие


Первое издание этой книги было опубликовано в ноябре 2011 года и попало в топ лучших книг по Arduino на сайте Amazon. Во время работы над первым изданием книги текущей моделью Arduino была Arduino 2009 с версией программного обеспечения Beta018. Практически одновременно с книгой на полках магазинов появилась модель Arduino Uno с версией программного обеспечения 1.0. Это издание представляет собой полностью обновленную книгу, основанную на Arduino 1.6.

Модель Arduino Uno R3 все еще считается стандартной платой Arduino. Однако появились многие другие платы, включая официальные модели Arduino (например, Leonardo, Zero, 101, Due и Yun) и другие устройства, такие как Photon и Intel Edison, для программирования которых также используется язык Arduino. В этом издании также описывается использование Arduino в проектах для Интернета вещей (Internet of Things, IoT) и применение разных видов устройств отображения, включая индикаторы на органических светодиодах (OLED ) и жидких кристаллах (LCD).

Интерфейсные платы Arduino представляют недорогую и простую возможность создания проектов на основе микроконтроллеров. Обладая начальными знаниями в области электроники, вы сможете заставить свою плату Arduino делать все что угодно — от управления лампами в творческих инсталляциях до распределения мощности в солнечной энергосистеме.

Существует множество книг, описывающих проекты и демонстрирующих, как подключать
внешние устройства к плате Arduino, в том числе книга «30 Arduino Projects for the Evil Genius», написанная автором. Однако в данной книге основное внимание уделяется вопросам
программирования Arduino.

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

Что такое Arduino


Arduino — маленькая плата микроконтроллера с разъемом USB для подключения к компьютеру и множеством контактов для соединения проводами с внешними устройствами, такими как электромоторы, реле, фотоэлементы, светодиоды, громкоговорители, микрофоны и многое другое. Она может питаться от разъема USB компьютера, от 9-вольтовой батареи или другого источника электропитания. Платой можно управлять с компьютера, точно так же ее можно запрограммировать, и после отсоединения от компьютера она будет работать автономно. Плата имеет открытую архитектуру. То есть любой желающий может создавать свои Arduino-совместимые платы. В результате конкуренция между производителями ведет к снижению стоимости плат.

В дополнение к основным платам выпускаются платы расширения, которые можно подключать к платам Arduino. Программное обеспечение, необходимое для программирования Arduino, также является открытым, имеются версии для Windows, Mac и Linux.

Что необходимо для чтения книги


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

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

— немного изолированного провода;
— недорогой мультиметр.

И то и другое можно недорого купить в ближайшем магазине радиодеталей или в интернет-магазине, таком как Adafruit или Sparkfun. И конечно же, вам понадобится плата Arduino Uno. Желающие пойти еще дальше и поэкспериментировать с дисплеями и подключением к сети должны будут купить эти платы, например в интернет-магазине. Подробности смотрите в главах 9 и 10.

Как работать с этой книгой


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

Книга содержит следующие главы.

Глава 1 «Знакомьтесь: Arduino». Начальное знакомство с платой Arduino. Эта глава описывает возможности и разные типы плат Arduino.

Глава 2 «Начало». Здесь вы проведете первые эксперименты со своей платой Arduino: установите программное обеспечение, включите плату и выгрузите на нее свой первый скетч.

Глава 3 «Основы языка C». Эта глава охватывает основы языка программирования C; для начинающих она может стать также введением в программирование вообще.

Глава 4 «Функции». В этой главе описываются ключевые понятия создания и использования функций в скетчах Arduino. На протяжении всей главы будут демонстрироваться примеры исходного кода действующих скетчей.

Глава 5 «Массивы и строки». Здесь вы узнаете, как определять и использовать структуры данных, более сложные, чем простые целочисленные переменные. В этой главе будет постепенно реализован проект «Morse» для демонстрации описываемых понятий.

Глава 6 «Ввод и вывод». Расскажет, как управлять цифровыми и аналоговыми вводами и выводами платы Arduino в программах. Здесь очень пригодится мультиметр, с помощью которого
можно будет увидеть, что происходит на контактах ввода/вывода платы Arduino.

Глава 7 «Стандартная библиотека Arduino». Описывает особенности использования функций из стандартной библиотеки Arduino.

Глава 8 «Запись данных». Здесь вы узнаете, как писать скетчи, способные записывать данные в электрически стираемые программируемые постоянные запоминающие устройства (ЭСППЗУ) и использовать встроенную флеш-память Arduino.

Глава 9 «Дисплеи». В этой главе вы узнаете, как оборудовать плату Arduino дисплеем, и создадите простое устройство отображения сообщений через USB.

Глава 10 «Arduino и Интернет вещей». Научит, как превратить плату Arduino в веб-сервер и взаимодействовать со службами в Интернете, такими как dweet и IFTTT.

Глава 11 «C++ и библиотеки». Здесь вы выйдете за рамки языка C, познакомитесь с объектно-ориентированным программированием и приемами создания собственных библиотек для Arduino.

» Более подробно с книгой можно ознакомиться на сайте издательства
» Оглавление
» Отрывок

Для читателей данного блога скидка 20% по купону — Programming Arduino
Поделиться с друзьями
-->

Комментарии (18)


  1. c_kotik
    22.11.2016 13:42
    +1

    Электронная версия будет доступна для покупки?


    1. ph_piter
      22.11.2016 14:29
      +1

      Пока мы не получили элеронных прав, возможно поле НГ будут.


  1. ESelin
    22.11.2016 14:29

    Судя по году выпуска — это пред.заказ?..


    1. ph_piter
      22.11.2016 15:12

      Книга доступна для покупки


  1. serafims
    22.11.2016 14:45

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


  1. vconst
    22.11.2016 15:09
    +1

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


    1. alex323
      22.11.2016 20:48

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


      1. c_kotik
        22.11.2016 21:21

        А ещё есть электронные книги. Планшеты на самый крайний случай. Зато нет нужны в стеллажах под книги.


      1. vconst
        23.11.2016 11:34
        -1

        А набивать простыни текста из книги вместо копипаст — это не мазохизм?


        1. c_kotik
          23.11.2016 12:09

          Не спора ради, но разве это не повышает усвояемость материала?


          1. vconst
            23.11.2016 19:58

            Думаю, что нет. Электронная книга, это ещё и быстрое гугление копипасты термина или чего-то ещё, если в книге что то не ясно, и много чего ещё


            1. alex323
              23.11.2016 22:29

              Думаю, что отличная «навигация» по бумажной книге с лихвой кроет все другие недостатки.


              1. vconst
                23.11.2016 22:34

                Вы серьёзно что ли? Да ладно! В бумажной книге есть что то настолько же удобное, как простой текстовый поиск? И я не говорю о поиске с регэкспами, обычный текстовый поиск совершенно незаменим, никакой бумажный указатель даже близко не валялся. А чего стоит возможность открыть хоть десяток окон с разными страницами, совсем разными, ± сто номеров страниц, а не одну-две как в бумажной


                1. alex323
                  24.11.2016 18:41

                  Текстовым поиском пользуюсь обычно в даташитах, да и то редко. Причем особо нужные места из даташитов распечатываю. Для меня гораздо удобнее смотреть на схему/блок-схему/таблицу на бумаге. Я никого не призываю отказаться от электронных версий, просто лично мне именно книга гораздо удобнее в бумажном виде. Даташиты в принципе удобнее хранить в электронном виде, чтобы место на полке не занимали. Но некоторые я бы хотел иметь в бумажном виде, например Reference Manual RM008 по STM32F10x. От распечатки меня удерживает только неприлично большой объём — больше тысячи страниц. Это ж надо две пачки бумаги, плюс переплести.


  1. madf
    22.11.2016 17:35

    Книга какая-то бестолковая, от части повергает в кучу смятений, судя из отрывка, там в комплекте мультиметр идёт?
    Описывать надо таким образом, чтобы для работы с «конструктором» требовалось минимум инструмента и всё было понятно (вы ещё там пример приведите измерений осциллографом ШИМа). :D
    Если требуется что-то проверить, то это всё должно быть реализовано из подручных средств, например через туже дуню…
    Ну и если вы описываете работу с мультиметром, то придется отдельную тему/книгу писать…
    В общем, суть дуни в том, чтобы каждый (не подготовленный) мог следуя инструкциям (пошаговым) создавать разные результаты/эксперименты/пробы. С возможным мягким погружением в физику/электронику. В общем нужно грамотно подходить к процессу…


  1. Delics
    23.11.2016 00:05

    «30 Arduino Projects for the Evil Genius» — а эта книга есть на русском?


  1. rico_spb
    23.11.2016 10:01

    В чем суть обновлений так и не ясно…


    1. ph_piter
      23.11.2016 17:10

      Во время работы над первым изданием книги текущей моделью Arduino была Arduino 2009 с версией программного обеспечения Beta018. Практически одновременно с книгой на полках магазинов появилась модель Arduino Uno с версией программного обеспече¬ния 1.0. Это издание представляет собой полностью обновленную книгу, основанную на Arduino 1.6.


      Модель Arduino Uno R3 все еще считается стандартной платой Arduino. Однако появились многие другие платы, включая офици¬альные модели Arduino (например, Leonardo, Zero, 101, Due и Yun) и другие устройства, такие как Photon и Intel Edison, для програм¬мирования которых также используется язык Arduino.


      В этом издании также описывается использование Arduino в проек¬тах для Интернета вещей (Internet of Things, IoT) и применение раз¬ных видов устройств отображения, включая индикаторы на органи¬ческих светодиодах (OLED ) и жидких кристаллах (LCD).