Обявления

Для полноценной работы рекомендуется пройти регистрацию.

Рекламные сообщения будут удаляться вместе с пользователем. Что есть реклама - буду решать я.

Колокольчик в машину как в ино

Здесь только проекты на ATtiny

Колокольчик в машину как в ино

Сообщение 7-clown » 11 окт 2014 13:21

Код: Выделить всё
#include <io.h>
#include <delay.h>

#define PWM               OCR0A                              //Регистр для задания скважности ШИМ
#define CLR_TIMER         TCNT1H=0;TCNT1L=0    //Сбрасываем таймер
#define LEN               22                                      // Длина мелодии
#define TOP               255                                    // Верхний предел ШИМ

void initdev(){                   // Ининциализация портов МК

DDRB=0xff;

TIMSK=0x40;

//******************************
//Таймер прерывания         // Настраиваем прерывания по таймеру
TCCR1B=0x02;

// 800Hz                            // ТОн колокольчика
//OCR1AH=0x01;
//OCR1AL=0x38;

// 650Hz
//OCR1AH=0x01;
//OCR1AL=0x80;

// 550Hz
OCR1AH=0x01;
OCR1AL=0xC2;
//******************************

//******************************
//ШИМ 32kHz
TCCR0A=0x83;
TCCR0B=0x01; 
//******************************
}

void sin(char delt){                //Функция синуса, точнее пила

//delt max=TOP/2 (128)

static char
cnt;

switch(cnt){

       case 0:   
             PWM=delt;
       break;
       
       case 1:
             PWM=TOP/2;
       break;
       
       case 2:
            PWM=TOP-delt;
       break;
       
       case 3:
            PWM=TOP/2;
       break;
       
       default:break;
       }

cnt++;

if(cnt==4) cnt=0;
}

char time(){            //функция для расчета затухания мелодии

static char
tmp,de;

tmp++;

if(de==128){
de=0;
delay_ms(700);
}

  if(tmp==LEN){
   tmp=0;
   de++;       
   }
  return de;
}

void main(){

initdev();
#asm("sei")
     
   while(1)
   {
   }
}

interrupt [TIM1_COMPA] void compa_isr(){
             
CLR_TIMER;
 
sin(time());             
}
Вложения
ШИМ модуляция синуса.rar
Прект
(68.38 КБ) Скачиваний: 157
bell.rar
Образец колокольчика
(27.01 КБ) Скачиваний: 180
Последний раз редактировалось 7-clown 15 окт 2014 16:24, всего редактировалось 1 раз.
Аватара пользователя
7-clown
Пробегал мимо
 
Сообщения: 9
Зарегистрирован: 15 дек 2013 21:33
Откуда: СТР

Re: Колокольчик в машину как в ино

Сообщение georg77 » 15 окт 2014 15:36

краткость - се та ?
georg77
Частенько бываю
 
Сообщения: 84
Зарегистрирован: 26 ноя 2011 06:38

Re: Колокольчик в машину как в ино

Сообщение 7-clown » 15 окт 2014 16:20

Исходник пока что...устройство готовое позже оформлю. Цель - показать пример для написания...Мне было интересно как это сделать, звук колокольчика смоделировал и пока интерес поугас))

Литература:
http://avr-start.ru/?p=749
Аватара пользователя
7-clown
Пробегал мимо
 
Сообщения: 9
Зарегистрирован: 15 дек 2013 21:33
Откуда: СТР

Re: Колокольчик в машину как в ино

Сообщение propell_ant » 15 окт 2014 16:40

такое воспроизводит записанный в формате wav на attiny85
propell_ant
Живу тут
 
Сообщения: 276
Зарегистрирован: 03 июн 2014 09:22

Re: Колокольчик в машину как в ино

Сообщение zktch » 17 окт 2014 22:51

Вот интересная схема, сам лично сделал звук очень хороший ссылка: http://radioparty.ru/device-avr/521-bell-car-attiny13
zktch
Пробегал мимо
 
Сообщения: 8
Зарегистрирован: 01 мар 2014 00:10


Вернуться в ATtiny



Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и гости: 7