Przerwanie działania programu w dowolnym momencie
Ostatnio zmodyfikowano 2016-05-21 07:40
paulinaj99 Temat założony przez niniejszego użytkownika |
Przerwanie działania programu w dowolnym momencie » 2016-05-20 18:59:35 Witam,
Mam jedno pytanie, tworzę program w C++ obsługujący robota i tak błądzę w Internecie na temat czy możliwe dokonanie przerwania programu w dowolnym momencie np. za pomocą jakiegoś klawisza, mówiąc dokładniej chce aby program działał, pętla się wykonywała nieprzerwanie, czyli w tym przypadku robot po prostu sobie chodził, aż do momentu wciśnięcia przez użytkownika wskazanego klawisza i nie chodzi mi tu żeby za każdym razem wykonywania pętli pytał się mnie czy kontynuować, ale żeby móc ingerować w program w dowolnym momencie. W arduino występuje funkcja przerwań, natomiast w tym przypadku nie mam pojęcia w jaki sposób to zrealizować. Z góry dzięki za pomoc ! |
|
mateczek |
» 2016-05-20 19:13:53 |
|
michal11 |
» 2016-05-20 19:59:58 Return z maina. Od biedy exit(), chociaż nie wiem dokładnie jak to działa, musiałbyś poszukać w dokumentacji. |
|
paulinaj99 Temat założony przez niniejszego użytkownika |
» 2016-05-20 20:45:11 Piszę program na Raspberry Pi. Odcinanie zasilania uprawiam na co dzień :) No szukałam informacji na temat funkcji exit(), ale nie wiem, szczerze nie przemawia do mnie albo po prostu jej nie czaje, przejrzę info na temat return'a. |
|
mateczek |
» 2016-05-20 22:42:20 Raspberry Pi to zestaw na jakimś ARM. Więc kolejne pytanie czy stawiasz na tym jakiś system operacyjny (to dość mocny zestaw wiec domniemuje, że z jakimś systemem typu Linux jest na to dostępny) Ale jest też pewnie możliwość pisania "bare-metal"?? W przypadku systemu sprawa jest o tyle prosta, że zrobienie return zakończy Ci program i będzie pracował tylko system operacyjny. W przypadku programu "bare-metal". Wywalenie returna skończy się wyskoczeniem gdzieś w śmieci pamięci i w konsekwencji reset. . A przerwania ma każdy procesor tylko trzeba się doszkolić jak się do nich dobrać !!!
|
|
darko202 |
» 2016-05-21 07:40:44 a kbhit() nie zalatwia Twojego problemu |
|
« 1 » |