roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 15:17

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




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Сигнал заданной частоты с помощью ШИМ на ATtiny2313
СообщениеДобавлено: 17 окт 2008, 14:36 
Не в сети

Зарегистрирован: 17 окт 2008, 12:37
Сообщения: 16
Откуда: Воронеж
Всем доброго времени суток.
Недавно заинтересовался микроконтроллерами, после того, что увидел на instructables.com. (В нескольких статьях были очень простые, но интересные роботы)
Разбираюсь уже около недели, получилось спаять программатор "5 проводков", прошить программу "мигающий светодиод".

Мой МК - ATtiny2313.
Пытаюсь сделать генерацию сигнала, чтобы 1 и 0 "менялись" на ножке с заданной частотой, с помощью таймера в режиме ШИМ. Не получается.
Читал даташит, облазил кучу ресурсов в интернете - везде примеры либо на другой МК(или на языке ASM, или под другой компилятор), либо описано, как менять длину "импульса" на опр. частоте. Просмотрел все темы в этом разделе, решения не нашёл.
Даташит написан по-английски, и не могу разобраться, какие биты в какой регистр нужно записать, чтобы всё заработало.

Пользуюсь WinAVR, пишу на C.
Приведите, пожалуйста, пример кода, как это можно сделать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сигнал заданной частоты с помощью ШИМ на ATtiny2313
СообщениеДобавлено: 17 окт 2008, 14:42 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Вот недавно решали этот впрос - скриншоты мастеров настройки параметров ШИМ
http://www.radiokot.ru/forum/viewtopic. ... c&start=20

Как делать ШИМ на AVR
http://www.avr123.nm.ru/z8.htm

Русский даташит на AVR
http://www.avr123.nm.ru/02.htm


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сигнал заданной частоты с помощью ШИМ на ATtiny2313
СообщениеДобавлено: 17 окт 2008, 15:11 
Не в сети

Зарегистрирован: 17 окт 2008, 12:37
Сообщения: 16
Откуда: Воронеж
avr123.nm.ru писал(а):
Вот недавно решали этот впрос - скриншоты мастеров настройки параметров ШИМ
http://www.radiokot.ru/forum/viewtopic. ... c&start=20

Спасибо! Здесь есть нужный пример, правда, он на ассемблере, а мне бы хотелось на C, но я попробую разобраться.

avr123.nm.ru писал(а):
Как делать ШИМ на AVR
http://www.avr123.nm.ru/z8.htm

Там код приведён для другого МК, да и CodeVision ставить не хочу, меня WinAVR устраивает.

avr123.nm.ru писал(а):
Русский даташит на AVR
http://www.avr123.nm.ru/02.htm

А это даташит? Совсем непохоже. И про ШИМ в ATtiny2313 не написано.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сигнал заданной частоты с помощью ШИМ на ATtiny2313
СообщениеДобавлено: 17 окт 2008, 15:49 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Nex писал(а):
avr123.nm.ru писал(а):
Как делать ШИМ на AVR
http://www.avr123.nm.ru/z8.htm

Там код приведён для другого МК, да и CodeVision ставить не хочу, меня WinAVR устраивает.

И вы КОНЕЧНО не догадываетесь что в мастере можно указать НУЖНЫЙ МК ?! Да ???


Nex писал(а):
avr123.nm.ru писал(а):
Русский даташит на AVR
http://www.avr123.nm.ru/02.htm

А это даташит? Совсем непохоже.


А если ПРИСМОТРЕТЬСЯ ??? Вроде похоже :

Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сигнал заданной частоты с помощью ШИМ на ATtiny2313
СообщениеДобавлено: 17 окт 2008, 16:51 
Не в сети

Зарегистрирован: 17 окт 2008, 12:37
Сообщения: 16
Откуда: Воронеж
Цитата:
И вы КОНЕЧНО не догадываетесь что в мастере можно указать НУЖНЫЙ МК ?! Да ???

Не знаю про мастеры, CodeVision ставить не буду.

Цитата:
А если ПРИСМОТРЕТЬСЯ ??? Вроде похоже :

Хорошо, если присмотреться, то уже более похоже. Только здесь нет про ATtiny2313.

P.S. Ты не обижайся, ты мне здорово помог указав на топик с примером на асме, и спасибо большое.

Скоро сяду разбираться с исходником - если ничего не выйдет, буду опять вопросы задавать, если всё заработает - выложу здесь работающий код, для других новичков. Никто не против?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сигнал заданной частоты с помощью ШИМ на ATtiny2313
СообщениеДобавлено: 19 окт 2008, 12:58 
Не в сети

Зарегистрирован: 17 окт 2008, 12:37
Сообщения: 16
Откуда: Воронеж
Итак, я перевёл тот исходник с асма на C - ура, он работает!

Регулируем частоту ШИМ изменением верхней границы счета таймера на ATtiny2313, взято отсюда:
http://www.radiokot.ru/forum/viewtopic. ... 085#134085
Исходник на ассемблере:
Вложение:
pwm_f_asm.txt [4.37 КиБ]
Скачиваний: 495

(Расширение поменяйте сами, здесь почему-то нельзя залить файл с расширением .asm)

Почти всё то же самое, уже на C для WinAVR:
Вложение:
PWM_Beeper.c [1.39 КиБ]
Скачиваний: 633

Подключив PC Speaker минусом на GND, плюсом на PD5, динамик стал весело посвистывать!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Сигнал заданной частоты с помощью ШИМ на ATtiny2313
СообщениеДобавлено: 19 окт 2008, 13:53 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Nex писал(а):
Подключив PC Speaker минусом на GND, плюсом на PD5, динамик стал весело посвистывать!

Это можно сделать виртуально в PROTEUS


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

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16


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

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO