Генн ад и й Громов
Графическая среда разработки
г. Тула
программного обеспечения Algorithm Builder
--------------------
1
МИКРОКОНТРОЛЛЕРЫ '
I
--------------------
В ведение
В последние годы микроконтроллеры стали одним из
основных средств построения электронных устройств. Бес-
конечная системная гибкость путем изменения програм-
мы делает их незаменимыми в широком круге задач элек-
троники.
Одними из первых широко распространенных
типов микроконтроллеров были 31-е семейство с не очень
удачной архитектурой и быстро сменившее ее 51 -е, создан-
ные фирмой Intel. Архитектура последнего семейства ока-
залась достаточно удачна и продолжает свою жизнь до
сих пор, составляя основу контроллеров уже десятка раз-
ных фирм. Но революция в этом направлении произошла
с появлением РІС контроллеров фирмы Microchip. Именно
начиная с них, себестоимость устройства на микроконт-
роллере при массовом производстве наконец-то стала
ниже аналогичного на базе специализированной микро-
схемы на жесткой логике. С тех пор число различных ядер
микроконтроллеров измеряется десятками. Не осталась в
стороне и фирма Atmel, до этого выпускавшая микроконт-
роллеры с “чужими” архитектурами
В 1997 году на свет
появилось ядро ‘'AVR”, очень быстро завоевавшее огром-
ную популярность среди разработчиков 8-битных прило-
жений.
При разработке электронной системы на базе микро-
контроллеров основной центр тяжести перемещается на
программное обеспечение. Именно поэтому одним из важ-
ных моментов является выбор наиболее подходящего и
удобного средства разработки программ.
Для разработки программного обеспечения для AVR
предлагается довольно много разных средств на разных
языковых основах
Есть Basic, Pascal, но, пожалуй, самыми
распространенными являются ассемблер и язык С.
Сам
ATMEL бесплатно распространяет штатную программу “AVR
Studio”, поддерживающую разработку на ассемблере. Оба
этих языка достаточно полярны друг другу. Ассемблер от-
носительно прост для освоения, позволяет создать самый
оптимальный по объему и быстродействию код, однако про-
граммирование на нем, мягко говоря, не совсем удобное.
Редко кто решится разработать полнообъемную програм-
му, например, для ATmega128, на этом языке. Язык С, в
свою очередь, “очеловечивает” программирование, замет-
но облегчая этот процесс, однако за это приходится пла-
тить (не только оплачивая лицензию). Код, создаваемый С
компилятором, в разы менее оптимальный по объему и
быстродействию, да и освоение языка начинающими про-
граммистами представляет собой некоторый барьер. Прав-
да, С компиляторы допускают ассемблерные вставки, и
наиболее продвинутые программисты критические участ-
ки программы прописывают на ассемблере.
Предлагаемый вашему вниманию продукт “Algorithm
Builder for AVR" представляет собой некоторый компромисс
между ассемблером и языками высокого уровня. Это ин-
струмент визуального программирования в самом прямом
смысле этого слова, основная цель которого - привести
интерфейс разработки в наибольшее соответствие с при-
родой человеческого восприятия. Предназначен он как для
начинающих для быстрого освоения процесса программи-
рования, так и для профессионалов.
Algorithm Builder for AVR (AB) является полностью са-
модостаточной средой для разработки программного обес-
печения, поскольку он включает в себя графический ре-
дактор алгоритма, компилятор, симулятор; внутрисхемный
программатор посредством простого адаптера через СОМ
порт, а так же отладчик на кристалле. Не выходя из среды,
можно сделать все.
Но основа его - это, конечно, графическое, визуаль-
ное начало. В Algorithm Builder программа строится не в
обычно привычной последовательности сверху - вниз, а
на плоскости, в двух измерениях, с графическим представ-
лением сети условных и безусловных переходов.
Программа, написанная в классическом текстовом ас-
семблере, записывается в виде одного сплошного верти-
кального столба. При этом, логическая структура програм-
мы полностью скрыта и выстраивается только в вообра-
жении программис та. Это не удобно. Теряется возможность
оптимизации, тормозится разработка, растет вероятность
ошибок. Да и, по прошествии времени, разобраться в-том,
что сам же написал, бывает крайне сложно.
Графический редактор в этом смысле не делает ни
чего особенного, просто он позволяет вводить програм-
му именно так, как она формируется в голове програм-
миста.
Самый низкий уровень работы в Algorithm Builder - уро-
вень ассемблера. Однако, в отличие от классического ассем-
блера, здесь принята визуально-функциональная форма
представления операций. В системе команд AVR существен-
ная часть - это команды пересылки: MOV, LD, LDI, LDD, ST,
STD, IN, OUT, CBI, SBI и т.д. В Algorithm Builder для их обозна-
чения используется только одна единственная форма:
Таким образом,
вместо:
MOV
ro
,
r i
используется запись:
к
1
->
R
0
вместо:
LDI R20, $5Е
ИСПОЛЬЗуеТСЯ ЗЭПИСЬ:
$5Е
->
г20
вместо:
s b i
Port
а
. Ь
используется заИись:
l
->
Port
а
.
5
Аналогично, для арифметико-логических операций:
вместо:
a d d
r o
, R
1
записывается:
R
0
+
R
1
вместо:
a n d i
R
20
, $
2
В
записывается:
R
20
&
$
2
В
вместо:
s b iw
х ,
15
записывается:
х
+
15
Таким образом, не требуется запоминать более сотни
мнемоник, хотя, тем не менее, все же надо иметь представ-
ление о существующем наборе команд ядра. Полное описа-
ние всех команд AVR представлено в руководстве пользова-
теля, которое входит в пакет программы.
-------------------------------
1
4,
|
Радиолюбитель - 0 1
/2 0 0 7 1
предыдущая страница 41 Радиолюбитель 2007-01 читать онлайн следующая страница 43 Радиолюбитель 2007-01 читать онлайн Домой Выключить/включить текст