реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
Spider
сообщение Sep 23 2012, 11:54
Сообщение #1


В поисках истины
***

Группа: Свой
Сообщений: 431
Регистрация: 7-01-06
Из: Россия
Пользователь №: 12 923



Всем привет!

Вот "развлекаюсь" с STM32F103 и наткнулся на RT-Threads. Собрал её в минимуме - только UART консоль и минимальный необходимый набор. Всё работает.
Теперь у меня возник вопрос. Можно ли усыпить проц под управлением OS? Что будет с системой? Как она к этому отнесётся?
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Sep 23 2012, 12:18
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Alexey Belyaev @ Sep 23 2012, 14:54) *
Теперь у меня возник вопрос. Можно ли усыпить проц под управлением OS? Что будет с системой? Как она к этому отнесётся?

Можно: обычно для этой цели используется специальная задача Idle, в которой и происходит усыпление.
Но чтобы система вышла из сна нужно иметь источник пробуждения - Systick, ExternalInterrupt и тп.
Выглядит приерно так:

Код
void OS::idle_process_user_hook()
{
    prepareEM2();
    SCB->SCR |= SCB_SCR_SLEEPDEEP_Msk;
    __WFI();
}


Цитата(Alexey Belyaev @ Sep 23 2012, 14:54) *
Как она к этому отнесётся?

Куску кремния даже непофигу...
Go to the top of the page
 
+Quote Post
Spider
сообщение Sep 23 2012, 12:41
Сообщение #3


В поисках истины
***

Группа: Свой
Сообщений: 431
Регистрация: 7-01-06
Из: Россия
Пользователь №: 12 923



Спасибо за оперативность sm.gif
Я так понял речь идёт о этом:

rt_thread_idle_sethook(cpu_usage_idle_hook);

Так?
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Sep 23 2012, 12:50
Сообщение #4


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (Alexey Belyaev @ Sep 23 2012, 20:54) *
Как она к этому отнесётся?

ИМХО, ОС - обычная программа, только называется специальными красивыми словами) Однако, если у Вас в Idle считаются тики, на которые что-то завязано, то нужно осознавать, что эти тики перестанут считаться) В общем, все на совести программиста)


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Sep 23 2012, 12:53
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Alexey Belyaev @ Sep 23 2012, 15:41) *
Я так понял речь идёт о этом:

rt_thread_idle_sethook(cpu_usage_idle_hook);

По смыслу - то что надо.
Но Ось экзотическая (никогда про неё не слышал) точно утверждать не буду.
Возможно сам Idle тоже надо как-то инициализировать.

Цитата(haker_fox @ Sep 23 2012, 15:50) *
если у Вас в Idle считаются тики, на которые что-то завязано, то нужно осознавать, что эти тики перестанут считаться

Зачем в Idle тики считать?
Разве что производительность измерять...
Или вы что-то другое имели в виду?
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Sep 23 2012, 13:37
Сообщение #6


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (_Артём_ @ Sep 23 2012, 21:53) *
Разве что производительность измерять...
Или вы что-то другое имели в виду?

Да для чего угодно) Вариантов-то написания программ до кучи... Вот и решил я человеку обстоятельно ответить. Вдруг, действительно, производительность будет замеряться)


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Spider
сообщение Sep 23 2012, 13:43
Сообщение #7


В поисках истины
***

Группа: Свой
Сообщений: 431
Регистрация: 7-01-06
Из: Россия
Пользователь №: 12 923



Ради интереса этим и занялся, дабы попробовать sm.gif
ОС конечно проста, но без документации, так что тяжко пока
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Sep 23 2012, 14:01
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Alexey Belyaev @ Sep 23 2012, 16:43) *
ОС конечно проста, но без документации, так что тяжко пока

Взяли бы ОС с документацией - выбор огромен.
Или хотелось бы помучаться?
Go to the top of the page
 
+Quote Post
Spider
сообщение Sep 23 2012, 14:18
Сообщение #9


В поисках истины
***

Группа: Свой
Сообщений: 431
Регистрация: 7-01-06
Из: Россия
Пользователь №: 12 923



они все громозки и намучены sad.gif
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Sep 23 2012, 14:41
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Alexey Belyaev @ Sep 23 2012, 17:18) *
они все громозки и намучены sad.gif

Вот как...
А ОС с поддержкой GUI, TCP и написанная китайцами не громозка?

Почему не взять Ос с которой работает много народа - uCos, Rtx, Freertos и тд?
Go to the top of the page
 
+Quote Post
Spider
сообщение Sep 23 2012, 15:19
Сообщение #11


В поисках истины
***

Группа: Свой
Сообщений: 431
Регистрация: 7-01-06
Из: Россия
Пользователь №: 12 923



Ну я же сказал что я в этом не нуждаюсь и это не собирал, и тут я с ходу понял как и чего, а вот там не очень...
Go to the top of the page
 
+Quote Post
ViKo
сообщение Sep 23 2012, 16:12
Сообщение #12


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Советую Keil RTX. Простая.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 02:50
Рейтинг@Mail.ru


Страница сгенерированна за 0.01437 секунд с 7
ELECTRONIX ©2004-2016