Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы
Непрочитано 27.10.2012, 11:22  
deeman30rus
Частый гость
 
Регистрация: 02.04.2009
Сообщений: 42
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
deeman30rus на пути к лучшему
По умолчанию Attiny13\2313 и генератор импульсов на CVAVR

День добрый.

передо мной стоит следующая задача. собрать генератор импульсов заданной частоты на attiny13. Частота 114кГц. форма сигнала - меандр.
как бы несложная задача, однако, у меня не получилось её реализовать средствами CVAVR, т.к. стандартная библиотека задержек delay.h принимает только целые значения в функции delay_us() а для заданной частоты нужно 8.6 мкс периода. отклонение от заданной частоты - очень критично. Поэтому не могли бы вы мне подсказать бибилиотеки или какие-нибудь другие методы решения проблемы.

Из возможных вариантов я рассматривал dds генератор. однако, у меня не получилось перевести бейсик\ассемблерный исходник написанный в bascom в исходник на С для CVAVR, какие-то проблемы с синтаксисом, (я не силён в ассемблере). на всякий случай, я приложу исходник бейсика, может кто сможет его перегнать чтобы его воспринял cvavr.


можно предложить пару ссылок на статейку где описываются подобные вещи.
Вложения:
Тип файла: txt attiny13_DDS.txt (1.3 Кб, 257 просмотров)
Реклама:
deeman30rus вне форума  
Непрочитано 27.10.2012, 11:34  
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,981
Сказал спасибо: 0
Сказали Спасибо 4,939 раз(а) в 2,369 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Attiny13\2313 и генератор импульсов на CVAVR

Сообщение от deeman30rus Посмотреть сообщение
я не силён в ассемблере
так осильте - на С придется ассемблерные вставки делать или, что более правильно, написать проект на ассемблере. без этих знаний вы - "-0" ведь dds генератор, написанный Л.И., на ассме. есть проект dds генератора, где прямоугольный сигнал формируется до 200кгц, но тоже на ассме. а проще всего взять dds от АД - АД983х, цена копеечная
jump вне форума  
Непрочитано 27.10.2012, 12:38  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Attiny13\2313 и генератор импульсов на CVAVR

Сообщение от deeman30rus Посмотреть сообщение
для заданной частоты нужно 8.6 мкс периода.
8,7719298245614035087719298245614 us

Сообщение от deeman30rus Посмотреть сообщение
отклонение от заданной частоты - очень критично.
1 такт от внутреннего генератора 0,10416666666666666666666666666667us.
1 период равен 84,210526315789473684210526315789 тактов.
Какова нужна точность?

P.S.
DDS для меандра?
omercury вне форума  
Непрочитано 27.10.2012, 14:59  
deeman30rus
Частый гость
 
Регистрация: 02.04.2009
Сообщений: 42
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
deeman30rus на пути к лучшему
По умолчанию Re: Attiny13\2313 и генератор импульсов на CVAVR

по поводу точности - нужно чтобы постоянными были 114кГц

для меандра - dds + триггер, если быть более точным
deeman30rus вне форума  
Непрочитано 27.10.2012, 15:07  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Attiny13\2313 и генератор импульсов на CVAVR

Сообщение от deeman30rus Посмотреть сообщение
нужно чтобы постоянными были 114кГц
114кГц или 114000Гц?
omercury вне форума  
Непрочитано 27.10.2012, 16:22  
oleg110592
Гражданин KAZUS.RU
 
Регистрация: 05.04.2009
Сообщений: 976
Сказал спасибо: 35
Сказали Спасибо 155 раз(а) в 134 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: Attiny13\2313 и генератор импульсов на CVAVR

вроде можно организовать встроенным таймером
OCR=(8000000/114000*K*2)-1
К - коэффициент пределителя
OCR=8000000/(114000*1*2)-1=34.0877192982456*
Делал таким образом 36 кГц
а забыл в тини13 частота внутреннего генератора 9.6 мГц
9600000/(114000*1*2)-1=41.1052631578947
Код:
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: 9600.000 kHz
// Mode: CTC top=OCR0A
// OC0A output: Toggle on compare match
// OC0B output: Disconnected
TCCR0A=0x42;
TCCR0B=0x01;
TCNT0=0x00;
OCR0A=41;
OCR0B=0x00;

Последний раз редактировалось oleg110592; 27.10.2012 в 16:58.
oleg110592 вне форума  
Непрочитано 27.10.2012, 23:01  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Attiny13\2313 и генератор импульсов на CVAVR

114285,71428571428571428571428571 Гц
omercury вне форума  
Непрочитано 28.10.2012, 00:09  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,448
Сказал спасибо: 96
Сказали Спасибо 319 раз(а) в 233 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: Attiny13\2313 и генератор импульсов на CVAVR

Сообщение от deeman30rus Посмотреть сообщение
День добрый.

передо мной стоит следующая задача. собрать генератор импульсов заданной частоты на attiny13. Частота 114кГц. форма сигнала - меандр.

отклонение от заданной частоты - очень критично.
Ну если отклонение критично, тогда нужен кварц. К этому микроконтроллеру, как я помню, он не подключается, то есть, нужен внешний генератор. Это раз.

В МК есть счётчики с разными режимами работы. Вам нужен режим CTC с инвертированием вывода при переполнении.

То есть, 3-5 строчек кода.

Цастота кварца, естесственно, должна быть кратна полупериоду ваших 114 кГц.

P.S. Я бы выбрал для этих целей другой МК.
Godzilla82 вне форума  
Непрочитано 28.10.2012, 09:02  
oleg110592
Гражданин KAZUS.RU
 
Регистрация: 05.04.2009
Сообщений: 976
Сказал спасибо: 35
Сказали Спасибо 155 раз(а) в 134 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: Attiny13\2313 и генератор импульсов на CVAVR

Сообщение от omercury Посмотреть сообщение
114285,71428571428571428571428571 Гц
Есть такое дело. Можно OSCCAL попробовать подогнать.
Миниатюры:
Нажмите на изображение для увеличения
Название: protezus.gif
Просмотров: 116
Размер:	71.7 Кб
ID:	39953  
oleg110592 вне форума  
Непрочитано 29.10.2012, 08:05  
deeman30rus
Частый гость
 
Регистрация: 02.04.2009
Сообщений: 42
Сказал спасибо: 4
Сказали Спасибо 5 раз(а) в 5 сообщении(ях)
deeman30rus на пути к лучшему
По умолчанию Re: Attiny13\2313 и генератор импульсов на CVAVR

спасибо за ответы, я сегодня попробую сделать через таймер
deeman30rus вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Генератор пакета импульсов Dozorus TTL и CMOS логика 18 04.01.2012 17:34
Генератор импульсов metal59 Электроника - это просто 3 26.08.2011 18:01
Генератор импульсов тормозит... insiderbik Proteus 2 25.02.2010 00:18
генератор трёхфазных импульсов на МК andron-kip Микроконтроллеры, АЦП, память и т.д 24 22.12.2008 22:38
ATtiny13 и 2313 в VMLab standy_crow Proteus, KiCAD и другие ECAD 4 26.03.2008 00:43


Часовой пояс GMT +4, время: 07:35.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot