"РЛ" - НАЧИНАЮ Щ ИМ
Н ебольш ое отступление. Все
микроконтроллеры семейства М С8-51
фирмы
А /те/
содержат встроенный
резистор, соединяющий вывод Й в Т
с шиной общего провода. Сопротив-
ление этого резистора может быть от
80 кОм до 300 кОм (зависит от моде-
ли и случайного разброса), так что в
конструкциях с чрезвычайно жестки-
ми требованиями по минимуму сто-
имости можно обойтись и без внеш-
него резистора, подключив ко входу
Я6Т
только конденсатор. Обычно до-
статочно емкости 0 ,1 .
..0 ,5 мкФ.
Наконец, последние три элемента
схемы - кварцевый резонатор г<М и
его стабилизирующие конденсаторы.
Назначение их очевидно - обеспечить
микроконтроллер тактовыми сигнала-
ми, необходимыми для работы устрой-
ства синхронизации. Для рассматри-
ваемого микроконтроллера наличие
конденсаторов С2 и СЗ необязатель-
но, но крайне желательно, т.к. не все
экземпляры кварцевых резонаторов
устойчиво запускаются без них. Ем-
кость этих конденсаторов в 20 пФ
удовлетворит вас практически во всех
случаях, а вообще они могут быть от
20 до 35 пФ. Для некоторых других со-
вместимых моделей емкость этих кон-
денсаторов оговаривается особо в до-
кументации, в этом случае их приме-
нение обязательно.
Наш микроконтроллер может рабо-
тать с кварцевым резонатором любой
частоты вплоть до 24 МГц. Если есть
необходимость, то можно использо-
вать любой внешний генератор им-
пульсов ТТЛ-уровня, при этом пода-
вать их следует на вывод ХТАЫ, а
вывод ХТАЬ2 оставить неподключен-
ным. В этом случае тактовая частота
может начинаться хоть от 1 Гц - мик-
роконтроллер все равно будет рабо-
татьЮднако следует учесть одну осо-
бенность, за которую многие ругают
семейство МС§51: не смотря на то, что
частота кварцевого генератора до-
вольно высока, все внутренние про-
цессы микроконтроллера синхронизи-
руются с частотой в 12 раз меньшей.
Это значит, что при указанном на схе-
ме значении частоты кварца 12 МГц,
фактически скорость работы микро-
контроллера определяется частотой в
1 МГц, а значит, минимальный интер-
вал “дискретности" составляет 1 мик-
росекунду. Такая особенность по-
рождает у многих пренебрежительное
отношение к семейству МСЭ51, как к
ужасно медленному, что не соответ-
ствует действительности. Во-первых,
такая 12-кратная замедленность ха-
рактерна только для моделей на 100%
совместимых с базовым микроконт-
роллером 8051 г а кроме них существу-
ет и огромное количество современ-
ных моделей, у которых эта "замедлен-
ность" отсутствует. Во-вторых, реаль-
ное быстродействие не всегда опре-
деляется исключительно 1’актовой ча-
стотой микроконтроллера, о чем мы В
свое время обязательно пбговорим.
Не показалось ли вам, уважаемые
читатели, что на разбор столь малень-
кой схемы мы потратили столько вре-
мени? Я считаю, что все как раз в
меру, ведь мы не просто разобрали
схему по косточкам, но и узнали мно-
го нового о внутренних особенностях
нашего микроконтроллера. И теперь
пришла пора уделить внимание про-
граммированию. Как вы помните, мы
будем вести речь об ассемблере.
Прежде чем рассмотреть нашу
первую реальную программу, ознако-
мимся с общими принципами програм-
мирования.
То, что исходный текст программы
создается в обычном текстовом редак-
торе, вы помните. Но как же он созда-
ется? Правил не много и они достаточ-
но просты. Постепенно я буду знако-
мить вас все с большим и большим ко-
личеством нюансов, а начнем, как все-
гда, с необходимого минимума.
Программа на языке ассемблера
представляет собой
набор строк.
Каж-
дая строка может содержать
один
или
более
элементов из следующих:
мет-
ка, мнемоника команды
или
дирек-
тива
и
комментарий.
Кстати, если
строка не содержит ничего - она про-
сто игнорируется компилятором. Что
же это за составные части строк?
М етка
- это слитно написанные
(т.е. без пробелов) любые латинские
буквы и цифры. Количество этих зна-
ков может быть любым, но начинать-,
ся метка должна всегда с буквы. Кста-
ти, символ
подчеркивания
приравни-
вается к букве. Использовать русские
буквы недопустимо. Так же недопус-
тимо использовать для метки комби-
нации символов, совпадающие с ко-
мандами, директивами или предопре-
деленными именами регистров. От ос-
тальных частей строки метка всегда
отделяется
двоеточием.
Метка, как и
следует из ее наименования, служит
для обозначения (пометки) определен-
ных участков программы. Это сдела-
но исключительно Для удобства чело-
века, ведь ему гораздо легче опери-
ровать с метками, которые могут пред-
ставлять собой осмысленные слова и
аббревиатуры, чем, например, с номе-
рами строк программы.
М немоника команды
- это сим-
вольное обозначение определенной
команды микроконтроллера
вместе с
необходимым количеством
операн-
дов.
Для упрощения мы будем исполь-
зовать термин
команда.
Между обо-
значением команды и операндами до-
жжен быть
минимум один пробел,
можно Использовать символы
табуля-
ции.
Если операндов несколько, то они
отделяются друг от друга
запятыми.
Набор команд определяется системой
команд микроконтроллера и для наше-
го микроконтроллера составляет бо-
лее сотни комбинаций. Пусть вас не
пугает такое количество - это лишь
разновидности всего нескольких де-
сятков уникальных команд, запомнить
которые очень легко.
Директива
- это почти то же самое,
что и команда, только обозначает
ука-
зание компилятору
выполнить опреде-
ленное действие. При помощи дирек-
тивы END, например, помечается ко-
нец программы. В отличие от набора
команд, набор директив может отли-
чаться в зависимости от того, какой
именно компилятор вы применяете.
Наконец,
комментарий
- это лю-
бая последовательность любых сим-
волов (в том числе и русских букв), на-
чинающаяся с
точки с запятой.
Ком-
ментарий служит исключительно для
добавления в программу различных
пояснений и компилятором не учиты-
вается. Значит, любой текст, начина-
ющийся с точки с запятой, и является
комментарием.
Все элементы строки программы
могут вводиться в любом регистре -
заглавными или прописными буквами
и даже вперемешку, компилятор, ас-
семблера не делает различий между
символами верхнего и нижнего реги-
стров.
Ну, а теперь можно познакомить-
ся и с программой для нашей мигаю-
щей схемы. Вот она (в скобках услов-
но показаны номера строк програм-
мы - на самом деле их быть не долж-
но) -
см. на следующей странице:
Радиолюбитель - 0 3 /2 0 0 7 У
49
предыдущая страница 49 Радиолюбитель 2007-03 читать онлайн следующая страница 51 Радиолюбитель 2007-03 читать онлайн Домой Выключить/включить текст