Arduino ◦ Разбираться с подключением питания, программатора, как задать нужную частоту, как скомпилировать и загрузить программу, и т.д. ◦ Почему он никак не заработает?!?! • С Arduino: ◦ Подключить плату через USB ◦ Написать программу в GUI, upload, посмотреть что будет!
и SRAM для данных (переменные, объекты, ...) • Flash: ◦ Программируется в самом начале ◦ Не меняется ◦ Программа выполняется из него • SRAM: ◦ Гораздо меньше чем flash ◦ Arduino Micro: 32KB flash, 2.5KB SRAM CPU Instruction Memory (flash) Data Memory Микроконтроллер на Arduino Micro "Обычный" компьютер External Devices (HDD, flash, etc). CPU Memory
◦ В каждый момент времени либо 0 либо 5V. ◦ "переключатель" - присоединяет 0 или 5V ◦ Drives the pin • INPUT: cчитывать напряжение поданное на него другим устройством
Memory (4) Программа записывается сюда (через USB) (5) Контроллер перезагружается и выполняет программу (1) Пишем программу (3) Нажимаем upload (2) Выбираем плату и порт
◦ Переключение на уровне "железа". ◦ Частота по умолчанию 500Hz - 1kHz, может быть до ~60kHz. • Среднее значение между 0 и 5V ◦ Duty Cycle - "процент 5V" • Только некоторые контакты поддерживают PWM. ◦ Arduino Micro: 3, 5, 6, 9, 10, 11, 13 ◦ Arduino Nano: 3, 5, 6, 9, 10, 11.
Например величину ускорения • Хотим использовать цифровой способ передачи ◦ Легче на практике ◦ Можем 1 бит - через digital read/write • Передача битов один за другим ◦ Последовательный способ передачи данных (serial communication) • Проблема: интерпретация 380 ?
SDA и SCL только к земле ◦ Если никто не "подключает" к земле, линия принимает +5V за счёт резистора • Нет опасности короткого замыкания • Arduino Wire library чтобы работать с I2C.