() - кол-во байт ответа i - при инициализации (шапка каждого пакета запросов после долгой паузы) [https://pickandplace.wordpress.com/2011/10/05/canon-ef-s-protocol-and-electronic-follow-focus/] {http://www.rwpbb.ru/test/canonautosonyl.html} 00000001 0x01 i(6) - встречается только в шапке запроса (при инициализации линии), ответ - 0xc8,0,0xc8, нули [lens ID, min/max zoom, proto, brand] 00000101 0x05 (эхо) - только при автофокусе, за ним - 0x0f - [minAF] 00000110 0x06 (эхо) - только при автофокусе, за ним - 0x0f - [maxAF] 00000111 0x07 (эхо) - за ней разные команды {включить напряжение} 00001000 -> 0x08 (эхо) - встречается лишь 1 раз в shot_mf20m, за ним - пауза перед получением эха {отключение двигателей} 00001010 0x0a i(1) - [busy poll] в инициализационном пакете встречается 3 раза, далее - неоднократно в пакетах (за ним идет 0,b0); ответ - 0xaa 00001100 0x0c i(эхо) - за командой перед эхом - пауза; эта команда завершает инициализационную шапку везде 00001110 0x0e i(эхо) - за ней обычно идет 0x0f; редкая команда (при включении, автофокусе, экспозиции) 00001111 0x0f i(эхо) - за ней обычно следует что-нибудь из f0,0a,c0,90; -//- 00001011 0x13 (2) - установка диафрагмы. имеет аргумент, используется при экспозиции; арг: вернуть: 0x80; F/2.5: 0x07; F/4.0: 0x12; F/8.0: 0x22; F/16.0: 0x32; за аргументом обычно идет 0x90; ответ: 0x13,0x13 [{для некоторых объективов до нее нужно еще вызвать 0x07}] 01010000 0x50 (2) - имеет аргумент: 0x2c..0x2f; ответ 0x50,0x50; 0x2c встречается при нажатии кнопки "set focus" и иногра при автофокусировке; 0x2d - при автофокусе и экспозиции на Finfty; 0x2e - автофокус и экспозиция на F2.5m; в остальных случаях - 0x2f (вкл-выкл, быстро в infty, движение F+/F-, экспозиция F>=5m) 10000000 0x80 i(2) - начинает стартовую инициализационную последовательность 0x80,0x0a,0x99[0x97] с ответом 0x81,0x87,0x00 (третий байт зависит от ответа на 2 первых) - модель? 10010000 -> 0x90 (3) - (значимы только первые 2 байта ответа) Состояние кнопок объектива? ans 0x00,0x10 - AF, 0x00,0x90 - MF, 0x20,0x80/0x84 - крутится chFoc 10100000 0xa0 (?) - входит в состав порции данных при периодическом опросе (после инициализации) вида (вх) 0xa0,0x00,0xe4,0x00; ответ: 0x00,0xc8,0x9c,0x6a; за этой командой следует 0xb2 уже с разными ответами [current zoom] 10110000 -> 0xb0 (3) - идет после 0xf0 или 0x0a, ответ: 0x16, 0x16, 0x50; за ней бывают либо 0,0,a0, либо 0,0,c0, либо 7f,ff,0a -> ответ не меняется [min/max aperture] 10110010 -> 0xb2 (4) - (значимы только 2 средних байта ответа), ответ: 0x5a,x,y,0x00 11000000 -> 0xc0 (3) - (значимы только первые два байта ответа) положение лимба (в режиме "ручной фокус" возвращает нули в любом случае) 11100000 -> 0xe0 (2) - (меняется лишь второй байт ответа), ответ: 0xc2,x; за ней обычно следует 0xea 11100100 0xe4 (2) - ans 9c,6a, за ней идет обычно 0xb2 11101000 -> 0xe8 (7) - (значимы лишь первые 2 байта) меняется при изменении фокуса в автофокусе, за ней обычно следуют 0xf8, 0xfc; ответы при разных положениях MF: inf,20m,10m - 0x22,0x16; 5m - 0x21,0x66; 2.5m - 0x20,0xed; 11101010 -> 0xea (6) - (значимы лишь первые 2 байта, остальные - нули) меняется при изменении фокуса в автофокусе, встречается и в экспозиции при ручном фокусе - диафрагма? 11110000 0xf0 (1) - зависит от фокуса (0x11 - infty,20m,10m, 0x0d - 5m, 0x12 - 2.5m ?), за ней всегда следует 0xb0 11111000 -> 0xf8 - начало последовательности 0xf8,0xfc,0xfa,0xfe, следующей после команды 0xe8 - при фокусировке и экспозиции, ответы меняются: 2.5m - bd,cb,be,cd; 5m - ba,c6,bd,ca; 10m,20m,inf - b3,be,ba,c5; В состоянии poweroff нет команд 0x0e, 0x0f, остальные команды как в poweron (автофокус). Есть при экспозиции, нет при нажатии "set focus": 0x08, 0x0e, 0x13, 0x25, 0x2d, 0x2e, 0x2f, 0x7f, 0xff Есть только при нажатии "set focus": 0x2c Нет в poweron: 0x05, 0x06, 0x08, 0x13, 0x25, 0x2c, 0x2d, 0x2e, 0x7f, 0xe0, 0xe8, 0xea, 0xf0, 0xf8, 0xfa, 0xfc, 0xfe, 0xff Нет при включении в ручном фокусе: 0x07, 0x0c, 0x0e, 0x0f, 0xc0 (информация о параметрах объектива?) Итого. Подозрительные на команды с действиями: 0x05, 0x06, 0x08, 0x13, 0x25, 0x2c, 0x2d, 0x2e, 0x7f, 0xe0, 0xe8, 0xea, 0xf0, 0xf8, 0xfa, 0xfc, 0xfe, 0xff Нет при автофокусе, есть при экспозиции: 0x08, 0x13, 0x25, 0x7f, 0xff Нет ТОЛЬКО при автофокусе: 0x2f Есть только при автофокусе: 0x05 Есть только при экспозиции: 0x08, 0x13, 0x25, 0x7f, 0xff - все встречаются единожды Команда 0x08 встретилась лишь при экспозиции на F20m