Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Микроконтроллеры (MCU) и микропроцессоры (MPU) > ОС на ассемблере


Автор: Den64 17.1.2008, 12:23

  На слабом AVR микроконтроллере хотелось бы использовать ОС. Я так понимаю, она написана должна быть на асме. Посоветуйте что-нибудь..

Автор: cardinal 17.1.2008, 22:00
Den64, а можно вопрос зачем? Точнее наверно не зачем, а что должна уметь?

Автор: kaspersky89 19.1.2008, 00:46
Если я не ошибаюсть есть такая система, с командами на Бэисике, которые даются контроллеру. Вообщем готовое устройство получится чтото вроде миниКомпа с набором команд,

Добавлено через 1 минуту и 2 секунды
Den64 Если я по теме написал и если тебе нужно могу поискать ссылку

Автор: Den64 19.1.2008, 13:38

kaspersky89 Спасибо, поискал сам. smile 

  Устройство должно одновременно измерять токи двигателей и по превышении его выключать движки и в это время обрабатывать запросы от другого контроллера... Ну и побочно ещё можетбыть другие задачи появятся. Можно сделать самому переключение, но много работы получается и ошибок, уже сталкивался..
  Если б был контроллер покруче использовалбы FreeRTOS и GCC, но памяти нехватит даже если взять мега88 или мега168, а использовать 40 ножку нихочется, плату нужно переразвести и выводов незадействованных оч. много будет.. (вобщем хочется использовать 48 на складе куча, а 88 нету.. если ничё непридумаю придётся заказывать, а в Курск приходят небыстро..)

Автор: cardinal 19.1.2008, 14:45
Цитата(Den64 @  19.1.2008,  12:38 Найти цитируемый пост)
Устройство должно одновременно

В ОС или без - будет все равно псевдоодновременно и тут ничего не поделаешь.
Цитата(Den64 @  19.1.2008,  12:38 Найти цитируемый пост)
Можно сделать самому переключение

Думаю это не самый плохой вариант для маленьких AVR.
Цитата(Den64 @  19.1.2008,  12:38 Найти цитируемый пост)
если ничё непридумаю придётся заказывать, а в Курск приходят небыстро..

Дольше 2-3 недель идут?

Автор: Den64 19.1.2008, 23:51

  От 5 до 14 дней...

Автор: cardinal 20.1.2008, 02:22
Цитата(Den64 @  19.1.2008,  22:51 Найти цитируемый пост)
От 5 до 14 дней...

Помоему это довольно таки цивильно...

Автор: Den64 20.1.2008, 13:57

  Задача решена.. 
  1. Попробую вместо GCC - IAR. Он лучше с ресурсами работает..
  2. Если не хватит меги48, возьмём покруче что нибудь..
  3. В крайнем случае ОС переписать на ассемблер..

Автор: jorikdima 21.1.2008, 13:17
не надо ассемблер. scmRTOS посмотри. На www.electronix.ru водятся авторы проекта. Порт по авр есть.

Автор: cardinal 22.1.2008, 23:41
http://electronix.ru/forum/index.php?showtopic=42275

Автор: AVR32 26.1.2008, 22:50
2 Den64
Никто не пишет ОС на asm. Портировать такую ОС на другие платформы будет невозвожно.
Цитата
Устройство должно одновременно измерять токи двигателей и по превышении его выключать движки и в это время обрабатывать запросы от другого контроллера...

В чём сложности? Тут грамотно железо должно быть сделано.

Автор: Den64 27.1.2008, 00:59
2 AVR32
  ОС есть на gcc. И она много пемяти кушает. (На IARе меньше конешно) И эту ОСь с си на асм перепиcываю(мелочи остались которые дописывать нибуду, влом). 
  Никто нипишет, а как же я? Мне пофиг на портируемость! И я вкурсе..

  В смысле, грамотно железо спланировано?

Автор: AVR32 27.1.2008, 02:42
Скажем, пускать/останавливать движок 10Вт и 10кВт (например, насос в буровой) разница большая. Как правило, на движках большой мощностью надо контролировать пусковой момент (то бишь пусковые токи), а это обратные связи. Причём, у таких мощных движков отключение отнюдь не тривиальное. Так же по типам движки разные, в том числе по управлению.
Тебе биться надо не за перенос ОС на asm, а о другом думать. Более того, ОС не поможет в вычислениях rms. И вообще, задумывался как собираешься считать rms.  Кроме того, может оказаться, что принятие решение по экстренному выключению двигателя по действующему значению тока не достаточно. Как правило, надо знать мгновенные и ток, и напряжение.
Любопытно, чем тебя зацепила ОС, и вообще что увидел такого, что нельзя было реализовать ни на чистом С, ни, тем более, на asm?

PS: В общем, не стой стороны задача решается.

Автор: Den64 27.1.2008, 14:54
Цитата(AVR32 @  27.1.2008,  02:42 Найти цитируемый пост)
Скажем, пускать/останавливать движок 10Вт и 10кВт (например, насос в буровой) разница большая. Как правило, на движках большой мощностью надо контролировать пусковой момент (то бишь пусковые токи), а это обратные связи. Причём, у таких мощных движков отключение отнюдь не тривиальное. Так же по типам движки разные, в том числе по управлению.

Движок обычный 12 вольтовый, на 60 Вт, с редуктором на 180 об/мин. На счёт движков задача проста. Их нужно выключить по упору, т.е когда ток потребления превысит заданный порог.


Цитата(AVR32 @  26.1.2008,  22:50 Найти цитируемый пост)
В чём сложности? Тут грамотно железо должно быть сделано.

Цитата(Den64 @  27.1.2008,  00:59 Найти цитируемый пост)
В смысле, грамотно железо спланировано?

AVR32 ответьте пожалуйста на мой вопрос из поста выше.  smile 


Цитата(AVR32 @  27.1.2008,  02:42 Найти цитируемый пост)
Тебе биться надо не за перенос ОС на asm, а о другом думать. Более того, ОС не поможет в вычислениях rms. И вообще, задумывался как собираешься считать rms.

А что такое rms?


Цитата(AVR32 @  27.1.2008,  02:42 Найти цитируемый пост)
Любопытно, чем тебя зацепила ОС, и вообще что увидел такого, что нельзя было реализовать ни на чистом С, ни, тем более, на asm?

Написать можно и без ОС. Слишком много задач, выполнятся которые должны незевисимо. Сложно самому планировать. Писал для АВР и с ОС и боз ОС. Поэтому знаю что это такое. Была б задача попроще написал бы без ОС.


Автор: AVR32 27.1.2008, 20:12
Цитата
...ответьте пожалуйста на мой вопрос из поста выше.

Для твоего случая достаточно будет датчика тока и ключа.
Цитата
А что такое rms?

Действующее значение.

Автор: Den64 27.1.2008, 21:41
Вопросов нет.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)