Что такое интерфейс? Виды интерфейсов. Понятие о программном обеспечении (Software)

Авто 04.07.2019
Авто

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

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

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

Для чего необходим интерфейс

Он исполняет роль некой системы связи между различными блоками оборудования, а еще техники и пользователя. Он может выражаться как в логической , так и физической форме. Логически — это сложные алгоритмы, в основе которых лежит Булева алгебра, а физически это различные чипы, детали, провода и прочее, объединенные между собой.

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

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

В течение передачи по интерфейсу 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 приостанавливается.

Взаимодействие человека с вычислительной машиной - важнейшее звено процессов при решении прикладных задач различного характера. Итак, что такое интерфейс?

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

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

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

Виды интерфейсов

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

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

Интерфейс «человек-машина». По-другому его называют пользовательским. Что такое интерфейс «человек-компьютер»? Это способ, с помощью которого выполняется какая-либо задача, то есть действия, которые вы совершаете, и то, что получается в результате. Такой интерфейс ориентирован, прежде всего, на человека, то есть он отвечает его потребностям и учитывает слабости.

Поскольку пользовательский интерфейс более всего интересен человеку, то его также классифицируют на несколько подвидов: командный, SILK и WIMP.

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

Последовательный интерфейс обеспечивает передачу информации (последовательности битов) по одной линии.

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

Характерной чертой интерфейса WIMP является то, что ведение диалога пользователя с компьютером осуществляется при помощи окон, курсора, графических образов и прочих элементов. К нему относят стандартный интерфейс ОС семейства Windows.

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

Нередко можно услышать или прочесть выражения: «понятный интерфейс», «сложный интерфейс» и т.д. Давайте разберемся в значении этого слова и поймем, в каких случаях оно используется.

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

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

Интерфейс представляет собой систему связи между различными узлами и блоками сложного оборудования, а также между техникой и пользователем. Он выражается в логической (системы представления информации) и физической (характеристики информационных сигналов) форме.

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


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

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

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

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

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


Однако с каждым годом усложняется и графический интерфейс: он становится трехмерным, приобретает новые формы и способы выражения, становится все более удобным и эффектным внешне.

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

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

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


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

  • 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. О чем отчитаюсь в следующей статье.



    Рекомендуем почитать

    Наверх