Переключение GPIO Raspberry Pi на фиксированную частоту - PullRequest
0 голосов
/ 20 июня 2020

У меня есть двоичный сигнал длиной 208–232 бит, который я хочу отправить через GPIO Raspberry Pi. Задержка между битами должна быть постоянной. Как я могу этого добиться?

Самым простым решением, которое пришло мне в голову, было следующее (псевдокод):

send(gpio, message, delay){
  for(int i = 0; i < lenght(message); i++){
    if (message[i] == 1){
      gpio.high()
    }
    else{
      gpio.low()
    }
    sleep(delay)
  }
}

Но частота, с которой я хочу отправить это сообщение, составляет около 40 кГц, поэтому задержка между двумя битами составляет всего 25 мкс. Как я могу гарантировать, что это именно и постоянно такая большая задержка.

...