реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Тактирование, Паралельная работа 2-х микроконтроллеров
addi
сообщение Dec 12 2007, 17:36
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 679
Регистрация: 9-08-06
Пользователь №: 19 422



Здравствуйте,
прошу Вас подсказать как лучше поступить в следующем случае:
Есть два Пика, которые должны работать условно паралельно на частоте 16МГц.
Как их можно затактировать и чем от одного источника, чтобы добиться условной паралельности.?
Пока стоит два кварцевых резонатора, думаю поставить какой-нибудь кварцевый генератор на два выхода, если вообще такие существуют.
???
Заранее благодарен.
Go to the top of the page
 
+Quote Post
*antzol*
сообщение Dec 12 2007, 18:00
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 6-11-07
Пользователь №: 32 085



1. Можно собрать отдельный тактовый генератор и подавать сигнал с него на выводы osc1 микроконтроллеров.
2. Можно подключить кварц только к одному контроллеру (между osc1 и osc2), а с его вывода osc2 снимать тактовые импульсы и подавать их через буфер на второй контроллер (вывод osc1).
Go to the top of the page
 
+Quote Post
addi
сообщение Dec 12 2007, 18:09
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 679
Регистрация: 9-08-06
Пользователь №: 19 422



Цитата(*antzol* @ Dec 12 2007, 21:00) *
1. Можно собрать отдельный тактовый генератор и подавать сигнал с него на выводы osc1 микроконтроллеров.
2. Можно подключить кварц только к одному контроллеру (между osc1 и osc2), а с его вывода osc2 снимать тактовые импульсы и подавать их через буфер на второй контроллер (вывод osc1).



Спасибо большое за поддержку, правда по поводу второго случая есть вопрос:
Может быть такое что буфер будет вносить смещение клоков при 16МГц?
Go to the top of the page
 
+Quote Post
*antzol*
сообщение Dec 12 2007, 18:55
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 6-11-07
Пользователь №: 32 085



Ну да, тогда наверно лучше от отдельного генератора.
А для чего такая синхронность?
Go to the top of the page
 
+Quote Post
addi
сообщение Dec 12 2007, 19:22
Сообщение #5


Знающий
****

Группа: Участник
Сообщений: 679
Регистрация: 9-08-06
Пользователь №: 19 422



Цитата(*antzol* @ Dec 12 2007, 21:55) *
Ну да, тогда наверно лучше от отдельного генератора.
А для чего такая синхронность?

Синхронность для того чтобы создвать параллельную работу 2-х процессов процессов, а именно генерирование несущей частоты ШИМа и модулирующей.
А какой генератор ставить с одним выходом или с двумя?, если конечно есть такие, прсто я немного не в теме резонаторов.
Go to the top of the page
 
+Quote Post
pkuz
сообщение Dec 12 2007, 20:20
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 76
Регистрация: 23-02-07
Из: Минск
Пользователь №: 25 611



Тактирование можно выполнить внешним генератором(любым на рассыпухе,генератором готовым) через буфер логич(любой элемент) или два элемента(входы вместе к ген. выходы два на кирпичи)
Есть еще способ подать на 1-й осц сигнал,на втором получим 1/4 синхронно с первым осц smile.gif
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение Dec 13 2007, 05:13
Сообщение #7


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



Цитата(addi @ Dec 12 2007, 21:09) *
Спасибо большое за поддержку, правда по поводу второго случая есть вопрос:
Может быть такое что буфер будет вносить смещение клоков при 16МГц?



никакого смещения не будет - это десятки наносекунд - всех устроит
буфер тоже не нужен - если всё это находиться рядом достаточно поставить разделительный конденсатор на 1000-3300 пик а конденсатор с этой стороны кварца уменьшить на 10-15 пик применительно кварца 12 мегагерц
Go to the top of the page
 
+Quote Post
PSP
сообщение Dec 13 2007, 20:48
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 118
Регистрация: 1-10-07
Пользователь №: 30 988



Кроме синхронной и синфазной тактовой частоты еще нужно обеспечить синхронный старт по отпусканию сброса. Наверняка сигнал сброса придется привязывать к тактовой частоте, иначе, при неудачном попадании сброса на фронт тактовой, возможна ошибка на такт.
Go to the top of the page
 
+Quote Post
rezident
сообщение Dec 13 2007, 22:50
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



ИМХО, просто тактируя от одного генератора два МК, синхронности выполнения разных программ или даже одинаковых программ, но с разными параметрами и/или внешними воздействиями вы не достигните. Синхронизм нужно налаживать в конечном (программном или аппаратном) автомате, непосредственно реализующем ШИМ.
Go to the top of the page
 
+Quote Post
PSP
сообщение Dec 13 2007, 23:01
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 118
Регистрация: 1-10-07
Пользователь №: 30 988



Думаю, что все предыдущие рассуждения о синхронизации актуальны для абсолютно одинаковых устройств, синхронизированных по всем входным воздействиям для целей дублирования/мажорирования. Хотя, конечно, обычно так не делают.
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Dec 13 2007, 23:09
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



Цитата(addi @ Dec 12 2007, 22:22) *
Синхронность для того чтобы создвать параллельную работу 2-х процессов процессов, а именно генерирование несущей частоты ШИМа и модулирующей...
А нельзя ли всё сделать на одном МК?

Цитата(PSP @ Dec 13 2007, 23:48) *
Кроме синхронной и синфазной тактовой частоты еще нужно обеспечить синхронный старт по отпусканию сброса. Наверняка сигнал сброса придется привязывать к тактовой частоте, иначе, при неудачном попадании сброса на фронт тактовой, возможна ошибка на такт.
+1 (чисто теоретически). Для этого можно использовать D-триггер с RC-цепочкой на входе D, тактируемый тем же опорным генератором. Однако, практическая ценность подобного способа синхронизации МК вообще может быть поставлена под большое сомнение.

Цитата(rezident @ Dec 14 2007, 01:50) *
ИМХО, просто тактируя от одного генератора два МК, синхронности выполнения разных программ или даже одинаковых программ, но с разными параметрами и/или внешними воздействиями вы не достигните. Синхронизм нужно налаживать в конечном (программном или аппаратном) автомате, непосредственно реализующем ШИМ.
От алгоритма работы зависит... Хотя, я бы так никогда не стал делать.
Синхронизма можно добиться путём подачи периодического синхросигнала (прерывания) от одного МК к другому.
Хотя, в данном случае, лучше всё-таки решать задачу на одном МК, без извратов.


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
rezident
сообщение Dec 13 2007, 23:49
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(Stanislav @ Dec 14 2007, 04:09) *
Синхронизма можно добиться путём подачи периодического синхросигнала (прерывания) от одного МК к другому.
Ну да, должна быть связка ведущий-ведомый. Я же имел в виду, что ограничиваясь только лишь одним общим источником тактирования (без каких-либо доп. способов и/или обратных связей), обозначенную проблему синхронизации не решить.
Go to the top of the page
 
+Quote Post
pkuz
сообщение Dec 14 2007, 00:30
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 76
Регистрация: 23-02-07
Из: Минск
Пользователь №: 25 611



Чисто теор возможна синхронизация от 1/4 такта(мой прев.пост) первого мк,при неоходимости синхронно сработать с первым второй читает данные опираясь на переходы(фронт или ...1.)

Не рекомендую использовать раздел конд в цепях для данной синхронизации тк сдвиг будет 90град(практически за счет утечек и качества конд менее 90 именно поэтому в автогенераторах для поворота на 180град применяют цепь из трех последов вкл емкостей)

Однако нет гарантии что при включении или сбросе пройдя 1024 такта мы выдем на сихронную работу двух генераторов процессоров!
Да еще вариант неизвесного состояния в случае сна !?(дальнейшее пробуждение)

Неизвестена цель автора, точная синхронизация? точнее как общаются два мк! т к мк делают разные прогр алгоритмы,неизвестно время отклика на прием-передачу данных,тогда есть необходимость доп линии (запрос на передачу или готовность приема) для устранения повторной передачи пакета и ожидания сигнала приема(правильного),если такой предусмотрен протоколом связи
Go to the top of the page
 
+Quote Post
rv3dll(lex)
сообщение Dec 14 2007, 05:50
Сообщение #14


Полное ничтожество
*****

Группа: Banned
Сообщений: 1 991
Регистрация: 20-03-07
Из: Коломна
Пользователь №: 26 354



а давайте поставим третий процессор который будет следить за этими двумя)

1. если они разбегуться на 1-2 такта клока ничего не произойдёт в выходном суммарном шиме!!!!

2. При ресете клок не останавливается - нужна нормальная схема ресета типа мах809
Go to the top of the page
 
+Quote Post
PSP
сообщение Dec 14 2007, 11:39
Сообщение #15


Частый гость
**

Группа: Свой
Сообщений: 118
Регистрация: 1-10-07
Пользователь №: 30 988



Цитата(pkuz @ Dec 14 2007, 02:30) *
Не рекомендую использовать раздел конд в цепях для данной синхронизации тк сдвиг будет 90град(практически за счет утечек и качества конд менее 90 именно поэтому в автогенераторах для поворота на 180град применяют цепь из трех последов вкл емкостей)

В нормально разработанных схемах разделительный конденсатор не дает практически никакого фазового сдвига. А в упомянутых Вами генераторах с тремя конденсаторами используются три последовательные дифференцирующие RC-цепи на частоте ниже частоты среза получившегося ФВЧ, там и возникает фазовый сдвиг.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 23:53
Рейтинг@Mail.ru


Страница сгенерированна за 0.01505 секунд с 7
ELECTRONIX ©2004-2016