sergeus 0 19 марта, 2009 Опубликовано 19 марта, 2009 · Жалоба Мужики, делаю вывод wav звука, бьюсь несколько часов, не могу найти баг в исходнике. Почему-то не работает ШИМ на ATmega48. Частота тактирования - внутр. осциллятор 8МГц. Может есть какая новая фича, до этого без проблем работал с ШИМ на 8й меге. Прерывание Таймер2 работает с частотой - 8кГц, - такова частота дискретизации WAV файла. ШИМ, за него отвечает таймер1, работает на частоте СК/1 - частота выходного шим сигнала - 31кГц. На выходе ножки OC1A стоит НЧ цепочка-фильтр. На ножке ничего нет - ни малейшего дрыганья. При симуляции в AVR Studio - есть сигнал на ножке PB1, а в реалии на железе нет, в чем дело? Вот сам код на WinAVR: ... ISR(TIMER2_OVF_vect){ OCR1A = music[num_byte]; num_byte++; if (num_byte>959) num_byte=1; // stop timer1 TCNT2 = 224; // bitrate - 8 kHz } ... int main(void) { DDRD |=(1<<4)|(1<<3)|(1<<1)|(1<<6)|(1<<7); // LED OUT PORTD |=(1<<6)|(1<<3); // LOW SEGMENT DDRC = 0xFF; // all outputs PORTC = 0xFF; DDRB |=(1<<1); //OC1A - output TCCR2B |=(0<<CS22)|(1<<CS21)|(1<<CS20); // CK/32 - 8kHz TIMSK2 |=(1<<TOIE2); // interrrupt OVF 8kHz TCNT2 = 224; // bitrate - 8 kHz TCCR1A |=(1<<COM1A1)|(0<<COM1A0)|(1<<WGM10); //---___, 8 bit fast PWM TCCR1B |=(1<<WGM12)|(0<<CS12)|(0<<CS11)|(1<<CS10); //CK/1 - PWM - 31kHz OCR1A=0x66; sei(); while(1); } Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Палыч 6 20 марта, 2009 Опубликовано 20 марта, 2009 · Жалоба ... в чем дело?Наверное, нужно проверить правильность установки Fuses. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
777777 0 20 марта, 2009 Опубликовано 20 марта, 2009 · Жалоба Мужики, делаю вывод wav звука, С помощю ШИМ? Ни фига себе, а какой диапазон звука? При 8 Мгц частота ШИМ будет около 8 кГц, хреновенькое подавление его можно беспечить при частоте среза на порядок меньше, т.е. 800 Гц. Это что ж за звук можно передать на такой частоте? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 20 марта, 2009 Опубликовано 20 марта, 2009 · Жалоба Это что ж за звук можно передать на такой частоте? Нижний ряд DTMF :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
777777 0 20 марта, 2009 Опубликовано 20 марта, 2009 · Жалоба Нижний ряд DTMF :) ??? Это меня послали или как? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 20 марта, 2009 Опубликовано 20 марта, 2009 · Жалоба ??? Это меня послали или как? Почему сразу послали? Наоборот, +1!!! :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sergeus 0 20 марта, 2009 Опубликовано 20 марта, 2009 · Жалоба Народ, ШИМ на 8кГц я выбрал для отладки, как заработает установлю тактирование МК на 16MHz и сделаю частоту дискретизации 16кГц или еще больше. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ogurets 0 21 марта, 2009 Опубликовано 21 марта, 2009 · Жалоба вот скапчуренный образчик звука Roman Black'овского PICSound'а (www.romanblack.com) с тиньки если вдруг. sample_captured.mp3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться