СОВРЕМЕННАЯ ЭЛЕКТРОНИКА №9/2016
ИНЖЕНЕРНЫЕ РЕШЕНИЯ 50 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 9 2016 выводимого изображения. Затем мож- но приступать к выводу на дисплей тре- буемых в приложении данных, опро- су кнопок, генерации звука в нужном приложению контексте и т.д. В доку- ментации производителя на модуль [6] сказано, что МК может пытаться свя- зываться с модулем приблизительно через три секунды после его сброса, а начальная заставка появляется при- мерно через 8 секунд. Однако по опыту работы с экземпляром μOLED-128-G2 оказалось, что модуль корректно реаги- рует на командыМК практически сра- зу после сброса. Полный перечень из более чем семидесяти команд, поддерживаемых модулем в режиме Serial, с их подроб- ным описанием содержится в [6]. Этот документ можно загрузить по ссылке с интернет-страницы [7]. Необходи- мо заметить, что каждая конкретная команда может поддерживаться не всеми моделями модулей, что отраже- но в документации. Для облегчения использования сво- их модулей совместно с различны- ми сторонними программными сред- ствами и аппаратными платформами (ARM, AVR, PIC, Arduino и пр.) произ- водитель распространяет перечень команд режима Serial в виде наборов библиотек: Arduino Serial Library, C Serial Library, Pascal Serial Library, PicAxe Serial Library, Linux Serial Library. Перечислен- ные библиотеки в виде архивных фай- лов могут быть загружены по соответ- ствующим ссылкам с интернет-стра- ницы [7]. Рассмотрим систему команд режи- ма Serial подробнее. Группа текстовых и строковых команд управляет курсо- ром дисплея при выводе текста, зада- ёт его цвет, размеры и атрибуты (жир- ный, курсив, подчёркивание, инверсия). При этом доступен только один тексто- вый шрифт. Основные из этих команд перечислены в таблице 1. Эта и другие таблицы, приведённые в статье, содер- жат только имена и краткие характери- стики команд (библиотечных функций) без их кодов и параметров. Цвета выводимых на дисплей тексто- вых символов и графических объектов задаются в командах двухбайтовой кон- стантой в соответствующем поле. Пере- чень соответствия этих констант цве- там дисплея приведён в [8]. Группа графических команд управ- ляет выводом на дисплей простых гео- метрических фигур (прямых и лома- ных линий, окружностей, треугольни- Таблица 2. Основные графические команды режима Serial Команда (библиотечная функция) Назначение команды gfx_Cls Очистить экран дисплея, используя текущий цвет фона gfx_ChangeColour Изменить цвет всех пикселей заданного (старого) цвета на другой заданный (новый) цвет gfx_Circle Нарисовать незакрашенную окружность заданного цвета с центром в заданной точке, с заданным радиусом. Все величины задаются в пикселях gfx_CircleFilled Нарисовать закрашенную окружность заданного цвета с центром в заданной точке, с заданным радиусом. Все величины задаются в пикселях gfx_Line Нарисовать прямую линию заданного цвета между двумя точками с заданными координатами. Все величины задаются в пикселях gfx_Rectangle Нарисовать незакрашенный прямоугольник заданного цвета с заданными координатами левого верхнего и правого нижнего углов. Все величины задаются в пикселях gfx_RectangleFilled Нарисовать закрашенный прямоугольник заданного цвета с заданными координатами левого верхнего и правого нижнего углов. Все величины задаются в пикселях gfx_Polyline Нарисовать ломаную линию заданного цвета в виде отрезков прямых между массивом точек с заданными координатами. Все величины задаются в пикселях gfx_Polygon Нарисовать многоугольник (замкнутую фигуру) заданного цвета в виде отрезков прямых между массивом точек с заданными координатами. Все величины задаются в пикселях gfx_Triangle Нарисовать треугольник (замкнутую фигуру) заданного цвета в виде отрезков прямых между тремя точками с заданными координатами. Все величины задаются в пикселях gfx_Orbit Вычислить координаты (x, y) удалённой точки относительно исходной точки, исходя из заданных параметров: угла и расстояния от исходной точки до удалённой. По умолчанию исходная точка имеет координаты (0, 0). Все величины задаются в пикселях gfx_PutPixel Закрасить пиксель с заданными координатами заданным цветом. Координаты задаются в пикселях gfx_GetPixel Прочитать значение цвета пикселя с заданными координатами. Координаты задаются в пикселях gfx_MoveTo Переместить исходную точку по заданным координатам. Координаты задаются в пикселях gfx_LineTo Нарисовать линию из исходной точки до точки с заданными координатами. После этого исходная точка перемещается по этим координатам. Координаты задаются в пикселях gfx_Clipping Включить/отключить возможность усечения (клиппирования) дисплея gfx_ClipWindow Задать координаты окна усечения дисплея. Любые объекты и текст, выведенные на дисплей, будут усечены и станут видны на дисплее только в области этого окна. Чтобы окно усечения было включено, необходимо передать команду gfx_Clipping gfx_SetClipRegion Расширить область усечения. Команда расширяет область усечения вплоть до размеров области расположения последнего выведенного на дисплей текста или изображения gfx_BGcolour Задать цвет фона для выводимых на дисплей графических объектов gfx_OutlineColour Задать цвет для прямоугольников и кругов gfx_Contrast Задать уровень контраста дисплея в диапазоне 1…15. При уровне контраста 0 дисплей отключается Таблица 1. Основные текстовые и строковые команды режима Serial Команда (библиотечная функция) Назначение команды txt_MoveCursor Переместить курсор на заданную номером строки и номером столбца позицию дисплея PutCH Вывести на дисплей символ Putstr Вывести на дисплей строку символов Charwidth Задать ширину символа в пикселях Charheight Задать высоту символа в пикселях txt_FGcolour Задать цвет выводимого на дисплей текста txt_BGcolour Задать цвет фона для выводимого на дисплей текста txt_FontID Задать требуемый шрифт, используя его идентификатор (ID). Эта команда поддерживается только для шрифтов, загружаемых с μSD-карты. В этом случае ID = 7 txt_Width Задать множитель ширины текста в диапазоне 1…16 txt_Height Задать множитель высоты текста в диапазоне 1…16 txt_Xgap Задать разрыв между символами по оси X (дистанцию) в пикселях в диапазоне 0…32 txt_Ygap Задать разрыв между символами по оси Y (интервал) в пикселях в диапазоне 0…32 txt_Bold Задать полужирный текстовый шрифт txt_Inverse Задать текстовую инверсию txt_Italic Задать текстовый курсив txt_Underline Задать текстовое подчёркивание txt_Set Задать временную задержку между символами, выводимыми на дисплей с помощью команд PutCH или Putstr, в диапазоне 0…255 мс
RkJQdWJsaXNoZXIy MTQ4NjUy