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

 
 
 
Reply to this topicStart new topic
> Организация SSI интерфейса на Atmega
Алекс.
сообщение Mar 11 2009, 03:52
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 26-12-06
Пользователь №: 23 902



Добрый день!
Есть задача чтения данных с энкодера по 24-битному SSI-интерфейсу.
Может быть, кто-то уже делал и сможет подсказать?
Go to the top of the page
 
+Quote Post
rezident
сообщение Mar 11 2009, 17:53
Сообщение #2


Гуру
******

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



А что именно вам непонятно? Вы что-либо сами-то пробовали реализовать или ждете готового решения?
Go to the top of the page
 
+Quote Post
Алекс.
сообщение Mar 12 2009, 03:29
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 26-12-06
Пользователь №: 23 902



Цитата(rezident @ Mar 11 2009, 20:53) *
А что именно вам непонятно? Вы что-либо сами-то пробовали реализовать или ждете готового решения?


Добрый день.
Для сокращения времени (которого всегда мало) на разработку пытаюсь найти решение в какой либо степени готовности. Если не найду, решу сам. Но ведь всякое бывает: может кто-нибудь подбросит полезную ссылку, а еще бывают хорошие люди, которым приятно, когда все равно, кто, воплощает их идеи в жизнь.
Go to the top of the page
 
+Quote Post
rezident
сообщение Mar 13 2009, 16:53
Сообщение #4


Гуру
******

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



Ну ждите дальше laughing.gif Вам это видимо не очень нужно. Вы ведь ничего не сообщаете о том, с какого именно энкодера, чем именно нужно снимать данные и куда их дальше пихать?
Go to the top of the page
 
+Quote Post
Алекс.
сообщение Mar 26 2009, 08:46
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 26-12-06
Пользователь №: 23 902



Добрый день!
Нужно. Просто изменился подход. Данные не нужно передавать далеко.
Энкодер DRS60, 4096 дискрет, МК определяет сдвиг фаз каналов А и В, считает импульсы в одном из каналов и вырабатывает ШИМ-сигнал.
Затем - фильтр (ЦАП) и инвертор для асинхронного двигателя. Задатчик пути подключен к инвертору.
Все предельно ясно.
Но есть вопрос.
В CVAVR создал простую программу для ATMega16: один из каналов подключен к INT0, и в прерывании инк.(дек.) переменная. Т1 считат 4096 раз. В прерывании по переполнению обновляется OCR1A и переключается линия порта. В прерывании по совпадению преключается линия порта. В AVRStudio все работает правильно, а вот в PROTEUS не получается.
Это у меня программный ШИМ, а мне хочется использовать аппаратный. Пытаюсь создать быстрый ШИМ с вершиной в ICR1, сравнение с OCR1A. Все регистры, как в datasheet, но устройство в симуляторе не работает. В AVRStudio счетчик считает до 1FF и обратно, в PROTEUS тоже не работает.
Почему так? Есть ли симулятор, создающий правильный ШИМ?
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 26 2009, 15:41
Сообщение #6


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Алекс. @ Mar 26 2009, 10:46) *
Почему так? Есть ли симулятор, создающий правильный ШИМ?

Купите 16-ю мегу сделайте макетку (час работы) и проверяйте все в железе.
Можете купить сразу вторую 16-ю мегу и сделать на ней JTAGICE, чтобы пользоваться всеми прелестями отладки в железе.
Go to the top of the page
 
+Quote Post
Goodefine
сообщение Mar 26 2009, 16:27
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 6-08-07
Из: Приднестровье, Тирасполь
Пользователь №: 29 581



Цитата(Алекс. @ Mar 26 2009, 11:46) *
... Есть ли симулятор, создающий правильный ШИМ?
...Почему так?...

Есть. Называется Proteus...
Цитата(Алекс. @ Mar 26 2009, 11:46) *
...Почему так?...

Чтобы ответить на этот вопрос, не видя кода, нужно обладать неслабыми телепатическими способностями...


--------------------
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
Go to the top of the page
 
+Quote Post
Алекс.
сообщение Mar 31 2009, 02:56
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 26-12-06
Пользователь №: 23 902



Добрый день!
Видимо, необходимо опробовать на реальном устройстве. Я так и сделаю.
А сейчас представляю проект CVAVR с файлом для PROTEUS.
В PROTEUS при нажатии на кнопку не происходит изменение ШИМ.
В AVRStudio Т1 считает до 1FF и обратно вместо быстрого ЩИМ до FF.
Не могу найти ошибку.
Прикрепленные файлы
Прикрепленный файл  _______ATMega16.rar ( 54.88 килобайт ) Кол-во скачиваний: 23
 
Go to the top of the page
 
+Quote Post
Goodefine
сообщение Mar 31 2009, 07:16
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 211
Регистрация: 6-08-07
Из: Приднестровье, Тирасполь
Пользователь №: 29 581



Вот подтверждение очередного поклепа на Proteus smile.gif
C какой радости ШИМу изменяться? Прерывание от кнопки возникает? Чтобы работало с Вашими настройками интеррапта по int0 и пр подключении кнопок плюсу, НЕОБХОДИМО подключить подтягивающие к ЗЕМЛЕ резисторы (2-5кОм) ко входам int0 и PD1. В этом плане протеус очень хорош - не дает забывать важные вещи...


--------------------
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Mar 31 2009, 08:49
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



bb-offtopic.gif
Мне кажется, если появится симулятор секса, то он найдёт массу поклонников.

Ну ладно человек, начиная работать с энкодером и ШИМом, не загланул в даташит на конкретную микросхему. Но не заглянуть ВООБЩЕ на семейство в целом - это уже что-то. Ну ладно не разобрался в тонкостях работы таймера, но не представлять работу портов... При том что построение портов более-менее приблизилось фактически к стандарту...

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

Мой вам совет. Откиньте свою лень и прочитайте максимум доступной литературы. Это сэкономит, вопреки ожиданиям, массу времени.
Go to the top of the page
 
+Quote Post
Алекс.
сообщение Apr 1 2009, 01:59
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 26-12-06
Пользователь №: 23 902



Цитата(Goodefine @ Mar 31 2009, 10:16) *
Вот подтверждение очередного поклепа на Proteus :)
C какой радости ШИМу изменяться? Прерывание от кнопки возникает? Чтобы работало с Вашими настройками интеррапта по int0 и пр подключении кнопок плюсу, НЕОБХОДИМО подключить подтягивающие к ЗЕМЛЕ резисторы (2-5кОм) ко входам int0 и PD1. В этом плане протеус очень хорош - не дает забывать важные вещи...

Большое Вам спасибо за помощь. В PROTEUS все работает правильно. Вы совершенно справедливо заметили, что важные вещи лучше всего усваиваются практикой. К PROTEUS я отношусь с большим уважением, и далек от поклепов на программу. Речь шла о том, что у МЕНЯ не получается. Кроме того, я отдаю себе отчет в уровне моих знаний электроники, и поэтому не лезу туда, где корифеи науки обсуждают вопросы мироздания, а обратился на форум, названный "В помощь начинающим", который, то есть, создан специально для таких, как я, для дилетантов, и на котором, я уверен, никто никого ни к чему не принуждает. Если дилетантство - порок, то отнюдь не самый грязный. Есть пороки и похуже. В следующей за Вашей реплике Вы можете наблюдать характерное проявление паталогического нарциссизма и порожденных им всезнайства и снобизма. Что делать? Такое на форумах, к сожалению, встречается. Я же как делал нужные мне устройства для своего дома , так и дальше буду делать.
Еще раз спасибо Вам за помощь.
Go to the top of the page
 
+Quote Post

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

 


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


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