roboforum.ru

Технический форум по робототехнике.
Текущее время: 01 мар 2025, 23:57

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Нагрузка МК
СообщениеДобавлено: 22 янв 2012, 19:46 
Не в сети

Зарегистрирован: 15 май 2011, 19:19
Сообщения: 239
Откуда: Ростов-на-Дону
Skype: levanchik322
прог. языки: WinAVR C, C#, HTML+СSS.
ФИО: Лёва
Делаю проект большой: робота. И не знаю как быть, много инфы обрабатывает процессор. я хочу освободить его от нагрузки большой, но не знаю как быть, был вариант ставить RTOS, но это морока, и пока я не хочу её ставить на авр, я потом хочу её дописать на арм проц. Есть вариант ставить диспетчер задачь, но не знаю нужно мне это или нет.
Какая идет нагрузка на проц? Да вот такая:
Робот радиоуправляемый, управляется по уарт:
символы принимаются по уарт в прерываниях и сохраняются в буфер.
А также паралелльно каждую секунду идет обработка напряжения и температуры, и всё это в 1 цикле.
помоему большая нагрузка на МК, используется и ацп, и таймеры, и прерывания - всё одновременно.
Может стоит освободить проц? Мне сказали нужно в прерываниях сразу обрабатывать символы принятые по уарт, стоит ли так делать?
Вот блок схема моего робота :(
Вложение:
1341.JPG
1341.JPG [ 24.69 КиБ | Просмотров: 1596 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нагрузка МК
СообщениеДобавлено: 22 янв 2012, 20:12 
Не в сети
Аватара пользователя

Зарегистрирован: 01 июл 2009, 08:59
Сообщения: 2254
Откуда: Екатеринбург
прог. языки: асемблер AVR
Это очень маленькая нагрузка на МК робота. Вам надо поизучать программирование, его приемы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нагрузка МК
СообщениеДобавлено: 22 янв 2012, 20:20 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
то что описано займёт от силы одну десятую времени работы МК. остальные 9 десятых он будет ничего не делать)))
так что смело можешь добавить роботу ещё десяток разных функций :)

_________________
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нагрузка МК
СообщениеДобавлено: 22 янв 2012, 21:08 
Не в сети

Зарегистрирован: 15 май 2011, 19:19
Сообщения: 239
Откуда: Ростов-на-Дону
Skype: levanchik322
прог. языки: WinAVR C, C#, HTML+СSS.
ФИО: Лёва
Спасибо за отличные слова! Я очень рад!
Radist, я за две недели прочитал 2е книги по С программированию (Брайн Страуп и Керниган), как программировать для IBM я более менее понял. МК AVR это намного слабее проц, чем те что в современных ПК, поэтому я перестраховался, я использую много технологий для более легкого чтения кода и для того чтобы данные не пропадали (данные с фиксированной точностью, тип volatile и т.д.).
Но все равно спасибо!
Скажите пожалуйста примеры когда МК нагружен сильно? И когда на МК большая нагрузка, что делать? ставить планировщик?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нагрузка МК
СообщениеДобавлено: 22 янв 2012, 21:45 
Не в сети
Аватара пользователя

Зарегистрирован: 10 ноя 2011, 12:02
Сообщения: 5691
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья
Если все правильно запрограммировано, то планировщик не спасет от большой нагрузки. Либо замена МК на более мощный, либо несколько МК и раскидывание задач между ними. Volatile данные не спасают от слишком большой нагрузки, volatile нужно для синхронизации параллельного исполнения нескольких ветвей программы (напр. основная ветвь и прерывание) и иногда для программирования внешних устройств. В смысле нагрузки на МК volatile делает только хуже(но ненамного).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Нагрузка МК
СообщениеДобавлено: 23 янв 2012, 08:27 
Не в сети
Аватара пользователя

Зарегистрирован: 15 ноя 2010, 13:56
Сообщения: 995
Откуда: Нижний Новгород
прог. языки: С, С++, РНР
EasyTech писал(а):
Скажите пожалуйста примеры когда МК нагружен сильно? И когда на МК большая нагрузка, что делать? ставить планировщик?

Сильно - это когда вам не хватает производительности. До этого времени не парьтесь.
Как уже заметили, планировщик не разгружает МК, он для другого придуман.
Разгружать МК, если он справляется, смысла нет. Ему не тяжело, он не устает.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO