Jump to content
    

приостановка основного потока pthread

Система Linux + T113-s3

сделан один поток , в котором постоянно ждем событие прерывания на ноге процессора

после появления события вызываем коллбэк , в котором чтото делаем и отсылаем-принимаем по SPI

кроме того сама главная программа постоянно работает со SPI

Как сделать некий аналог IRQ callback  как в обычном контроллере 

Т.е что бы при вызове коллбэка в потоке основная программа блокировалась , после завершения коллбэка , основная программа разблокировалась?

например где то в потоке бесконечн бежит опрос  паралельно с основной програмой 

wile(){

    if(waiting_rise_gpio  ()){

     my_IRQ_callback();

   }

 

а в самом коллбэке

void my_IRQ_callback(){

// блокируем выполнение(переключение потока) основного кода в мэйн

//здесь бежит только этот поток , один

 

// включаем разрешение на возврат к main

//теперь потоки опять чередуются

}

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...