Сайт о телевидении

Сайт о телевидении

» » Интерфейс – что это такое. Что такое интерфейс

Интерфейс – что это такое. Что такое интерфейс

В течение передачи по интерфейсу SPI данные одновременно передаются и принимаются по двум линиям синхронно с синхроимпульсами сдвига. Полярность и фаза последовательных синхроимпульсов сдвига - это основной компонент, определяющий формат передачи данных по интерфейсу SPI. Полярность последовательных синхроимпульсов соответствует свободному логическому состоянию линии синхронизации и поэтому также определяет, какой фронт синхроимпульса является активным ребром. Для того, чтобы свободное логическое состояние линии синхронизации было определено как низкое логическое состояние (активным фронтом синхроимпульса является нарастающий фронт), бит выбора полярности синхроимпульсов (CKPOL; SPICF.0) должен быть сброшен в 0, а установка этого бита в единицу (CKPOL = 1) определит свободное состояние синхроимпульса как высокое логическое состояние, т.е. активным фронтом синхроимпульса будет являться спадающий фронт. Фаза последовательных синхроимпульсов определяет, какой фронт используется для выборки данных последовательным регистром сдвига. Бит выбора фазы синхроимпульсов (CKPHA; SPICF.1) определяет по активному или неактивному фронту будет осуществляться захват данных. Когда CKPHA установлен в 1, то данные выбираются по неактивному фронту синхроимпульса (возвращение синхроимпульса в свободное состояние). Когда CKPHA сброшен в 0, то данные выбираются по активному фронту синхроимпульсов (переход синхроимпульса в активное состояние). Совместно биты CKPOL и CKPHA позволяют определить четыре возможных формата передачи данных по SPI интерфейсу. Эти форматы приведены на рисунке 43.

Каждый раз, когда активный фронт используется для выбора данных (CKPHA = 0), цикл передачи должен быть начат с установки сигнала SSEL. Поэтому между передачами сигнал SSEL должен переводиться в неактивное состояние. Наоборот, когда для выборки используется неактивный фронт (CKPHA = 1), сигнал SSEL может остаться низким между пакетами данных, при этом начало передачи определяется первым активным фронтом синхроимпульса.

Рисунок 43. Форматы передачи данных по SPI интерфейсу (определяется битами CKPOL и CKPHA)

Длительность SPI посылки

Чтобы гибко подстраиваться под различную длительность посылки данных, в регистре настройки модуля SPI имеется бит выбора длительности посылки (CHR). Бит CHR позволяет выбирать длительность посылки 8 или 16 бит. При загрузке 8- битных данных в буферный регистр SPIB, байт, предназначенный для передачи, должен быть помещен в младший байт передаваемого слова. При приеме 8- битных данных слово также находится в младшем байте регистра SPIB. В режиме обмена 8- битными данными старший байт буферного регистра SPIB не определен.

Скорости обмена данными по SPI интерфейсу

При работе в режиме ведомого, синхроимпульсы формирует внешнее ведущее устройство SPI интерфейса. Для правильной работы в режиме ведомого, частота синхроимпульсов не должна превышать частоту системных синхроимпульсов, деленную на 8.

При работе в режиме ведущего, микроконтроллер сам формирует синхроимпульсы SPI интерфейса. Скорость обмена данными определяется коэффициентом деления системных синхроимпульсов, который задается значением регистра коэффициента деления для SPI интерфейса (SPICK). Модуль SPI поддерживает 256 различных коэффициентов деления. Частота синхроимпульсов SPICK определяется следующей формулой:

где коэффициент деления частоты системных синхроимпульсов = (SPICK.7:0) + 1

Так как скорость обмена данными по SPI интерфейсу зависит от частоты системных синхроимпульсов, то изменение частоты этих синхроимпульсов, например при активизации одного из режимов управления питанием, изменит скорость обмена данными по SPI интерфейсу. Попытка же активизировать режим управления питанием при передачи данных по SPI интерфейсу (STBY = 1) игнорируются.

Обратите внимание, однако, что в режиме управления питанием (PMME = 1) запись в регистр SPIB в режиме ведущего и установка активного сигнала на выводе SSEL в режиме ведомого квалифицируются как активизация режима переключения источника (SWB = 1). В режиме останова синхронизация модуля SPI приостанавливается.

Эта инструкция – о том, как принять участие в создании корпуса со снятой грамматической неоднозначностью. От участников не требуется никакой специальной подготовки в области лингвистики. Для выполнения большей части заданий достаточно того, что русский язык для вас родной.

Шаг №1: Регистрация

На сайт или через вашу учётную запись в социальной сети (поддерживаются ВКонтакте, Twitter, Facebook и другие). Каждое задание мы показываем нескольким людям. Регистрация нужна для того, чтобы не показывать вам одно и то же задание несколько раз.

Шаг №2: Выбор типа заданий

Выберите тип заданий из списка на странице (список заданий на этой странице отображается только у зарегистрированных пользователей).

Какие бывают задания?

В каждом задании нужно определить грамматическую характеристику одного слова в одном предложении. Грамматическая характеристика - это, например, род (мужской, женский, средний), число (единственное, множественное), падеж (именительный, родительный, дательный, ...) и т.д.. Какую именно категорию нужно определить - указано в названии типа:

В заданиях "Существительное: единственное / множественное" нужно определить, в единственном или во множественном числе употреблено существительное.

В заданиях "Существительное, ед. ч.: родительный / винительный" нужно определить, в именительном или винительном падеже стоит существительное.

В заданиях "Существительное / Предлог" нужно определить, является ли данное слово существительным или предлогом.

Выбирайте те типы заданий, названия которых кажутся вам понятными.

Чтобы выбирать было проще, перед названием задания цветными звёздочками указана его сложность (см. таблицу). Если звёздочка серая, то это значит, что мы пока не выбрали нужный цвет. Если вы у нас в первый раз - выбирайте зелёные задания.

У некоторых заданий есть инструкция. Со временем она появится у всех типов заданий. Если инструкции нет, то следуйте только общим правилам разметки, перечисленным в этом руководстве.

Итак, вы выбрали тип задания и прочитали инструкцию, если эта инструкция уже написана. Теперь нажмите "Взять на разметку".

Шаг №3

Задания выдаются по 5 штук сразу (это число можно изменить в ). В каждом задании есть выделенное слово. Именно это слово мы размечаем, нажимая на одну из кнопок, расположенных под текстом задания. Вокруг выделенного слова есть его контекст. Мы показываем не более трёх слов контекста. Если для принятия решения нужно прочитать все слова от начала или до конца предложения, то нажмите на многоточие справа или слева от текста. Тогда вы увидите предложение целиком. При нажатии на "Прокомментировать" появится поле ввода комментария. Комментировать задание можно всегда, даже если вы не станете отвечать на него. Комментарий всегда попадает к модератору.

Как выполнять задания?

Для того, чтобы выполнить задание, нужно нажать на одну из кнопок-ответов. Если вы знаете ответ и уверены в нём - выбирайте одну из кнопок, на которых написаны грамматические характеристики ("единственное число", "именительный падеж", ...). Если вы видите, что ни одна из них не подходит, и вы уверены в этом - нажмите "Другое". Если вы сомневаетесь в ответе - нажмите "Пропустить". Разница между "Другое" и "Пропустить" в том, что в первом случае ваш ответ будет записан и отправлен к модератору, а во втором ("Пропустить") вы не даёте никакого ответа, а это задание покажут кому-то ещё. Пропуски не учитываются при определении согласованности и точности разметки. Комментарии сохраняются в любом случае.

Кнопки расширения контекста
Открывает все слова от начала предложения до выделенного слова, если они есть.
Открывает все слова от выделенного слова до конца предложения, если они есть.
Кнопки-ответы - нужно нажать на одну из них, чтобы выполнить задание
Выбор правильной грамматической характеристики. Нажимайте на такие кнопки, когда вы уверены в ответе.
Ни одна из приведённых грамматических характеристик не подходит. Нажимайте на эту кнопку, чтобы модератор посмотрел этот пример.
Вы не знаете правильного ответа или не понимаете этого примера. Нажимайте эту кнопку, чтобы на этот пример ответил кто-нибудь другой.
Дополнительные действия
Добавить комментарий. Пожалуйста, делайте это, если в качестве ответа вы нажали "Другое"
Кнопки внизу страницы
Разметить ещё несколько заданий этого типа.

Кнопка станет доступной, когда все ответы запишутся в базу данных на сервере. Если она недоступна длительное время, проверьте, все ли кнопки-ответы нажаты. Кроме этого, проверьте соединение с Интернетом. Если всё в порядке, то перезагрузите страницу.

Закончить с этим типом заданий и начать делать что-нибудь другое.

Дальнейшие действия

Задания сгруппированы в пулы по несколько сотен штук (чаще всего по 200). На каждое задание отвечает несколько человек (чаще всего трое). Когда все задания в пуле выполнены заданным количеством участников, пул закрывается и перестаёт отображаться в списке доступных заданий. Закрытые пулы проверяют модераторы и принимают окончательные решения. После модерации ответы попадают в разметку корпуса и часть неоднозначности снимается.

Посмотреть статистику

Посмотрите и найдите там себя. В таблице отображается ваше имя, общее количество ответов, количество ответов в полностью завершённых пулах, % расхождений, количество ответов в проверенных модераторами пулах, % ошибок, а также дата и время вашего последнего ответа.

Обратите внимание на % расхождений и % ошибок. Первое - это процент ваших ответов, которые не совпали с хотя бы одним из ответов других участников. % расхождений косвенно указывает на качество ваших ответов. Даже если вы делаете идеальную разметку (что невозможно, т.к. даже очень опытные люди делают случайные ошибки), ваши ответы могут не совпасть с кем-то, кто делает больше ошибок. Однако, если % расхождения существенным образом отличается от других участников, то, возможно, следует внимательно прочитать инструкцию по конкретному типу заданий. Другой причиной большого % расхождений может быть то, что вы часто нажимаете кнопку "Другое". Это, однако, не повод не нажимать её, если вы считаете нужным это делать.

% ошибок - это процент ваших ответов, не совпавших с ответами модератора. Он считается с большой задержкой (до нескольких недель), т.к. модераторы пока работают медленно.

Присоединиться к команде

Кроме индивидуального рейтинга участников составляется также и командный рейтинг. На странице статистики он идёт следующим. Чтобы присоединиться к команде или создать новую, зайдите в и выберите команду из списка. Чтобы создать новую, выберите "Добавить новую..." и, в появившемся поле, введите название новой команды. После этого, нажмите "Сохранить". Создав новую команду, приглашайте в неё ваших друзей и знакомых.

Позвать друзей присоединиться к разметке

На момент написания этой инструкции в корпусе 700 тысяч слов. С учётом того, что в среднем одно слово порождает несколько заданий, а каждое задание показывается троим участникам, то чтобы разметить весь корпус, нужно выполнить примерно 4 миллиона заданий.

Если в разметке будут участвовать 100 человек, то получается по 40 тысяч вопросов на человека (это много). Если 1000 человек, то по 4 тысячи (несколько часов работы). Если 10000, то по 400 заданий на человека (20-30 минут). Поскольку для участия в разметке никаких особенных лингвистических знаний не требуется, можно звать друзей, знакомых, однокурсников и коллег. Напишите об этом ВКонтакте, в Twitter, в Facebook, в ЖЖ. Тем, с кем вы часто встречаетесь, расскажите и покажите как пользоваться интерфейсом разметки.

Если каждый разметит по чуть-чуть, мы вместе сможем решить большую задачу создания морфологической разметки за несколько месяцев.

Получать новости проекта

Слово интерфейс может иметь множество определений, однако основное определение действует в сфере компьютерной техники. Интерфейс здесь означает средство, которое помогает пользователю взаимодействовать с играми, программами или операционным системами. Это средство делает программы узнаваемыми и облегчает работу с ними. Для примера можно взять интерфейс программы Paint. Если человек умеет с ней работать, то ему под силу будет и работа с иными программами, имеющими подобный интерфейс.

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

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

Само слово «интерфейс» позаимствовано в английском языке. Его буквальный перевод означает взаимодействие между лицами, в таком же значении оно и используется. В современных технологиях, интерфейс – это уникальные системные связи, которые обеспечивают передачу информации между двумя объектами или более. Хотя данное понятие чаще всего используется в компьютерных технологиях, присутствует оно и в других областях науки и техники. К примеру, в инженерной психологии интерфейсом называют коммуникации машин с людьми.

Необходимость интерфейсов

Представим, что сложное оборудование составлено из связей, блоков и других различных узлов. Также оборудование связано и с самим пользователем. Последняя связь должна быть выражена в логической форме. Это система, которая предоставляет информацию, а также характеризует сигналы. Компьютерные интерфейсы логически можно представить себе как системы, созданные на основании математики. То есть, математически, это системы понятий Булевой алгебры. Физически же его можно представить как совокупность чипов, электронных деталей, проводков и других частей, которые между собой обмениваются импульсами тока.

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

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

Интерфейс программы

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

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

Графический интерфейс

Графический интерфейс – это пользовательский интерфейс, в котором используются изображения вместо цифр. Изображения в нем заменяют также и буквы, это кнопки или иконки. Яркий пример интерфейса графического типа – это рабочий стол Виндоуз. Работа в этом интерфейсе заключается в том, чтобы обеспечивать работу программы с помощью кликов.

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

Графический интерфейс имеет и свои недостатки, главный из которых – это большой объем памяти, который необходим для того, чтобы в графическом виде представлять себе программу. Но современные программы этот недостаток преодолели, поскольку память современных компьютеров увеличивается с каждым новым выпуском. Но вместе с этим усложняется и сам интерфейс, теперь он занимает больше памяти, но становиться удобнее и эффективнее.

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

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

Виды интерфейса

Помимо того, что интерфейс существует игровой, программный и графический, бывает также интерфейс следующих видов:

  • внешний;
  • внутренний.

Внутренний интерфейс представляет собой методы и свойства, к ним доступ осуществляется посредством иных средств данного объекта. Еще их именуют приватными.

Внешним интерфейсом именуют методы и свойства, которые снаружи доступны пользователям. Такие методы называют публичными. Данные виды можно рассмотреть наглядно, взяв за пример кофеварку. Внутри кофеварки спрятан кипятильник, элемент, который нагревает, тепловой предохранитель и так далее. Все это можно назвать внутренним интерфейсом. Детали, которые его составляют, обеспечивают работоспособность прибора. Для этого они взаимодействуют друг с другом. К примеру, для работы кофеварки её нагревательный элемент подключен к кипятильнику.

Ко внутреннему интерфейсу кофеварки подобраться тяжело, он закрыт от пользователя пластмассовым корпусом. Детали прибора скрыты, и пользователю доступен только внешний интерфейс. Когда приобретена кофеварка, то пользователю доступен только внешний интерфейс. Знать о внутреннем интерфейсе совсем не обязательно, для пользования прибором необходим только внешний его интерфейс.

Такие же примеры касаются и остальных бытовых приборов, к примеру, стиральная машинка, телевизор и прочее. Существует внутренний интерфейс и у компьютера, он не доступен пользователю, однако при поломке прибора, приходится взаимодействовать именно с ним.

Таким образом, интерфейс характеризуют как средства, с помощью которых удается взаимодействовать с вычислительными машинами, управлять бытовыми приборами и так далее. Он бывает внешним и внутренним. Пользователю доступен только внешний интерфейс приборов и машин.

    • Понятие о программном обеспечении (Software).

      Программное обеспечение (ПО) - это совокупность программ, позволяющая организовать решение задач на ЭВМ. ПО и архитектура ЭВМ (аппаратное обеспечение) образуют комплекс взаимосвязанных и разнообразных функциональных средств ЭВМ, определяющих способность решения того или иного класса задач. Небходимо различать ПО и математическое обеспечение (МО). МО - это математические методы и алгоритмы, обеспечивающие решение поставленных задач. По мере развития поколений вычислительной техники одновременно совершенствовалось и программное обеспечение от простейших машинных команд до языков программирования высокого уровня и сложных операционных систем, от простейших текстовых редакторов до современных компьютерных технологий. Программное обеспечение делится на 3 класса: системное ПО, прикладное ПО и системы программирования (инструментальные системы). Резких граней между указанными тремя классами нет: иногда одни программы или пакеты программ из одного класса включают в себя программы из другого класса. Такие пакеты программ называются интегрированными системами. Пример: В состав MS-DOS 6.22 входит текстовый редактор MS-DOS Editor и среда программирования QBasic. Пример других интегрированных систем: MS Works, Windows 3.1, Windows-95/98/2000. 1. Системное ПО организует процесс обработки информации в ЭВМ. Главную часть системного ПО составляет Операционная система (ОС). К системному ПО также относятся программы для диагностики и контроля работы компьютера, архиваторы, антивирусы, программы для обслуживания дисков, программные оболочки, драйверы внешних устройств, сетевое ПО и телекоммуникационные программы. Примеры важнейших системных программ: MS-DOS, Norton Commander, Norton Utilities, Windows. 2. Прикладное ПО предназначено для решения определенного класса задач пользователей. Существуют пакеты прикладных программ (например, MS Works) и библиотеки стандартных программ (например, MathCad для вычисления функций, построения графиков и решения уравнений). Компьютеры широко используются для подготовки к печати различных документов. Подготовленный и оформленный документ затем распечатываеся на принтере. Программы, предназначенные для ввода и обработки текстов на ПК, называются текстовыми редакторами. Процесс подготовки текстов называется редактированием. Приме- ры важнейших текстовых редакторов: Лексикон, "Слово и Дело", Word. Современное прикладное ПО включает в себя основные офисные компьютерные технологии: текстовый процессор (технология обработки текста), табличный процессор (технология обработки численных данных), система управления базами данных (технология обработки данных различной природы), графический редактор (технология обработки графических изображений). Примером пакета программ, содержащим важнейшие офисные компьютерные технологии, является Microsoft Office-97 для Windows-95. К прикладному ПО относятся текстовые и графические редакторы, электронные таблицы, системы управления базами данных (СУБД), графические редакторы систем автоматизированного проектирования (САПР), автоматизированные рабочие места (АРМ) бухгалтера, секретаря и т.д., издательские, информационные и справочные системы, обучающие и тестирующие программы, игровые программы. Примеры важнейших прикладных программ: Word, Excel,Works, Лексикон, Paint Brush, AutoCad. 3. Важнейшей частью ПО являются Системы программирования (инструментальные системы), позволяющие разрабатывать новые программы на языках программирования. Примеры важнейших систем программирования: Turbo Pascal, QBasic, Borland C++, Visual Basic.

      Понятие об интерфейсе. Типы интерфейсов.

      1. Интерфейс - это способ общения пользователя с персональным компьютером, пользователя с прикладными программами и программ между собой. Интерфейс служит для удобства управления программным обеспечением компьютера. Интерфейсы бывают однозадачные и многозадачные, однопользовательские и многопользовательские. Интерфейсы отличаются между собой по удобству управления программным обеспечением, то есть по способу запуска программ. Существуют универсальные интерфейсы, допускающие все способы запуска программ, например Windows 3.1, Windows-95. Пример: Windows-95 имеет все способы запуска, в том числе позволяет запускать программы при помощи меню кнопки Пуск.
      Ряд важнейших программ, например все виды DOS, запускаются автоматически при включении компьютера, другие с помощью файлов autoexec.bat или config.sys (различные драйверы). Ряд программ могут при необходимости автоматически загружаться при запуске оболочек Windows 3.1, Windows-95.
      2. Типы интерфейсов.
      Интерфейсы отличаются по способу доступа к командным файлам программ.
      2.1. Команднострочный (текстовый) интерфейс.
      Для управления компьютером в командную строку пишется (вводится с клавиатуры) команда, например, имя командного файла программы или специально зарезервированные операционной системой служебные слова. Команда может быть при необходимости отредактирована. Затем для исполнения команды нажимается клавиша Enter. Данный тип интерфейса в качестве основного имеют все разновидности операционных систем, например MS-DOS 6.22. Как дополнительное средство данный тип интерфейса имеют все виды программных оболочек (Norton Commander, DOS Navigator и др.) и Windows 3.1, Windows-95/98. Команднострочный интерфейс неудобен, так как надо помнить имена многих команд, ошибка в написании даже одного символа недопустима. Он применяется редко в сеансе непосредственной работы с операционной системой или при сбоях, когда другие способы невозможны.
      2.2. Графический полноэкранный интерфейс.
      Он имеет, как правило, в верхней части экрана систему меню с подсказками. Меню часто бывает выпадающим (ниспадающим). Для управления компьютером курсор экрана или курсор мыши после поиска в дереве каталогов устанавливается на командные файлы программ (*.exe, *.com, *.bat) и для запуска программы нажимается клавиша Enter или правая кнопка мыши. Различные файлы могут выделяться разным цветом или иметь разный рисунок. Каталоги (папки) отделяются от файлов размером или рисунком.
      Данный интерфейс является основным для всех видов программных оболочек. Пример: Norton Commander и нортонообразные оболочки (DOS Navigator, Windows Commander, Disk Commander). Подобный интерфейс имеют инструменты Windows 3.1 (Диспетчер файлов) и Windows-95/98 (Мой компьютер и Проводник). Такой интерфейс весьма удобен, особенно при работе с файлами, поскольку обеспечивает высокую скорость выполнения операций. Позволяет создавать пользовательское меню, запускать приложения по расширению файлов, что повышает скорость работы с программами.
      2.3. Графический многооконный пиктографический интерфейс.
      Представляет собой рабочий стол (DeskTop) на котором лежат пиктограммы (значки или иконки программ). Все операции производятся, как правило, мышью. Для управления компьютером курсор мыши подводят к пиктограмме и запуск программы осуществляют щелчком левой кнопки мыши по пиктограмме. Это наиболее удобный и перспективный интерфейс, особенно при работе с программами. Пример: интерфейс компьютеров Apple Macintosh, Windows 3.1, Windows-95/98, OS/2.

  • DIY или Сделай сам
  • О пользе управления шторой через rs-485

    Некоторое время назад оказался у меня электрокарниз для раздвижных штор AKKO AM72E. Не то чтобы мне лень двигать руками шторы, но прогресс идет вперед и я пытаюсь семенить следом. Электромотор может управляться и по сухим контактам и с радиопульта. Но кому нужна эта банальность, если мотор поддерживает интерфейс RS485, что позволяет не только отдавать команды, но и считывать состояние шторы. Да и в общем конечная цель управлять карнизом со своего телефона, а почему бы и нет.

    Самым простым было бы найти переходник USB-RS485 и начать тестирование. Но такого переходника поблизости не оказалось. Если заказывать, пришлось бы какое-то время ждать. Быстрее сделать. У меня есть несколько переходников USB-UART на всех популярных микросхемах, но пользуюсь я в основном парой переходников на CP2103. Выглядят они примерно так:

    Примерно, потому что установлены разъёмы и выведены дополнительные сигналы. Всего-то нужно сделать переходник UART-RS485. В магазине были куплены несколько MAX485. Возможно, было бы проще, использовать что-то вроде MAX13487 c автоматическим переключением передачи и приёма. Но в местном магазине я таких не нашёл (возможно просто плохо искал). Честно говоря, мне и за MAX485 ехать в магазин было лень. Поначалу было желание сделать приём на ОУ, а передатчик на транзисторах - это же так просто протестировать работает электрокарниз AM72E по этому протоколу, или нет.

    Назад в «Современную электронику»

    Дело за схемой. За основу я взял схему из журнала «Современная электроника» №1 за 2007г. Выглядело всё радужно. В статье говорится, что «Выводы GPIO микроконтроллера CP2103 по-умолчанию запрограммированы как управляющие выходы и соответствуют их использованию в схеме адаптера USB-RS485». Оказалось, что это не мой случай. Переходники у меня давно. Редкая вещь, попавшая мне в руки, не подвергается «улучшению». Прошивки в переходниках небыли исключением и даже если в девичестве могли понукать RS485, то теперь эти навыки были напрочь отшиблены.

    Вечер переставал быть томным. Нужно было что-то, что переключит MAX485 с передачи на приём. Кстати, на передачу переходник отлично работал. В общем-то, и этого могло оказаться достаточно т. к. читать с AM72E особенно нечего.

    Вариантов было много. MAX485 на плате установлен на панельку, и без труда может быть заменён на микросхему, с автопереключением приём-передача. Но это вообще не вариант т. к. надо ехать в магазин. Ещё у меня есть переходники на FT232, а эти микросхемы могут переключать MAX485. Слишком просто. И у меня уже зрел план, как мне поразвлечься с AM72E и для FT232 места в нём не было. Нужно дополнить схему так, чтобы при появлении стартового бита на TX UART"а, MAX485 переключилась с приёма на передачу и находилась в этом состоянии на время передачи всего байта, а затем снова переключилась на приём. Обратившись к накопленному до меня опыту через google, я выяснил, что решается эта проблема при помощи таймера NE555. Действительно, чего мудрить. Но ничего из таймеров семейства NE555 у меня не было. Дальше вы знаете: магазин - лень.

    Одновибратор для лентяя… не нужен

    Сделать одновибратор можно миллионом способов. Я даже хотел по-быстрому переделать плату и поставить STM8S003 для этих целей. На первый взгляд это может выглядеть как из пушки по воробьям, но если вы сравните схемы на NE555 и STM8S003, то схема на МК окажется даже проще т. к. из внешних элементов нужен только один конденсатор. Программа - буквально несколько строчек на ассемблере. С ценой тоже всё неплохо - стоит дешевле, чем MAX485 в нашем магазине. С аппаратным таймером (на NE555) есть одна проблема. Он отлично будет работать на одной скорости. Как только вам будет нужно изменить скорость обмена, вам придётся перестраивать таймер. Мне частенько попадаются устройства, которые при старте выдают в UART отладочную информацию на одной скорости, а после загрузки переходят в режим обмена на другой. Да и мало ли почему вам может потребоваться изменить скорость! Каждый раз лезть при этом в схему не захочется. Вот тут-то таймер на STM8 может помочь - программу можно написать так, чтобы нужные тайминги выставлялись по-сигналу и не требовали вмешательства. Это не очень сложно. Я вообще не понимаю, почему мне нужно что-то знать о скорости обмена по UART. Ещё много лет назад мне попадались устройства UART, которые автоматически определяли скорость, на которой подключилось другое устройство и на лету на неё настраивались.

    Я знаю, что вам хотелось бы увидеть схему без STM8S003. Ладно, пойду вам на встречу. И без этого я сумею из простого теста сделать что-то интересное. В схеме вообще не будет одновибратора:

    Что и как здесь работает, объяснять не буду - всё стандартно и очевидно. Скажу только, что перемычки возле резисторов R5 и R7 я не ставил, т. е. схему можно сделать проще, убрав все перемычки и эти два резистора. Максимум, что вам может понадобится, это R5. Встречаются устройства, которые при ответе, просто отпускают линию при передаче последних битов, если это единицы. Тогда, без R5, последний байт может искажаться. В нашем случае это не принципиально т.к. последним передаётся старший байт контрольной суммы ответа. Схема будет работать и без R1, но нам он понадобится позже.

    У меня это выглядит так:

    Не расстраивайтесь, если не видите всех элементов, которые есть на схеме. Я вначале сделал плату по схеме из статьи, а затем экспериментировал со схемой переключения приём-передача. Транзистор (DTC143 в SOT23, сразу с базовым резистором) и SMD резисторы напаяны прямо на дорожки с обратной стороны платы.

    Если вы поставите MAX13487, то от схемы вообще ничего не останется. Ещё лучше - возьмите стандартный переходник USB-RS485. Но тогда вы будете привязаны проводами к шторам. Глупое зрелище. Стал бы я заморачиваться с переходником UART-RS485, если бы у меня не было коварного плана?

    Lua нам в помощь

    С железом на этом закончим. Надо писать программу. Программа только для теста. Ничего сложного. Нужно команды для AM72E отправить в последовательный порт. Ну, ещё можно почитать, что он там нам отвечает. Для опытов возьмём компьютер с Windows. Надо выбрать язык, на котором будем писать. Первое, что мне пришло на ум - powershell. Не, не буду я вас мучить powershell. Тогда python. Всем хорош питон - код на нём переносим на любую операционку, понятен, можно сразу прикрутить графический интерфейс, а для Windows ещё и упаковать как экзешник так, что мало кто поймёт, что программа на питоне. И всё равно не python. Примеров работы с последовательным портом на питоне и без этого много - желающие могут найти самостоятельно. Программу напишем на Lua. Да уж, странный выбор. Вообще-то выбора у меня большого и не было. Либо C, либо Lua. Почему - об этом позже. Можно и на C. Но нет, не в этот раз. Просто потому, что на C я пишу код так, что через пару месяцев сам не могу его понять, не приняв веществ расширяющих сознание. Шучу. Так я пишу на любом языке.

    Lua нужно установить. Берём отсюда: https://code.google.com/p/luaforwindows/downloads/list . Устанавливается практически в один клик. В комплекте достаточное количество модулей. Есть всё необходимое. В том числе и для графического интерфейса - iup. Если решите, что он вам понадобится - используйте на здоровье. Но мы обойдёмся командной строкой. Нам только для тестирования. И нам понадобится модуль, для работы с последовательным портом. Если бы мы решили проводить тестирование под Linux или Mac OS, то с последовательным портом можно было бы работать без дополнительного модуля - просто как с файлом. Для доступа к UART под Windows нам нужен модуль luars232. В сборке он уже есть. Дополнительно ничего искать и устанавливать не надо.

    Файл с программой - curtain.lua - всего несколько десятков строчек. При желании можно ещё сократить. Как пользоваться, объяснять не буду. Покажу картинку:

    Сделаю только одно пояснение. Это и так очевидно, но если строка начинается с символа «>», то эта строка введена с клавиатуры. Если этого символа в начале строки нет, то строка получена от программы.

    Я и не рассчитывал, что всем всё будет понятно. Командная строка, как и провода, нам не понадобятся. Сейчас важно только то, что RS485 на AM72E прекрасно работает. Нет, у меня был момент, когда всё собрав и проверив, я начал отправлять команды в AM72E, а он никак не реагировал. Мысль о том, что RS485 всё-таки не работает, промелькнула у меня в голове. Но потом я посмотрел под стол, туда, где у меня сетевой удлинитель, и увидел, что AM72E надо бы ещё подключить к сети. После этого, при отправке команды «Close», я услышал весёлое жужжание двигателя - всё работает.

    Чуток передохну и перейду к реализации своего «коварного плана» - научу свой электрокарниз принимать команды через WiFi. О чем отчитаюсь в следующей статье.