Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: ivan_fd  
Форум Picbasic.ru » Программирование МК » PicBasicPro » PIC16F876 синхронизация сигналов двух портов
PIC16F876 синхронизация сигналов двух портов
dikiy22 Дата: Пт, 12.02.2021, 02:17  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Новенький
Сообщений: 9
Репутация: 0   ±
Замечания:   ±
На сайте с 01.06.2019

Статус: Offline

Доброго времени суток всем, парни помогите синхронизировать разные сигналы, нужно получить синхронизацию строго по центру двух разных сигналов с разных портов МК PIC16F876 (в последующим сигналы будут добавляться как и их варианты) если вдруг это будет иметь значение. Который день мучаюсь ни чего дорого не получается, исходник и проект протеуса прикладываю.
Прикрепления: Timer.rar (46.1 Kb)
ЯНДЕКС Дата: 12.02.2021
xvovanx Дата: Пт, 12.02.2021, 11:52  |                                                                                                                Сообщение # 2
Группа: Модераторы
Ранг:  Помогаю всем
Сообщений: 326
Репутация: 59   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Немного непонятно, что значит "синхронизацию строго по центру двух разных сигналов"?
В цифровой технике есть только синхронизация по переднему/заднему фронту сигнала, но никак не по центру неизвестно какой длительности сигнала.
Нарисуйте графически сигналы и что и как вы хотите получить в итоге? Думаю так будет гораздо понятней для форумчан  wink

Сообщение отредактировал xvovanx - Пт, 12.02.2021, 11:54
anatol Дата: Пт, 12.02.2021, 18:32  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 472
Репутация: 32   ±
Замечания:   ±
На сайте с 10.02.2010

Статус: Offline

Если вы хотите получить синус, то алгоритм надо изменить. Записывать в таймер необходимую длительность и реакцию порта на эту длительность и делать это последовательно. Это для неизменной частоты.
Мое мнение - перестраиваемый генератор не выйдет.
dikiy22 Дата: Пт, 12.02.2021, 19:28  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Новенький
Сообщений: 9
Репутация: 0   ±
Замечания:   ±
На сайте с 01.06.2019

Статус: Offline

Цитата xvovanx ()
Немного непонятно, что значит "синхронизацию строго по центру двух разных сигналов"?В цифровой технике есть только синхронизация по переднему/заднему фронту сигнала, но никак не по центру неизвестно какой длительности сигнала.
Нарисуйте графически сигналы и что и как вы хотите получить в итоге? Думаю так будет гораздо понятней для форумчан

прикладываю картинку синхронизации двух сигналов, как должно получиться

---------------------------------------------
Цитата anatol ()
Если вы хотите получить синус, то алгоритм надо изменить. Записывать в таймер необходимую длительность и реакцию порта на эту длительность и делать это последовательно. Это для неизменной частоты. Мое мнение - перестраиваемый генератор не выйдет.
ваше понятие почти верно, только пилу хочу получить, а не синус. Перестраивать генератор ? если честно первый ра в жизни столкнулся с такой задачей и это единственное что пришло в голову как реализовать, но как видите уперся в грабли. если не трудно набросайте хотя бы рыбу, нужно направление.
Прикрепления: 5886284.jpg (5.8 Kb)

Сообщение отредактировал dikiy22 - Пт, 12.02.2021, 19:38
anatol Дата: Сб, 13.02.2021, 09:42  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 472
Репутация: 32   ±
Замечания:   ±
На сайте с 10.02.2010

Статус: Offline

У нас на форуме в сообщении http://www.picbasic.ru/forum/5-534-11393-16-1347657669  27  есть программа генерации. Выбрать нужный вам порт и добавить R2R
Сообщение отредактировал anatol - Сб, 13.02.2021, 09:46
dikiy22 Дата: Сб, 13.02.2021, 17:32  |                                                                                                                Сообщение # 6
Группа: Проверенные
Ранг:  Новенький
Сообщений: 9
Репутация: 0   ±
Замечания:   ±
На сайте с 01.06.2019

Статус: Offline

я видел эту ветку, и этот пример. Но в ветке много примеров на си в котором я совсем ни как, а 27 пост пример на протоне, вроде все понятно кроме одной строчки "Out=CRead Sinus + CC" как ее переписать под pic basic pro не понимаю.
anatol Дата: Сб, 13.02.2021, 17:55  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 472
Репутация: 32   ±
Замечания:   ±
На сайте с 10.02.2010

Статус: Offline

Я работаю в протоне. Out = число которое записывается в порт
CRead Sinus = чтение из таблицы значений синуса (амплитуды формируемой на каждом шаге порта  через R2R)
 CC = начальный и новый шаг
В переводе означает что начало таблицы будет расположена по какому то адресу и выбока из таблицы по смещению CC
dikiy22 Дата: Сб, 13.02.2021, 18:03  |                                                                                                                Сообщение # 8
Группа: Проверенные
Ранг:  Новенький
Сообщений: 9
Репутация: 0   ±
Замечания:   ±
На сайте с 01.06.2019

Статус: Offline

спасибо теперь понял, с массивами не работал но попробую.
Форум Picbasic.ru » Программирование МК » PicBasicPro » PIC16F876 синхронизация сигналов двух портов
  • Страница 1 из 1
  • 1
Поиск: