Музыкальный звонок на 120 мелодий |
На страницах журналов можно встретить много схем и описаний музыкальных звонков, но все они имеют один недостаток - число мелодий ограничено (не более 16), поэтому они довольно быстро запоминаются и надоедают. Предлагаемое устройство способно синтезировать до 120 мелодий, которые воспроизводятся последовательно с каждым следующим нажатием звонковой кнопки.
Принципиальная схема звонка изображена на рисунке ниже. Его основа - микроконтроллер AT90S8515-8PI фирмы ATMEL. При нажатии на звонковую кнопку SB 1 включается питание устройства, начинает работать программа, записанная в память микроконтроллера, и на выводе 39 (РАО) появляется напряжение лог. 1. В результате открывается транзистор VT1, срабатывает реле К1 и своими контактами К 1.1 блокирует кнопку звонка.
![](https://kazus.ru/nuke/objects/circuits/7/77etv82k13slb1ol6fb90p3xijwe5a05/image/mc54-1.gif)
Для формирования колебаний 3Ч используется таймер микроконтроллера и режим его работы на переключение внешнего вывода PD5 (для получения нужной звуковой частоты частоту работы таймера нужно умножить на два). Сигнал, снимаемый с этого вывода, усиливается составным транзистором VT2VT3, в коллекторную цепь которого включена динамическая головка ВА1. Для регулирования громкости последовательно с ней можно включить подстроечный резистор R5 (изображен штриховой линией).
После проигрывания мелодии программа записывает в энергонезависимую память (EEPROM) микроконтроллера указатель на следующую мелодию, высокий уровень на его выводе 39 сменяется низким и реле разрывает цепь питания до следующего нажатия на кнопку SB1.
Мелодии для звонка взяты из программы Melody Player for Motorola (находится в архиве mp4m.rar). Для конвертирования мелодий в ассемблерный вид написана программа motcvt (находится в архиве motcvt.гаг). Используя ее, нетрудно изменить/добавить/убрать любую мелодию. При запуске в командной строке указывают имя файла с мелодиями от mp4m и имя, под которым надо записать результирующий файл (например, mel.inc).
Исходные тексты программы для микроконтроллера находятся в архиве zvonok120.rar, основные моменты прокомментированы. При использовании кварцевого резонатора на другую частоту необходимо в строке .equ fsck = 3618400 файла zvonok.asm изменить значение частоты (3618400) на фактически используемое (в герцах). Все остальное пересчитает ассемблер. Программа написана и отлажена с помощью AVRStudio 4.0 Build 181.
Источник питания U1 - любой стабилизированный с выходным напряжением 5 В (можно использовать и батарею, составленную из гальванических элементов или аккумуляторов). Вместо BESTAR BT-5S допустимо применение любого реле с напряжением срабатывания не более 4,5 В и контактами, рассчитанными на коммутацию сетевого напряжения 220 В.
В процессе отладки устройства обнаружено, что содержимое энергонезависимой памяти данных микроконтроллера может испортиться, если после выключения питающее напряжение падает до 0 медленно (более 10 мс). Дело в том, что при плавном его понижении микроконтроллер некоторое время продолжает работать, а это может вызвать неверные декодирование и (или) выборку команд, что, в свою очередь, способно спровоцировать несанкционированную запись в EEPROM.
Для предотвращения порчи содержимого памяти можно использовать так называемый детектор понижения напряжения питания (отечественный КР1171СП47 или его зарубежный аналог PST529), который при понижении напряжения питания ниже установленного порога выдает сигнал Reset, останавливая тем самым работу микроконтроллера. Автор для этой цели использовал резистор R6, подключенный к выходу источника питания в качестве дополнительной нагрузки (на схеме показан штриховой линией). Автор: М.Белецкий, г.Уфа
C этой схемой также часто просматривают: |
ДВЕРНОЙ СЕНСОРНЫЙ ЗВОНОК
Электромузыкальный звонок
Музыкальный звонок
Патрон для лампы ИФК-120
Стробоскоп на 120 вольт
Простой USB-осциллограф на микроконтроллере
USB программатор микроконтроллеров AVR и AT89S, совместимый с AVR910
PIC-контроллер управляет электродвигателем
PIC-контроллер в автомобильных часах
| ![](/images/ru/clear.gif) |
Подключение энкодера к микроконтроллеру PIC
Счётчик людей в помещении, управляющий освещением
Велокомпьютер на микроконтроллере PIC16F628A
Устройство ввода-вывода на микроконтроллера
Два термометра на PIC16F628A и DS18B20
Светодиодные часы с циферблатом
Двоичные часы
Два вывода микроконтроллера PIC управляют шестью светодиодами
Цифровой программируемый таймер на микроконтроллере PIC16F628A
Устройство рисования в воздухе на ATtiny2313
|