Перейти к содержанию
    

Интерфейс управления объективами EF цифровых зеркалок CANON?

Да. Только как выяснилось, у кэнона протокол обмена по SPI включает ещё дополнительный, 9-й бит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да. Только как выяснилось, у кэнона протокол обмена по SPI включает ещё дополнительный, 9-й бит.

 

Очень интересно. А поподробней можно? Насколько я ковырялся - если дашь лишний тактовый импульс, то объектив отвечает ошибкой

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот нашёл в инете: (http://dangerousprototypes.com/forum/viewtopic.php?t=695)

 

The pinout is known, we can connect to a camera and lens using a hacked mount adaptor, and we know the protocol uses "8-data-bit, 1-stop-bit SPI (mode 3)". I have a small amount of experience with AVR microcontrollers (some years ago) and have done a bit of amateur level software engineering.

 

На объектив, действительно подаётся по 8 бит, как написано, и всё работает. Посылал данные согласно документам, описанным в "Автономное использование объективов Canon EOS". Но смотрел на осциллографе обмен тушки с объуктивом, там вот такая картинка:

 

 

post-73591-1373449638_thumb.jpg

 

Зелёный – MOSI

Розовый - MISO

Жёлтый – CLK

 

Размер по времени: 50 мкс в клетке.

 

Т. е. присутствует 9-й такт. Я его пока просто игнорирую.

 

post-73591-1373449760_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот нашёл в инете: (http://dangerousprototypes.com/forum/viewtopic.php?t=695)

 

The pinout is known, we can connect to a camera and lens using a hacked mount adaptor, and we know the protocol uses "8-data-bit, 1-stop-bit SPI (mode 3)". I have a small amount of experience with AVR microcontrollers (some years ago) and have done a bit of amateur level software engineering.

 

На объектив, действительно подаётся по 8 бит, как написано, и всё работает. Посылал данные согласно документам, описанным в "Автономное использование объективов Canon EOS". Но смотрел на осциллографе обмен тушки с объуктивом, там вот такая картинка:

 

 

post-73591-1373449638_thumb.jpg

 

Зелёный – MOSI

Розовый - MISO

Жёлтый – CLK

 

Размер по времени: 50 мкс в клетке.

 

Т. е. присутствует 9-й такт. Я его пока просто игнорирую.

 

post-73591-1373449760_thumb.jpg

 

Это не 9-ый бит. В конце посылки из 8 бит тушка переводит линию LCLK в 3 состояние для того чтобы объектив со своей стороны сигнализировал об ошибках поднятием этой линии в 1. Так что переход в 1 после перерыва - это просто тушка снова выставила 1 на тактовой линии.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В конце посылки из 8 бит тушка переводит линию LCLK в 3 состояние для того чтобы объектив со своей стороны сигнализировал об ошибках поднятием этой линии в 1.

 

То есть ему (объективу) даётся этот промежуток времени, чтобы он мог сигнализировать об ошибках? Так у объектива (слэйва) MOSI должен быть всегда настроен на вход. Или он на это время переключает его на выход?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То есть ему (объективу) даётся этот промежуток времени, чтобы он мог сигнализировать об ошибках? Так у объектива (слэйва) MOSI должен быть всегда настроен на вход. Или он на это время переключает его на выход?

Да, только CLK в вашей терминологии, а не MOSI, переключается

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот у меня есть, если интересно:

 

 

 

Список поддерживаемых команд (все команды в шестнадцатеричном виде)

 

 

 

Название, описание. Длина Байты

 

Нулевая команда. 1 00

Повтор изменения значения диафрагмы. 1 02

Повтор изменения значения диафрагмы. 1 03

Переход в положение "минимальный AF". 1 05

Переход в положение "максимальный AF". 1 06

Инициализация. 1 0A

Закрыть/открыть диафрагму на XX шагов. 1 12 XX

Переход в положение "максимальный AF". 1 16

Информация об объективе. 7 97 01

Получить мин/макс значение апертуры 4 B0

Текущее значение увеличения 2 A0

Закрыть/открыть диафрагму на XX шагов. 4 07 13 XX

Открыть диафрагму (полностью). 2 13 80

Относительное значение положения двигателя автофокуса. 1 C0

Подвинуть объектив на ХХ шагов. 1 44 XX XX

Включить ручное управление. 1 5E

Информация о модели объектива. 1 80

Относительное значение двигателя автофокуса. 1 С2

Положение переключателя AF/MF. 1 90

Информация об объективе. 1 CA

Переход в бесконечность. 1 25

Переход на отметку 2,5 м. 1 16

Получить значение апертуры 1 01

 

 

Вдвинуть объектив полностью 15, 25, 45, 55

 

 

Выдвинуть объектив полностью 16, 26, 46, 56

 

 

 

 

 

 

Да, хотел сказать клок. На днях как раз написал анализатор (монитор) протокола обмена. Железо - VS2010 + STK500 + mega128.

Там игнорирую 9-й бит (у меня биты определяются по фронтам). Мне кажется, этот 9-й проверочный цикл всё же можно рассматривать как 9-й бит. Однако выдаётся белиберда.

 

Однако, если просто управлять объективом CANON, то всё получается замечательно, даже без учёта этого проверочного бита.

А объектив CANON знает когда ему можно подавать ответные сигналы? Просто по времени определяет?

 

Это не 9-ый бит. В конце посылки из 8 бит тушка переводит линию LCLK в 3 состояние для того чтобы объектив со своей стороны сигнализировал об ошибках поднятием этой линии в 1. Так что переход в 1 после перерыва - это просто тушка снова выставила 1 на тактовой линии.

 

А клок притянут к земле?

 

И, насколько я понял, в MISO тоже стоит подтяжка. Я поставил 4 кОм между MISO и питанием. Даже не знаю, правильно ли. Но работает.

 

И скажите про логику ошибок. Они камерой рассматриваются как фатальные?

 

То есть, если объектив выставил "1", то дальше работать нельзя, или посылаются другие команды?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...