Главная » Железо

Структура текста программы Bascom-8051

Добавлено Дата: 23 January, 2013 категория: Bascom-8051, Basic, Железо

Bascom  не  предъявляет  строгих  требований  к  расположению  функциональных   модулей   в  тексте программы.  Единственное  требование  (во  многих  случаях  тоже  необязательное)  заключается  в  следующем: объявление программного объекта должно  предшествовать его использованию, т.е. быть выше по тексту. Для удобства программирования  лучше применять одинаковую схему построения программ. Это очень удобно, так как   позволяет  сохранять преемственность  и обеспечить  более простую трансформацию  одной программы  в другую. Кроме того, необходимость дисассемблирования скомпилированных программ требует применения такой структуры расположения модулей, которая дает возможность облегчить поиск интересующего фрагмента. Ниже, в виде таблицы, приведена рекомендуемая схема, отвечающая этим критериям.

Читать »

Программирование вывода на индикатор Bascom-8051

Добавлено Дата: 23 January, 2013 категория: Bascom-8051, Basic, Железо

Компилятор Bascom обеспечивает вывод на символьный индикатор значений числовых  переменных и символьных строк во всех возможных вариантах. Синтаксис операторов вывода  данных и команд управления курсором достаточно прост и не требует дополнительных, более  подробных пояснений, чем это сделано выше. Однако нужно заметить, что построение системы  отображения данных является более сложной задачей, чем применение  последовательности  операторов  вывода.  Проектируемые  устройства  с  символьным  индикатором должны  отвечать  требованиям  эргономики,  включающей  обязательное  форматирование  и  позиционирование выводимых цифровых данных и сообщений. С учетом этого, рассмотрим практические вопросы  построения и программирования системы отображения информации. Как обычно, перед началом программирования требуется разработать план системы отображения, включающий в себя следующие составляющие, перечисленные в порядке очередности:

Читать »

Программирование таймеров BASCOM-8051

Добавлено Дата: 21 January, 2013 категория: Bascom-8051, Basic, Железо

Наличие  в  составе  Bascom  операторов  программирования  таймеров  позволяет  во   многих  случаях обходится только этими средствами. При этом даже не нужны знания соответствующих управляющих регистров. Более   глубокое   программирование   с   использованием   нестандартных   приемов,   без   сомнения,   потребует подробного изучения регистров управления таймерами и их взаимодействия с системой прерывания. Применения ассемблерных вставок для  более эффективного управления таймерами не требуется, т.к. специальные команды Bascom  достаточно  оперативны,  и  имеется  возможность  непосредственного  управления  всеми  регистрами  и битами.  В  таблице,  приведенной  ниже,  показано  как  компилируются  операторы   Bascom,  работающие  с таймерами. Мы видим, что компилятор не работает со всем таймерами  по  одинаковой схеме., поэтому всегда нужно  быть  готовым  к  тому,  что  в  одних  случаях  компилятор  поставит  код  команды  остановки  и  запуска счетчика, а в других их нужно будет добавить.

Читать »

Отладка программ Bascom

Добавлено Дата: 18 January, 2013 категория: Bascom-8051, Basic, Железо

Способ  отладки  программ  Bascom,  в  принципе,  мало  отличается  от  методов   отладки   программ, написанных  другим  способом.  Чтобы  отладка  программы  быля  успешной  и  эффективной,  нужно  на  этапе проектирования  устройства  с  микроконтроллером  заложить  в  его  схему  некоторую  избыточность,  которая позволит потом осуществить этот процесс. В число мер, обеспечивающих процесс отладки, входят:

Читать »

Директивы, операторы и функции Bascom-8051 – ЧАСТЬ 6

Добавлено Дата: 17 January, 2013 категория: Bascom-8051, Basic, Железо

определяющие частоту переполнения).

Синтаксис:    LOAD TIMER , value

TIMER – имя одного из таймеров: TIMER0, TIMER1 или TIMER2.

Value – переменная  или  константа.  Задаваемое  значение  определяет  интервал  времени  (в режиме  ON  TIMERx  и  MODE  2),  по  истечении  которого  наступит  прерывание.  Диапазон значений – от 1 до 255 для TIMER0, TIMER1 и от 1 до  65535 для TIMER2. Директива LOAD корректирует  загружаемое  значение:    TLx  =  THx  =  (256  –  value)  –  внимание!  записывает одинаковые  значения!    RCAP2L  ,  RCAP2H  =  (65536  –  value)  Для  загрузки  непосредственно задаваемого значения (без корректировки) применять оператор COUNTERx .

Читать »

Вычисления и преобразования чисел BASCOM-8051

Добавлено Дата: 17 January, 2013 категория: Bascom-8051, Basic, Железо

Bascom позволяет производить арифметические вычисления (сложение, вычитание,  умножение и деле- ние) над целыми числами (одно-, двух и четырехбайтными) и числами в формате с плавающей точкой. В следую- щей таблице показано расположение байтов переменных в памяти.

Читать »

Программирование устройств I2C  BASCOM-8051

Добавлено Дата: 16 January, 2013 категория: Bascom-8051, Basic, Железо

Для программирования устройств, подключенных к шине I2C, Bascom предоставляет два варианта:

а)   использовать   готовые   операторы   записи   и   считывания   данных,   соответственно   I2CSEND   и

I2CRECEIVE;

б) использовать операторы I2CSTART, I2CSTOP, I2CRBYTE и I2CWBYTE и  самостоятельно создавать программы взаимодействия с устройствами на шине I2C.

Читать »

Преобразование строковых переменных BASCOM-8051

Добавлено Дата: 13 January, 2013 категория: Bascom-8051, Basic, Железо

Строковые переменные могут преобразовываться в другие строковые переменные – длинные разбираться на части и, наоборот, из коротких строк могут складываться длинные. Bascom обеспечивает преобразование цифр, записанных в строковых переменных, в числа и  преобразование чисел в строковые переменные. Причем числа могут  быть  записаны  в  виде  десятичных  или  шестнадцатеричных  цифр  (символов).  В  следующей  таблице показано  расположение байтов строковой переменной в памяти после ее очистки (нулями). В первом  случае в переменную длиной N записано символами число «1234». Во втором случае на его  место  записано сообщение

Читать »

Bascom-8051

Добавлено Дата: 9 January, 2013 категория: Basic, Железо

Bascom-8051 ® – программная среда для создания исполняемого кода микроконтроллеров семейства  8051. В  основе  Bascom-8051  находится  компилятор  программ,  написанных  на  языке  высокого  уровня  близкого  к стандартному  Бейсику.  Кроме  компилятора  с  состав  пакета  Bascom  входит  текстовый  редактор, построчный отладчик-симулятор (с программными эмуляторами терминала, символьного индикатора, EEPROM), упрощенный эмулятор  терминала   (без   файлового  сервиса),  контекстная  информационно-справочная  система  и  утилиты загрузки аппаратных эмуляторов и программаторов. Программы на Бейсике могут создаваться в любом текстовом редакторе, т.к. содержит только текстовые конструкции. Чтобы комментарии на русском языке были читаемы в окнах Bascom, тексты следует выполнять в кодировке «Windows» (ANSI).

Читать »

Организация циклов и систем реального времени BASCOM-8051

Добавлено Дата: 8 January, 2013 категория: Bascom-8051, Basic, Железо

Bascom   предлагает   полный   набор   операторов   для   построения   повторяющихся    программ.   При программировании могут применяться три основные конструкции:

а)  безусловный  цикл,  который  применяется  при  постоянном  повторении  одних  и  тех  же  действий. Конструкция такого цикла строится с помощью операторов DO … LOOP и служит основой главного цикла почти каждой программы. Конструкция безусловного цикла применяется там, где требуется за один проход проверять

Читать »

Выбор и установка типа процессора Bascom-8051

Добавлено Дата: 8 January, 2013 категория: Bascom-8051, Basic, Железо

Bascom позволяет создавать программы для всех моделей процессоров семейства 8051. Установка модели процессора, используемого компилятором, производится в окне меню ”Option” – “Compiler” – “Misc”. Выбираемое из  списка  значение  является  именем  одного  из  файлов,  находящихся  в  директории  “/BASCOM-8051”.  При отсутствии необходимой модели, она может быть создана описанием внутренней регистровой структуры в виде нового  файла.  Файл  должен  содержать  имена  регистров  и  их  адреса,  имеющиеся  в  описываемой  модели. Регистровый файл должен иметь несколько секций.

Читать »

Программирование EEPROM AT89S82252 BASCOM-8051

Добавлено Дата: 7 January, 2013 категория: Bascom-8051, Basic, Железо

Микроконтроллер модели AT89S8252 содержит электрически перепрограммируемую  память EEPROM (емкостью 2 Кбайта), которая доступна для записи и считывания средствами программы пользователя. EEPROM представляет собой энергонезависимую память, обеспечивающую хранение данных неограниченное время и при выключенном питании. Bascom имеет два оператора (WRITEEEPROM и READEEPROM), дающих возможность простого доступа  к  этой памяти. Эти операторы позволяют сохранять и воспроизводить значения переменных всех типов за исключением индексированных (элементов массивов). Каждый из операторов может использоваться в двух вариантах:

Читать »

Директивы, операторы и функции Bascom-8051 – ЧАСТЬ 1

Добавлено Дата: 7 January, 2013 категория: Bascom-8051, Basic, Железо
$ASM – $END ASM

Действие:      Обозначают начало и конец блока на языке ассемблера, вставляемого в текст  программы на Бейсике. Использование $ASM допускается только вместе с $END ASM.

Читать »

Переменные Бейсика  BASCOM-8051

Добавлено Дата: 6 January, 2013 категория: Bascom-8051, Basic, Железо
Числовые переменные

Тип переменной

Читать »

Программирование устройств с последовательным вводом-выводом BASCOM-8051

Добавлено Дата: 6 January, 2013 категория: Bascom-8051, Basic, Железо

В   других   разделах   много   уделялось   внимания   проблемам   ввода-вывода   через   последовательные интерфейсы. Было приведено много примеров программ, использующих  операторы последовательного ввода- вывода. Поэтому в настоящем разделе рассмотрим только,  оставшиеся неразрешенными, вопросы. Главный, из которых – как работают операторы Shiftin и Shiftout Bascom, и чем они отличаются друг от друга?

Читать »