stm32samples/F1:F103/Canon_managing_device
..
2023-01-18 23:36:26 +03:00

Canon lens management.

Management of some Canon Lens.

Pinout

  • PA4 - lens detect (zero active);
  • PA5,6,7 - SPI SCK, MISO, MOSI;
  • PA10 - USB DP pullup (zero active);
  • PA11,12 - USB DM, DP;
  • PA13,14 - SWD IO, CLK;
  • PB8,9 - CAN Rx,Tx;
  • PC13 - USB/CAN (solder jumper to turn on CAN instead of USB, zero - CAN).

Protocol have a string form, each string ends with '\n'. You should wait an answer for previous command before sending next, or have risk to miss all the rest commands in one packet.

USB commands:

0 - move to smallest foc value (e.g. 2.5m) 1 - move to largest foc value (e.g. infinity) d - open/close diaphragm by 1 step (+/-), open/close fully (o/c) (no way to know it current status) f - get focus state or move it to given relative position h - turn on hand focus management i - get lens information l - get lens model r - get regulators' state debugging commands: F - change SPI flags (F f val), f== l-LSBFIRST, b-BR [18MHz/2^(b+1)], p-CPOL, h-CPHA G - get SPI status I - reinit SPI R - software reset S - send data over SPI T - show Tms value