Шим на attiny13 управляемый кнопкой

Как-то раз решил я переделать свою светодиодную фару для велосипеда. Чтобы переключать её яркость. Вот и родился контроллер для светодиодного фонарика

В качестве микроконтроллера я выбрал самый дешёвый Atmel Attiny13 с двумя ШИМ (Широтно-импульсная модуляция) выходами. Устройство имеет 6 режимов работы:
Режим 1: Выключено (Значение ШИМ: 0)
Режим 2: Включено 20% яркости (Значение ШИМ: 25)
Режим 4: Включено 40% яркости (Значение ШИМ: 100)
Режим 5: Включено 60% яркости (Значение ШИМ: 150)
Режим 6: Включено 100% яркости (Значение ШИМ: 255)

Для питания устройства я использовал батарею на 3 вольта (литьевую таблетку).

Итак, для устройства нам понадобится:
1. Микроконтроллер Atmel Attiny13 (с любыми буквенными индексами)
2. Резистор от 4,7кОм до 10кОм
3. Резистор от 100ом до 200ом
4. Кнопка тактовая
5. Кнопка фиксирующая
6. Батарея от 3 вольт до 5 вольт

Вот схема контроллера светодиодного фонарика:

Схема в Proteus:

Плату я делать не стал, слишком уж простая схема. Собрал всё на макетной плате.

Вот что получилось у меня:

Устройство получилось компактное и вполне работоспособное.

Прошивку для контроллера светодиодного фонарика я писал в среде BASCOM-AVR.
Вот кусочек кода для управления ШИМ:
Config Portb.1 = Output
Config Timer0 = Pwm , Prescale = 8 , Compare B Pwm = Clear Down
Start Timer0
Pwm0b = 100
End

Фьюз биты для микроконтроллера необходимо выставить на тактирование от внутреннего тактового генератора (1 МГц).

Вот установка фьюзов в PonyProg2000:

Работа устройства в темноте:

Вот и всё устройство. Удачи в сборке!

Ниже вы можете скачать прошивку, исходник, проект в Proteus

ШИМ — широтно-импульсная модуляция (или по англ. PWM). У микроконтроллера ATtiny13 есть два ШИМ выхода OC0A и OC0B от таймера 0. ШИМ выход OC0A на 5 ножке микроконтроллера Attiny13, а OC0B на 6 ножке. В данном примере светодиод подключённый к ШИМ выходу OC0B будет плавно загораться и гаснуть.

Читайте также:  Debian apt get update

Вот схема устройства:

Для сборки устройства понадобится:

1.Микроконтроллер Attiny13 (с любыми индексом)
2. Панелька DIP8
3. Любой светодиод
4. Резистор 4,7k (можно от 2,2кОм до 20кОм)
5. Резистор 150ом

Питание для устройства должно быть от 3 до 5 вольт. Для питания устройства я использовал "литьевую таблетку" на 3 вольта.

Прошивка для устройства написана в среде BASCOM-AVR.

Вот исходник прошивки:

В канал ШИМ можно записать значение от 0 до 255.

Вот упрощенный вариант кода управления ШИМ:

В данном случае в ШИМ канал OC0B мы запишем число 255. То есть светодиод будет гореть постоянно.

Записать значение в ШИМ канал можно так:
(ШИМ канал) = (Значение от 0 до 255)

Вот такое устройство получилось у меня:

Микроконтроллер прошивал программой PonyProg2000.

Вот картинка установки фьюз битов:

Ниже вы можете скачать прошивку, исходник, печатную плату, проект в Proteus

Как-то раз решил я переделать свою светодиодную фару для велосипеда. Чтобы переключать её яркость. Вот и родился контроллер для светодиодного фонарика

В качестве микроконтроллера я выбрал самый дешёвый Atmel Attiny13 с двумя ШИМ (Широтно-импульсная модуляция) выходами. Устройство имеет 6 режимов работы:
Режим 1: Выключено (Значение ШИМ: 0)
Режим 2: Включено 20% яркости (Значение ШИМ: 25)
Режим 4: Включено 40% яркости (Значение ШИМ: 100)
Режим 5: Включено 60% яркости (Значение ШИМ: 150)
Режим 6: Включено 100% яркости (Значение ШИМ: 255)

Для питания устройства я использовал батарею на 3 вольта (литьевую таблетку).

Итак, для устройства нам понадобится:
1. Микроконтроллер Atmel Attiny13 (с любыми буквенными индексами)
2. Резистор от 4,7кОм до 10кОм
3. Резистор от 100ом до 200ом
4. Кнопка тактовая
5. Кнопка фиксирующая
6. Батарея от 3 вольт до 5 вольт

Читайте также:  Foxconn flaming blade gti x58

Вот схема контроллера светодиодного фонарика:

Схема в Proteus:

Плату я делать не стал, слишком уж простая схема. Собрал всё на макетной плате.

Вот что получилось у меня:

Устройство получилось компактное и вполне работоспособное.

Прошивку для контроллера светодиодного фонарика я писал в среде BASCOM-AVR.
Вот кусочек кода для управления ШИМ:
Config Portb.1 = Output
Config Timer0 = Pwm , Prescale = 8 , Compare B Pwm = Clear Down
Start Timer0
Pwm0b = 100
End

Фьюз биты для микроконтроллера необходимо выставить на тактирование от внутреннего тактового генератора (1 МГц).

Вот установка фьюзов в PonyProg2000:

Работа устройства в темноте:

Вот и всё устройство. Удачи в сборке!

Ниже вы можете скачать прошивку, исходник, проект в Proteus

Оставьте ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *