INT 21h

Домашняя страница самого страшного прерывания

Управление светодиодной лентой с помощью ШИМ (PWM) и полевого транзистора (MOSFET)

№ 3658 В разделах: Программирование Электроника от August 30th, 2011,

Человек это существо ленивое и всячески упрощающее себе жизнь. Вот и я захотел управлять освещением не отрывая попы от стула с помощью инфракрасного пульта дистанционного управления. Как же заставить 5-вольтовый микроконтроллер управлять 12-вольтовой лентой? Да еще и с током почти в 2А :) Как подсказали умные люди, лучше всего использовать полевой транзистор (он же в Буржуйландиях называемый MOSFET) и ШИМ (Широтно-Импульсная Модуляция, англ. Pulse-width modulation или PWM). Полевик я отодрал от материнской платы ASUS (к сожалению, ASUS уже не торт) с маркировкой P0903BDG. Ахтунг! Отпаять такой можно только с помощью фена! Вы можете легко найти аналог в каталоге фирмы Компэл.


Рассказывать теорию я не буду и мне это лень. В интернетах и без меня понаписали и понарисовали много всего про ШИМ. А вот исходный код я вам покажу :)

#include <avr/io.h>
#include <avr/delay.h>

void PWM_Init() //устанавливаем PWM
{
    TCCR0 = (1 << WGM01) | (1 << WGM00) | (1 << CS00); //prescaler 0
    OCR0 = 0x00;
    DDRB |= (1 << DDB3);
}

int main( void )
{
	uint8_t pwm=0; //дополнительная переменная. хотя можно и без нее :)
	PWM_Init();
	TCCR0 ^=(1<<COM01); //включаем ШИМ
	while (1) {
		OCR0=pwm;
		pwm++;
		if (pwm>=255) pwm=0; //сброс
		_delay_ms(10); //задержка чтобы изменения были заметны глазу
    }
    return 0;
}

Схема подключения транзистора к микроконтроллеру. На рисунке Atmel Mega8 с подключением к OC2. Я использую Mega8535 и OC0.

На видео выглядит не очень хорошо, т.к. фотоаппарат пытается подстроиться под яркость света и не так хорошо заметно, как яркость повышается с минимальной до максимальной.

А вот тут я уже подключил схему к реальной нагрузке. Микросхему запитал через LM7805 от того же 12 вольтового источника питания. Ток, проходящий через транзистор почти 2 ампера.

4 комментариев »

4 комментариев »

Comment by Руслан | March 26, 2012 @ 23:09:20

Очень интересный сайт! Спасибо большое! Узнал много интересного!

Comment by 21h | March 27, 2012 @ 03:13:39

еще бы! спамботам всегда было интересно!

Comment by Руслан | March 28, 2012 @ 18:18:57

В смысле? Наркоман штоле?:D

Comment by 21h | March 28, 2012 @ 21:10:55

ого, ты не бот O_O такие фразы только хабраюзеры оставляют и спам боты :)

Форма отправки комментария

CAPTCHA
*

Разрешенные HTML-теги:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

RSS RSS Feed только для этого поста |


Комментарии
  • Игорь: Все настроил, еще раз просмотрел видео и методом научного тыка все настроил и сохранил, все работает и обе...
  • 21h: Здравствуйте, Игорь! Я не знаю :) Думаю аналогично согласно инструкции к вашей радиостанции.
  • Игорь: Добрый день, просмотрел Ваше видео все доступно и ясно для 8 ми канальных радеек, но мне нада настроить 69...
  • Гоги: Есть инструкция к Моторолкам – она подходит к серии Motorola TLKR T4… Т8. В конце сетка частот и...
  • 21h: торчок давно уже не обновлял, как только закрыл сайт где он работал. да, это морда для opentracker. без...
  • Buter: Какова дальнейшая жизнь торчка? Он кстати веб-интерфейсом для OpenTracker выступает? Без OpenTracker работать...
  • 21h: понятия не имею. гуглите инструкцию к вашей радейке и сверяйтесь с ней.
  • Денис: хочу их подружить с uv5r
  • Денис: t-388 walkie talkie на эти шпаргалочек нет,или как приминить ваши к их настройке?
  • John: Стекла для электроник – техночас.ру