Компоненты и технологии • №2 '2011 компоненты



Pdf көрінісі
бет3/129
Дата28.09.2023
өлшемі4.1 Mb.
#478975
1   2   3   4   5   6   7   8   9   ...   129
Kurniz

Когда можно обойтись
без ОСрВ для МК?
Конечно же, если вам необходимо разра‑
ботать простейшее устройство, например 
индикатор температуры, который будет вы‑
полнять две функции: опрос датчика и ин‑
дикацию на 7‑сегментный светодиодный 
индикатор, то применение ОСРВ в таком 
устройстве будет непозволительным расто‑
чительством и приведет, в конечном счете, 
к удорожанию устройства.
В этом случае можно применить один 
из «традиционных» для МК способов орга‑
низации многозадачности. Прежде всего, это 
циклический алгоритм (round robin) [3], ког‑
да программист помещает все задачи в тело 
бесконечного цикла. При этом на подпро‑
граммы, реализующие задачи, накладывают‑
ся следующие ограничения:
1. Подпрограмма не должна содержать ци‑
клов ожидания наступления какого‑либо 
события, например прерывания.
2. Подпрограмма должна лишь проверять, 
наступило ли событие, и как можно бы‑
стрее передавать управление следующей 
подпрограмме, то есть завершать свое вы‑
полнение.
3. Подпрограмма должна сохранять свое те‑
кущее состояние (например, в статической 
или глобальной переменной) до следую‑
щего вызова.
Таким образом, каждая задача представля‑
ется в виде конечного автомата. Дальнейшее 
развитие эта идея получила в SWITCH‑тех‑
нологии программирования [4, 5].
Резюме
Итак, применение ОСРВ оправдано в слу‑
чае использования достаточно мощного МК 
при разработке сложного устройства с мно‑
жеством функций, например:
1. Опрос датчиков.
2. Интерфейс с пользователем (простейшие 
клавиатура и дисплей).
3. Выдача управляющего воздействия.
4. Обмен информацией по нескольким вну‑
трисхемным шинам I
2
C, SPI, 1Wire и др.
5. Обмен информацией с внешними устрой‑
ствами по интерфейсам RS‑232C, RS‑485, 
CAN, Ethernet, USB и др.
6. Реализация высокоуровневых протоко‑
лов, например TCP/IP, ProfiBus, ModBus, 
CANOpen и др.
7. Поддержка Flash‑накопителей и, соответ‑
ственно, файловой системы.


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   129




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет