Контроллер я купил на Ибэе. Мне нужен небольшой чип для чтения данных с приемника радиосигналов из хоббийного набора и управления лазерным выводом.


Получив контроллеры, я понял, что мне необходимо запрограммировать их. Я перепробовал множество разных вариантов программирования ATTiny13 из всемирной сети, пока, наконец, не нашел нужное мне руководство для начинающих по программированию. Файл с несколькими изменениями есть внизу статьи.

Шаг 1: Подключаем чип для программирования



Ознакомьтесь с видеороликом:

Подключите чип к Ардуино следующим образом:

Arduino пин 13 — ATTiny пин 7
Arduino пин 12 — ATTiny пин 6
Arduino пин 11 — ATTiny пин 5
Ardunio пин 10 — ATTiny пин 1
Arduino вывод +5v — ATTiny пин 8
Arduino вывод GNd — ATTiny пин 4

Опционально:
GND – к отрицательной ножке диода
пин 3 — резистор (250 Ом) – к плюсовой ножке диода

Шаг 2: Добавление данных в программу



  • Откройте программу Arduino IDE и подключите ваш контроллер Ардуино
  • Переходите: Файл -> Примеры -> ArduinoISP
  • Выберите нужную плату и разъем (Инструменты -> Платы/Последовательные порты)
  • Нажмите кнопку загрузки

Так Ардуино будет служить ISP-программатором.

  • После завершения закройте программу

Теперь вам нужно сделать так, чтобы программа IDE видела в контроллере чип, совместимый с Ардуино.

  • Загрузите соответствующий файл
  • Скопируйте папку «attiny» в папку /оборудование/ в каталог установки Arduino IDE

Затем вам нужно скорректировать тактовую частоту:

  • Откройте файл Оборудование/attiny/платы.txt
  • В самом низу файла находятся строчки, содержащие данные, относящиеся к нужному чипу
  • Замените «attiny13.build.f_cpu=9600000L» на «attiny13.build.f_cpu=1000000L»

Чтобы исправить время задержки:

  • Снова откройте Arduino IDE
  • Перейдите в Tools>Board и выберите «ATtiny13 (internal 9.6 MHz clock)»

Шаг 3: Программирование


Чтобы загрузить скетч для контроллера:

  • Откройте IDE
  • Перейдите File>Examples>Basic>Blink
  • Измените 11 строку: «pinMode(13, OUTPUT);» на «pinMode(4, OUTPUT);»
  • Измените 15 строку: «digitalWrite(13, HIGH);» на «digitalWrite(4, HIGH);»
  • Измените 17 строку: «digitalWrite(13, LOW);» на «digitalWrite(4, LOW);»

Теперь IDE должна загрузить скетч на ваш контроллер через Arduino ISP-программатор. Как только загрузка будет завершена, диод начнет моргать с интервалом 1 сек.

Обозначить выводы контроллера в Arduino IDE вам нужно в соответствии с нумерацией выводов на плате (например, Pin1 = PB1, и т. д.).

Шаг 4: Чтение данных сервопривода


В видеоролике объясняется, как легко настроить программное обеспечение:

Код находится в приложенном файле. Подключите диод и резистор точно также, как указано в Шаге 1 для тестирования.
Если вы используете реле, оно должно быть рассчитано на напряжение 5В на катушку. Подключите катушку к пину 4 и GND.

При использовании реле вы должны установить диод для защиты от ЭДС, соединив его параллельно с катушкой реле, минусом с пином 4.

Файлы

Шаг 5: Проверяем