Например TDA7294

Форум РадиоКот • Просмотр темы - помогите разобраться с пищалкой (пьезоизлучатель)
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пн дек 15, 2025 23:00:21

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: помогите разобраться с пищалкой (пьезоизлучатель)
СообщениеДобавлено: Пн апр 15, 2013 13:37:49 
Грызет канифоль

Зарегистрирован: Пт апр 05, 2013 09:55:02
Сообщений: 252
Рейтинг сообщения: 0
взята тема тут: http://chipenable.ru/index.php/programm ... evays.html

делаю это на атмеге 64 - в итоге тупо скрип и все.
частота 8 МГц. внутренняя.

самые главные в программе строчки это:
настройка таймера:
Спойлер
Код:
void SOUND_Init(void)
{
  //настройка вывода мк на выход
  PORT_SOUND &= ~(1<<PINX_SOUND);
  DDR_SOUND |= (1<<PINX_SOUND);
 
  //настройка таймера T2
  TIMSK |= (1<<TOIE2);   
  TCCR2 = (0<<WGM01)|(0<<WGM00)|(0<<CS02)|(0<<CS01)|(1<<CS00);  //режим - нормал, прескалер -
  TCNT2 = 0;   
  OCR2 = 0;
   
  //инициализация переменных
  pSong = Empty;
  state = SOUND_STOP;
  durationNote = 0;
  toneNote = 0;
  repeat = 0;
  indexNote = 0;
  statReg = 0;
#ifndef SOUND_BPM 
  bpm = 0;
#endif
}


установка переменных - коэффициентов частоты:

Код:
#define SOUND_F_CPU     16U //тактовая частота мк
#define SOUND_TIM_PRE   1U  //зачение предделителя таймера


ну и вычисление:

Код:
#define f(x) (SOUND_F_CPU*1000000UL/(x*2*SOUND_TIM_PRE))
#define fn(x) ((x*SOUND_F_CPU)/SOUND_TIM_PRE)

#define dn(x) ((24U*SOUND_F_CPU*1000000UL)/(x*SOUND_TIM_PRE*256UL*32UL)/COEF)
#define ms(x) (((x)*SOUND_F_CPU*1000UL)/(SOUND_TIM_PRE*256UL*32UL))



я так понимаю, что в примере юзают атмегу8 на частоте 16 МГц.
у меня стоит атмега64 на частоте 8МГц.

в Codevision тупо поменял:
1. на #include <mega64.h>
2. #define SOUND_F_CPU на 8U
3. в проекте указал что камушек - атмега64

скомпилил - длинный монотонный хрип.
стал играться с коэффициентами - эффекта ноль.

Подскажите, плииииииз - что не то.
вроде и таймер так же все настроен и частоты правильно указываю. но не пашет зараза такая.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: помогите разобраться с пищалкой (пьезоизлучатель)
СообщениеДобавлено: Пн апр 15, 2013 14:59:44 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 21
Рейтинг сообщений: 143
Зарегистрирован: Сб фев 21, 2009 13:11:40
Сообщений: 1900
Откуда: Москва
Рейтинг сообщения: 0
поправлю, в статье микроконтроллер ATmega8535. код смотреть нет времени.

_________________
Ставим плюсы: )


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: помогите разобраться с пищалкой (пьезоизлучатель)
СообщениеДобавлено: Пн апр 15, 2013 16:00:02 
Грызет канифоль

Зарегистрирован: Пт апр 05, 2013 09:55:02
Сообщений: 252
Рейтинг сообщения: 0
ibiza11 писал(а):
в статье микроконтроллер ATmega8535.

да. это я заметил :-)
это поправлено.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: помогите разобраться с пищалкой (пьезоизлучатель)
СообщениеДобавлено: Вт апр 16, 2013 07:47:08 
Грызет канифоль

Зарегистрирован: Пт апр 05, 2013 09:55:02
Сообщений: 252
Рейтинг сообщения: 0
неужели никто зуммер не использует?


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: помогите разобраться с пищалкой (пьезоизлучатель)
СообщениеДобавлено: Вт апр 16, 2013 13:42:51 
Вымогатель припоя
Аватар пользователя

Карма: 5
Рейтинг сообщений: 74
Зарегистрирован: Пн июн 18, 2012 12:01:04
Сообщений: 650
Откуда: Челябинская область, Копейск
Рейтинг сообщения: 0
Используем зумер, почему нет, просто пишу на асме, в си не практикую, вникать в прогу долго. Принцип то простой, читаешь даташит на зумер или подобный, там написано при какой частоте какая нота звучит, настраиваешь таймер на нужную частоту и подаешь на зумер.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: Simon.S и гости: 13


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y