2017-05-11 3 views
0

STM32F407 탐색을 사용하여 쿼드 코프를 수행 중입니다. 마침내 그것을 안정시킬 수있었습니다. 이제 저는 쿼드 코프터 동작을 제어 할 수 있도록 RC 수신기를 사용하려고합니다. 내 RC 수신기 채널의 PWM 신호를 읽는 방법이 있습니까 ?? 또한 내 RC 수신기가 PPM을 지원하고 내가 알고있는 바에 따르면 듀티 사이클이 강한 패킷을 수신하지만 여전히이 방법을 알지 못합니다.STM32F407에서 PWM 신호 읽기

답변

0

RC 수신기의 PPM (또는 PWM) 신호를 SPI 인터페이스를 사용하여 인코딩 할 수 있습니다.

일반적인 방법 :

  • 는 MISO 핀 제어부 (동시에)의 두 번째 행의 PPM 신호를 연결한다. MOSI, CLK 및 CS 핀은 필요하지 않습니다.
  • SPI 인터페이스를 적절한 시계로 초기화하십시오. 이 주파수로 신호가 컨트롤러에서 이동됩니다. 4kHz를 사용해보십시오.
  • 신호의 유휴 상태에 따라 두 번째 핀에서 상승 에지 또는 하강 에지 인터럽트 트리거를 활성화합니다. 들어오는 프레임을 트리거하는 데 사용됩니다.
  • 인터럽트가 발생하면 일시적으로 트리거를 시작하고 spi 전송을 시작하여 몇 바이트 (출고되고 연결되지 않음)를 얻습니다. 프레임 길이에 따라 8 또는 10 바이트가 필요합니다. 이렇게하면 프레임을 최대 20ms까지 잡을 수 있습니다.
  • 모든 바이트를 가져 오면 트리거를 다시 활성화하고 다음 프레임을 반복합니다.

수신 된 데이터에는 pwm/ppm 신호의 패턴이 포함되어야합니다. 또한 RC 수신기에서 수신 할 샘플링 속도와 바이트 수를 일치시켜야합니다.

+0

감사합니다. 내일 다시 시도 할 것입니다. –