Small example work with Attiny13 on assembly
Примеры содержат настройку работы с таймером, перифeрией.
Компилировать можно в avr(atmel)studio или компилятором avra. Если компилируем через avra надо в asm файлах раскомментировать вторую и третью строку.
- программатор USBASP:
- прошивка: avrdude -p t13 -c usbasp -P usb -U flash:w:ИМЯ_ФАЙЛА.hex
- посмотреть фьюзы: avrdude -p t13 -c usbasp -P usb
- Arduino :
- шьём в ардуино скетч ArduinoISP
- прошивка: avrdude -p t13 -c avrisp -b 19200 -P /dev/ttyUSB0 -U flash:w:ИМЯ_ФАЙЛА.hex
- посмотреть фьюзы: avrdude -p t13 -c avrisp -b 19200 -P /dev/ttyUSB0
-
Button.asm - работа порта ввода-вывода. Кнопка соединена с пином 4, светодиод с 3. При нажатии на кнопку состояние светодиода меняется.
схема макет -
SimplePWM.asm - программый шим. Присоединённый к пину светодиод светит с некоторым промежуточным значением.
схема макет -
TunePWM.asm - управляем ШИМ кнопкой. При нажатии на кнопку яркость светодиода плавно изменяется.
схема макет -
WD_interrupt - прерывания от ватчдога(WD) . В обработчике прерываний меняется состояние присоединённых к пинам 3 и 4 светодиодов.
схема макет -
WDwakeUP.asm - Работа ватчдога. Запускаем таймер ватчдога и отправляем контроллер в состяние сна. По истечении работы таймера контроллер выходит из этого состояния.
схема макет -
Eeprom.asm - запись и чтениe значения в EEPROM. При старте контроллера из EEPROM читается значение и устанавливается как яркость свечения светодиода. При коротком нажатии на кнопку меняется значение яркости. А при длительном - записывается в EEPROM текущее значение яркости свечения.
схема макет -
DS18B20_thermometer - измерение температуры датчиком DS18B20. Количество ножек контроллера не позволяет подключить дисплей. Для индикации используются два диода: красный(tens_led_pin) для десятков и зелёный(ones_led_pin) для единиц. Количество блинков соответствует количеству десятков и единиц. Температура измеряется в градусах по Цельсию. Файл 1-wireProto.asm содержит подпрограммы работы с шиной "one wire" на уровне протокола( сигнал сброса, чтение и запись байта , проверка crc отсутствует).
схема макет