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

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

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

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

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

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

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 21.02.2010, 02:02  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

Сообщение от spballiance Посмотреть сообщение
еще раз говорю, с приращением все понятно, я теперь разбираюсь с вычислением этого приращения. вот тут и появляется умножение.
его алгоритм не заканчивается приращением фазы.
Никто не вычисляет приращение фазы в ассемблерном прерывании на лету. Так что проблема непонятна. Считайте его на С где угодно, в С с умножением нет никаких проблем
Реклама:
kison вне форума  
Непрочитано 21.02.2010, 13:30  
spballiance
Вид на жительство
 
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
spballiance на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

все равно не понимаю эту формулу

;Freq = Fval x Calib / 16777216
;Nominal Calib = 180143985
;for Ttimer = 4.000 uS
spballiance вне форума  
Непрочитано 21.02.2010, 17:13  
spballiance
Вид на жительство
 
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
spballiance на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

http://www.myplace.nu/avr/minidds/minidds.asm
тут прозрачнее описано и понятно
spballiance вне форума  
Непрочитано 21.02.2010, 17:26  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

Сообщение от spballiance Посмотреть сообщение
тут прозрачнее описано и понятно
Ну и отлично. Но учтите - там DDS грузит процессор на 100%, и делать еще что либо не получится.
kison вне форума  
Непрочитано 21.02.2010, 17:48  
spballiance
Вид на жительство
 
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
spballiance на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

Сообщение от kison Посмотреть сообщение
там DDS грузит процессор на 100%, и делать еще что либо не получится.
да черт с ним, я свяжу 2 контроллера по usart и все, ну а синус через фильтры прогоню, растяну и смещу как мне надо
и та методика на 20кгц дает погрешность 0,02Гц так что терпимо

я с телесистем так и не понял как рассчитывать приращение фаз
Но все равно этот алгоритм мне не подходит для решения "все-в-одном", обработчик АЦП будет сильно влиять на генерацию частоты

Последний раз редактировалось spballiance; 21.02.2010 в 17:52.
spballiance вне форума  
Непрочитано 21.02.2010, 17:55  
kison
Почётный гражданин KAZUS.RU
 
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
kison на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

Сообщение от spballiance Посмотреть сообщение
Но все равно этот алгоритм мне не подходит для решения "все-в-одном", обработчик АЦП будет сильно влиять на генерацию частоты
Естественно. Поэтому я и предлагал вынести задачу генерации в отдельный кристалл. Лишняя t2313 вряд ли сильно удорожит проект. Там должно быть всего одно прерывание от таймера, так что если все сделать в одном кристалле, то АЦП придется обрабатывать поллингом в основном цикле. Вы прикиньте, может и в один поместится. Для этого надо всего лишь написать две процедуры - обработчик DDS на асме и поллинг АЦП на С.
kison вне форума  
Непрочитано 21.02.2010, 18:00  
spballiance
Вид на жительство
 
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
spballiance на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

Сообщение от kison Посмотреть сообщение
Вы прикиньте, может и в один поместится. Для этого надо всего лишь написать две процедуры - обработчик DDS на асме и поллинг АЦП на С.
да нет, у меня слишком ветвистая программа получится. у меня в основном контроллере уже 60% занято, а еще фурье не вбивал

кстати про USART. слишком принципиально будет, если на меге будет 16 Мгц кристал? вроде как при "нерекомендованных" значениях кварца набегает какая-то погрешность по частоте на линиях приема-передачи?

Последний раз редактировалось spballiance; 21.02.2010 в 18:12.
spballiance вне форума  
Непрочитано 21.02.2010, 19:26  
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

Сообщение от spballiance Посмотреть сообщение
про USART. слишком принципиально будет, если на меге будет 16 Мгц кристал? вроде как при "нерекомендованных" значениях кварца набегает какая-то погрешность по частоте на линиях приема-передачи?
А какие там РЕКОМЕНДОВАННЫЕ КВАРЦЫ? это те что в
даташите в табличках?...
это же просто для примера расчитаны наиболее распространённые.

Берём формулы из ШИТа и расчитываем по применяемому кварцу значения регистров. А затем считаем занчение скорости и отклонение. Если в пределах 1-2% то работает.
picavr вне форума  
Непрочитано 21.02.2010, 19:40  
spballiance
Вид на жительство
 
Регистрация: 13.02.2010
Сообщений: 372
Сказал спасибо: 12
Сказали Спасибо 15 раз(а) в 12 сообщении(ях)
spballiance на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

Сообщение от picavr Посмотреть сообщение
Если в пределах 1-2% то работает.
"рекомендованные" 0,0%
то есть если у меня там и там будет 16МГц, то на ошибку можно наплевать вообще?

сижу допиливаю алгоритм под себя вырезаю ненужное, добавляю нужное, в том числе и sleep в тот момент, когда генерить не надо, хотя проблема потребления меня не волнует
spballiance вне форума  
Непрочитано 21.02.2010, 19:44  
Kabron
Почётный гражданин KAZUS.RU
 
Аватар для Kabron
 
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,564
Сказал спасибо: 701
Сказали Спасибо 4,334 раз(а) в 1,985 сообщении(ях)
Kabron на пути к лучшему
По умолчанию Re: Регулировка частоты на контроллере

Ну или так на PORTB.7:
'////////////////////////////////////////////////////////////////////
'/// DDS Function generator 0.1 Hz - 1250 kHz, resolution 0.1 Hz ///
'////////////////////////////////////////////////////////////////////
$regfile = "m48def.dat"
Const Fosc = 7380000
$crystal = Fosc ' adjust for used crystal
$baud = 115200
$hwstack = 32
$swstack = 32
$framesize = 32
Declare Sub Gensquare()
Declare Sub Calcload()

Dim Mload_r As Iram Long At 12 Overlay
Dim Phase As Iram Long At 26 Overlay

Dim Freq As Long
Dim Mloads As Single
Dim Mload As Long

Const Wide = 2 ^ 32
Const L = 7
Const Frmul =(wide / Fosc) * L

Ddrb = &HFF
Ddrd = &B10010010
Freq = 2002

Call Calcload
Call Gensquare()

Sub Calcload()
Mloads = Freq * Frmul
'Mloads = Mloads / 10
Mload = Mloads
End Sub

Sub Gensquare()
Phase = 0
Mload_r = Mload

Sqrs:
add r26,r12 ; 1
Adc r27,r13 ; 1
Adc r28,r14 ; 1
Adc r29,r15 ; 1
!out PORTB,r29 ; 1
rjmp Sqrs ; 2 = 7
End Sub
Kabron вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменение частоты на ATmega8 lextorg Микроконтроллеры, АЦП, память и т.д 22 14.01.2010 14:48
Контроль частоты вращения Faxa Электроника - это просто 6 06.01.2010 23:43
Делитель частоты Gladkih TTL и CMOS логика 7 07.12.2009 18:31
Генератор частоты на Mega - как? code-by Микроконтроллеры, АЦП, память и т.д 9 10.11.2009 15:02


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


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