Просмотр этой темы:
2 анонимных пользователей
Главный Технолог
Зарегистрирован:
01.07.2011 19:44 Из: Тольятти
Сообщений:
305
|
Здравствуйте. Кто нибудь работал со звуковым генератором, который работает от питания как светодиод.
Как подключать правильно его? И какой лучше транзистор? И как сделать так чтобы он пищал, как на машинных сигнализациях. Я соединяю его так: с ножки МК через резистор 331 ОМ на базу транзистора. Эмиттер на землю. Коллектор на - генератора, а его + на + питания. Транзистор - BC337. Код пишу без мигания работает отлично, т.е. если надо шумит, если нет, то не шумит. А вот когда пытаюсь сделать, как светодиодом мигание, то из него идет какой-то непонятный скрежет. А когда надо, чтобы он не сколько раз пропищал он издает какое-то шипение несколько раз. Во общем не работает. Подскажите, пожалуйста, как быть?
Отправлено: 13.07.2011 14:21
|
|
Технолог
Зарегистрирован:
11.05.2011 15:34 Из: Брянская область
Сообщений:
139
|
Без схемы как-то трудно разобраться... Схема откуда?
Отправлено: 13.07.2011 14:58
|
|
С уважением VLADER
|
||
Главный Технолог
Зарегистрирован:
01.07.2011 19:44 Из: Тольятти
Сообщений:
305
|
схему подключения в архиве.
Сам делал. Транзистор для защиты от перепада напряжения. Как я уже и писал BC337. Обыкновенный дешевый звуковой генератор, который работает как светодиод. Есть питание, нет питания. Только еще транзистор добавляется, как с семи сегментными индикаторами
Отправлено: 13.07.2011 16:12
|
|
Модератор
Зарегистрирован:
26.01.2010 23:26 Из: Тирасполь
Сообщений:
3926
|
Генератор работает только на одной частоте, и для стабилизации его режима- необходимо время.
Отправлено: 13.07.2011 16:33
|
|
Главный Технолог
Зарегистрирован:
01.07.2011 19:44 Из: Тольятти
Сообщений:
305
|
каокое? Сколько?
Подскажите, пожалуйста как быть. В простом режиме, когда необходимо просто вкл. и выкл. все идеально, а вот когда надо чтобы он несколько раз прозвучал, как автомобильная сигнализация, то хренушки. Идет какой-то не понятный скрежет. Очень надеюсь на Вашу помощь. С уважением, Максим
Отправлено: 13.07.2011 18:02
|
|
Главный Технолог
Зарегистрирован:
01.07.2011 19:44 Из: Тольятти
Сообщений:
305
|
И еще вопрос.
Я его правильно подключил? С МК подаю на вкл. 1, на выкл 0. Правильно делаю?
Отправлено: 13.07.2011 18:05
|
|
Модератор
Зарегистрирован:
26.01.2010 23:26 Из: Тирасполь
Сообщений:
3926
|
нужно подать 1 на включение, паузу 200 мс, потом выключить, подав 0. А у тебя какая-то фигня с функцией задержки.
Используй библиотечные. delay_ms(200); #include <delay.h> только в свойствах проекта выстави правильную частоту процессора
Отправлено: 13.07.2011 18:41
|
|
Главный Технолог
Зарегистрирован:
01.07.2011 19:44 Из: Тольятти
Сообщений:
305
|
я делаю задержки так:
void delay (unsigned long int d) { do {}while(--d) } При 8 Mhz: 1000 - 4.2 mS И пишу вот так: 1; delay(50000); 0; delay(50000);1;delay(50000);0 И идет скрежет про который я и пишу из него. Проверяю осциллографом. Какие-то слабо выраженные пульсации постоянно. Вот поэтому я и написал про схему. Может там проблема?
Отправлено: 13.07.2011 18:55
|
|
Модератор
Зарегистрирован:
26.01.2010 23:26 Из: Тирасполь
Сообщений:
3926
|
софт. оптимизатор твой код может прекрасно порезать
Отправлено: 13.07.2011 19:02
|
|
Главный Технолог
Зарегистрирован:
01.07.2011 19:44 Из: Тольятти
Сообщений:
305
|
А вотв codevision avr мои задержки прекрасно работают!
А вот про то что я написал выше, пишу в avr studio. Так попросили.Я не думаю что avr studio их урежит или ...? А без задержек во обще нет никакого звука.
Отправлено: 13.07.2011 19:10
|
|