Рефераты - Афоризмы - Словари
Русские, белорусские и английские сочинения
Русские и белорусские изложения
 

Проект микропроцессора

Работа из раздела: «Коммуникации, связь, цифровые приборы и радиоэлектроника»

/

Оглавление

Введение

1. Микропроцессоры

1.1 Изобретение и развитие МП

1.2 Универсальные МП

1.3 Сигнальные МП

2. Микроконтроллеры

2.1 МК типа MCS51

2.2 МК типа ARM

2.3 МК типа AVR

2.4 МК типа PIC

3. Проектирование микропроцессорной системы на базе PIC16F913

3.1 Основные сведения о PIC16F913

3.2 Принципиальная схема МПС

3.3 Выбор датчиков

3.4 Расчет основных элементов МПС

3.5 Составление алгоритма работы схемы и программы для МК

3.6 Сборка МПС в программе Proteus и получение результата

Список использованной литературы

Приложение

Заключение

Введение

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

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

Применение микропроцессоров предоставляет нам много преимуществ в том числе:

-Применение микропроцессоров привело к тому, что скорость вычислений на ЭВМ за 25 лет выросла примерно в 200 раз, а потребление электроэнергии ЭВМ уменьшилось в 10 ООО раз. ?

-Применение микропроцессоров дает возможность в 5--10 раз сократить трудоемкость изготовления изделий, в 2--6 раз снизить стоимость, в 5--10 раз повысить надежность, в 10--20 раз уменьшить габариты и потребляемую мощность.

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

- В космических программах полётов к Луне «Аполлон» в 1960-х и 1970-х годов, все бортовые вычисления для первичного наведения, навигации и управления были предоставлены небольшими специализированными процессорами бортового компьютера Аполлон.

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

С начала 1970-х годов широко известно, что рост мощности микропроцессоров следует закону Мура, который утверждает, что число транзисторов на интегральной микросхеме удваивается каждые 18 месяцев. В конце 1990-х главным препятствием для разработки новых микропроцессоров стало тепловыделение (TDP)

1. Микропроцессоры

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

Микропроцессор выполняет следующие основные функции:

- чтение и дешифрацию команд из основной памяти;

- чтение данных из основной памяти и регистров адаптеров внешних устройств;

- прием и обработку запросов и команд от адаптеров на обслуживание внешних устройств;

- обработку данных и их запись в основную память и регистры адаптеров внешних устройств;

- выработку управляющих сигналов для всех прочих узлов и блоков компьютера.

В состав микропроцессора входят следующие устройства.

1. Арифметико-логическое устройство предназначено для выполнения всех арифметических и логических операций над числовой и символьной информацией.

2. Устройство управления координирует взаимодействие различных частей компьютера. Выполняет следующие основные функции:

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

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

-получает от генератора тактовых импульсов обратную последовательность импульсов.

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

4. Интерфейсная система микропроцессора предназначена для связи с другими устройствами компьютера. Включает в себя:

-внутренний интерфейс микропроцессора;

-буферные запоминающие регистры;

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

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

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

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

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

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

Все микропроцессоры можно разделить на группы:

- микропроцессоры типа CISC с полным набором системы команд;

- микропроцессоры типа RISC с усеченным набором системы команд;

- микропроцессоры типа VLIW со сверхбольшим командным словом;

- микропроцессоры типа MISC с минимальным набором системы команд и весьма высоким быстродействием и др.

Важнейшими характеристиками микропроцессора являются:

- тактовая частота. Характеризует быстродействие компьютера. Режим работы процессора задается микросхемой, называемой генератором тактовых импульсов. На выполнение процессором каждой операции отводится определенное количество тактов. Тактовая частота указывает, сколько элементарных операций выполняет микропроцессор за одну секунду. Тактовая частота измеряется в МГц;

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

1.1 Изобретение и развитие МП

Электромеханические вычислительные средства:

- 1888-1890 -- Табулятор Холлерита, первое автоматическое вычислительное устройство, производившееся промышленными партиями. Впоследствии (1896) Герман Холлерит основывает компанию Tabulating Machine Company, в 1924 году переименованную в International Business Machines Corporation после промежуточной смены имени в 1911.

- 1937 -- Z1, вычислительная машина, разработанная Конрадом Цузе, стала первым вычислительным устройством, работавшим на двоичной логике и применявшее арифметику с плавающей запятой.

- 1943 -- «Марк I», первый компьютер, произведённый фирмой IBM.

Электронные вычислительные средства:

- 1946 -- ENIAC; 1948 -- Манчестерская МЭМ «Baby»; 1949 -- EDSAC -- первые ЭВМ.

- 7 апреля 1964 г. фирма IBM объявила о создании семейства компьютеров System 360 -- первой серии масштабируемых компьютеров, впоследствии ставшая примером открытого стандарта, когда один производитель компьютерного оборудования мог произвести оборудование, совместимое с оборудованием другого производителя; широкое распространение System 360 де-факто установило стандарт байта, состоящего из 8 битов, и ввело в широкое употребление шестнадцатеричную систему счисления в программировании.

Теоретические разработки, нашедшие применение в персональных компьютерах:

- XVII век -- описание Лейбницем двоичной системы счисления.

- 1847-1854 -- изобретение булевой алгебры на основе двоичной системы счисления.

- 1940-1948 -- понимание того, что работа логических электрических схем тождественна булевой алгебре и разработка теории информации Клода Шеннона.

- середина 1940-х -- разработка архитектуры фон Неймана.

- 1957 -- впервые реализован язык программирования высокого уровня, носивший название Фортран.

- В 1964 г. Американская Ассоциация Стандартов принимает новый 7-битовый стандарт для обмена информации ASCII (American Standard Code for Information Interchange).

- В 1964 г. Джон Кемени и Томас Курц в Дартмутском колледже, разработали язык программирования BASIC. Этот язык программирования с различными модификациями применялся почти во всех персональных и домашних компьютерах 1970-80-х годов.

- В 1973 г. исследовательский центр Xerox PARC представил Xerox Alto -- первый в мире образец компьютера с оконным (графическим) интерфейсом.

Появление технологий, нашедших применение в персональных компьютерах:

- 23 декабря 1947 г. три учёных в лабораториях компании Bell Labs, Уильям Шокли, Уолтер Браттейн и Джон Бардин изобрели точечный транзисторный усилитель, что позволило уменьшить размеры компьютеров, до этого использовавших электронные лампы.

- В сентябре 1958 г. Джек Килби из компании Texas Instruments построил первую электронную микросхему, где пять компонентов были интегрированы на одной плате из германия размером в 1,5 см в длину и 1-2 мм в толщину.

- В 1959 г. Роберт Нойс из Fairchild Semiconductor, построил интегрированную электронную микросхему, где компоненты были соединены друг с другом алюминиевыми линиями на окисленной поверхности кремния (silicon-oxide).

- В 1960 г. компания DEC представила первый миникомпьютер PDP-1 (Programmed Data Processor), стоимость которого составляла 120 000 долл. Это был первый коммерческий компьютер, оснащённый клавиатурой и монитором.

В 1963 г. Дуглас Энгельбарт изобрёл компьютерную мышь.

- В 1965 г. Гордон Мур, директор подразделения исследований и разработок в Fairchild Semiconductor формулирует вывод, основанный на наблюдениях за динамикой развития технологий изготовления микросхем. Эта формулировка получает название закон Мура: плотность транзисторов в интегрированных микросхемах будет удваиваться каждые 24 месяца в течение следующих десяти лет.

- 4 июня 1966 г. американский офис патентов выдает доктору Роберту Деннарду из компании IBM патент № 3387286 на однотранзисторную ячейку памяти (DRAM Dynamic Random Access Memory -- Динамическая Память с Произвольным Доступом) и на базовую идею 3-транзисторной ячейки памяти. Такой тип памяти сейчас повсеместно используется для краткосрочного хранения информации.

- В 1966 г. Роберт Нойс и Гордон Мур основывают корпорацию Intel. Эта компания начинает с создания микрочипов памяти, но постепенно превращается в компанию по производству микропроцессоров.

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

В 1969 г. Пентагон создает четыре узла сети ARPAnet -- прообраза современной Internet. День 2 сентября 1969 принято считать днём рождения Интернета.

- 1971 -- изобретение накопителя на гибком магнитном диске, дискеты диаметром в 200 мм (8?). В конце 1970-х размеры дискет уменьшились до 133 мм (5,25?) и в 1981 до 90 мм (3,5?).

- 1971 -- появление первого микропроцессора (процессора, помещающегося на интегральной микросхеме) Intel 4004. Этот процессор имел разрядность в 4 бита, и применялся, например, в калькуляторах или схемах управления светофорами. Из микропроцессоров 1970-х годов, нашедших применение в персональных компьютерах, стоит упомянуть 8-разрядные Intel 8008, Intel 8080, Zilog Z80, National Semiconductor SC/MP[en], MOS 6502, Motorola 6800 и 16-разрядные Intel 8086, Intel 8088.

1.2 Универсальные МП

Универсальные микропроцессоры предназначены для решения задач цифровой обработки различного типа информации от инженерных расчетов до работы с базами данных, не связанных жесткими ограничениями навремя выполнения задания. Этот класс микропроцессоров наиболее широко известен. К нему относятся такие известные микропроцессоры, как МП ряда Pentium фирмы Intel и МП семейства Athlon фирмы AMD.

Характеристики универсальных микропроцессоров:

· разрядность: определяется максимальной разрядностью целочисленных данных, обрабатываемых за 1 такт, то есть фактически разрядностью арифметико-логического устройства (АЛУ);

· виды и форматы обрабатываемых данных;

· система команд, режимы адресации операндов;

· емкость прямо адресуемой оперативной памяти: определяется разрядностью шины адреса;

· частота внешней синхронизации. Для частоты синхронизации обычно указывается ее максимально возможное значение, при котором гарантируется работоспособность схемы. Для функционально сложных схем, к которым относятся и микропроцессоры, иногда указывают также минимально возможную частоту синхронизации. Уменьшение частоты ниже этого предела может привести к отказу схемы. В то же время в тех применениях МП, где не требуется высокое быстродействие, снижение частоты синхронизации -- одно из направлений энергосбережения. В ряде современных микропроцессоров при уменьшении частоты он переходит в < спящий режим>, при котором сохраняет свое состояние. Частота синхронизации в рамках одной архитектуры позволяет сравнить производительность микропроцессоров. Но разные архитектурные решения влияют на производительность гораздо больше, чем частота;

· производительность: определяется с помощью специальных тестов, при этом совокупность тестов подбирается таким образом, чтобы они по возможности покрывали различные характеристики микроархитектуры процессоров, влияющие на производительность.

Рассмотрение архитектуры IA-32 начнем с микропроцессора i486. В нем впервые появились те блоки, которых не было на кристалле первого 32-разрядного микропроцессора i386, -- кэш-память и процессор обработки чисел с плавающей точкой. Именно его архитектуру можно рассматривать как базовую для IA-32. Структура микропроцессора i486 представлена на рисунке 1.2.1.(Он является универсальным МП). Процессор обработки чисел с фиксированной точкой содержит 32-разрядное АЛУ и блок регистров общего назначения. АЛУ предназначено для обработки двоичных чисел длиной 1, 2 или 4 байта без знака или со знаком, а также двоично-десятичных чисел, не превышающих 99. Двоичные числа со знаком представляются в дополнительном коде. Блок регистров общего назначения содержит восемь 32-разрядных регистров, часть из которых допускает 16- и 8-разрядное обращение.

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

Рис.1.2.1 Структура универсального МП.

1.3 Сигнальные МП

Цифровой сигнальный процессор (англ. Digital signal processor, DSP; сигнальный микропроцессор, СМП; процессор цифровых сигналов, ПЦС; цифровой процессор обработки сигналов, ЦПОС) -- специализированный микропроцессор, предназначенный для цифровой обработки сигналов (обычно в режиме реального времени).

Архитектура сигнальных процессоров, по сравнению с микропроцессорами общего применения, имеет некоторые особенности, связанные со стремлением максимально ускорить выполнение типовых задач цифровой обработки сигналов, таких, как цифровая фильтрация, преобразование Фурье, поиск сигналов и т. п. Математически эти задачи сводятся к поэлементному перемножению элементов многокомпонентных векторов действительных чисел, последующему суммированию произведений (например, в цифровой фильтрации выходной сигнал фильтра с конечной импульсной характеристикой равен сумме произведений коэффициентов фильтра на вектор выборок сигнала, аналогичные вычисления производятся при поиске максимумов корреляционных и автокорелляционных функций выборок сигналов). Поэтому сигнальные процессоры оптимизированы по быстродействию для выполнения именно таких операций. И ЦСП ориентированы, в первую очередь, на многократное выполнение умножения с расчётом «на лету» адресов перемножаемых элементов массивов:

- Операция «умножение с накоплением» (англ. Multiply-Accumulate, MAC) (Y = Y + A Ч B), где Y, A, B -- элементы действительных массивов с автоматическим расчетом адресов элементов массивов и обычно реализована аппаратно и исполняется за один машинный цикл.

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

- Возможность одновременной в одном машинном такте выборки команды и двух операндов для максимально быстрого выполнения команды MAC. Для этого ЦСП имеет несколько портов обращения к памяти (независимых областей памяти, каждая со своим комплектом шин адреса и данных).

- Поддержка векторно-конвейерной обработки с помощью генераторов адресных последовательностей.

Ограниченность аппаратных ресурсов первых ЦСП накладывала существенный отпечаток на их архитектуру:

- Гарвардская архитектура (разделение памяти команд и данных), как правило, модифицированная; с разделением памяти на сегменты с независимым доступом.

- Детерминированная работа с известными временами выполнения команд, что позволяет выполнять планирование работы в реальном времени.

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

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

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

Области применения

- Коммуникационное оборудование:

- Уплотнение каналов передачи данных;

- Кодирование аудио- и видеопотоков;

- Системы гидро- и радиолокации;

- Распознавание речи и изображений;

- Речевые и музыкальные синтезаторы;

- Анализаторы спектра;

- Управление технологическими процессами;

- Другие области, где необходима быстродействующая обработка сигналов, в том числе в реальном времени.

Основные параметры ЦСП

- Тип арифметики. ЦСП делятся на процессоры, обрабатывающие данные с фиксированной точкой и обрабатывающие данные с плавающей точкой. Устройства с плавающей точкой удобнее в применении, но они заметно сложнее по устройству и более дороги;

- Разрядность данных. Большинство ЦСП с фиксированной точкой обрабатывают данные с разрядностью 16 бит, процессоры с плавающей точкой -- 32 бита. Многие модели могут обрабатывать данные с двойной точностью.

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

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

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

- Количество выполняемых операций за единицу времени (MIPS). Данный параметр учитывает одновременную обработку нескольких команд и наличие параллельных вычислительных модулей, поэтому достаточно хорошо может указывать на быстродействие ЦСП. Некоторой проблемой здесь остаётся то, что понятие «операции» чётко не формализовано.

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

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

2. Микроконтроллеры

Micro Controller Unit, MCU) -- микросхема, предназначенная для управления электронными устройствами. Типичный микроконтроллер сочетает на одном кристалле функции процессора и периферийных устройств, содержит ОЗУ и (или) ПЗУ. По сути, это однокристальный компьютер, способный выполнять относительно простые задачи.

2.1 МК типа МСS51

Intel 8051 -- это однокристальный микроконтроллер гарвардской архитектуры, который был впервые произведен Intel в 1980 году, для использования во встраиваемых системах. В течение 1980-х и начале 1990-х годов был чрезвычайно популярен, однако позже устарел и был вытеснен более современными устройствами, также с 8051-совместимыми ядрами, производимыми более чем 20 независимыми производителями, такими, как Atmel, Maxim IC (дочерняя компания Dallas Semiconductor), NXP, Winbond, Silicon Laboratories, Texas Instruments и Cypress Semiconductor). Официальное название 8051-семейства микроконтроллеров Intel -- MCS 51. Существует также советский клон данной микросхемы, КР1816ВЕ51.

Первые из 8051-семейства Intel производились с использованием n-МОП технологии, но следующие версии, содержащие символ «C» в названии, такие, как 80C51, использовали КМОП-технологию и потребляли меньшую мощность, чем n-МОП предшественники (это облегчало их применение для устройств с батарейным питанием

Особенности

- Состоит из процессорного ядра (CPU), ОЗУ, ПЗУ, последовательного порта, параллельного порта, логики управления прерываниями, таймера и т. д.

- Шина данных -- 8-битная шина данных. Возможность обработки 8 бит данных за одну операцию. Обуславливает название 8-битный микропроцессор

- Шина адреса -- 16-битная адресная шина. Возможность доступа к 216 адресам памяти, то есть 64 кБ адресное пространство в ОЗУ и ПЗУ

- Встроенное ОЗУ -- 128 байт (Памяти данных)

- Встроенное ПЗУ -- 4 КБ (Памяти программ)

- Четыре порта ввода-вывода: один двунаправленный и три квазидвунаправленных

- Последовательный интерфейс UART (Универсальный асинхронный приёмопередатчик)

- Два 16-битных таймера

- Два уровня приоритета прерываний

- Порядка 60 тысяч транзисторов на кристалле площадью 5,85 ммІ

- Энергосберегающий режим

Общей особенностью в современных 8051-совместимых микроконтроллерах стало встраивание улучшенных и дополнительных схем, таких, как: автоматический сброс по падению питающего напряжения; встроенные тактовые генераторы; внутрисхемное программирование памяти программ; автозагрузчики долговременной памяти данных на основе EEPROM; IІC; SPI (стандарт 3-проводной последовательной шины); USB хост-интерфейс; ШИМ-генераторы; аналоговых компараторов; АЦП и ЦАП преобразователей; часов реального времени; дополнительных таймеров и счетчиков; внутрисхемных отладчиков, дополнительных источников прерываний; расширенных энергосберегающих режимов.

8051-совместимые микроконтроллеры обычно имеют один или два УАПП (UART), два или три таймера, 128 или 256 байт встроенной ОЗУ (16 байт которой имеют побитовую адресацию), от 512 байт до 128 Кбайт встроенной памяти программ (ПЗУ), и иногда встречается использование EEPROM, адресуемой через «регистры специального назначения» (SFR = special function register). УАПП/UART может быть настроен для использования в режиме 9-бит данных, что делает возможным адресную приёмопередачу в многоточечном подключении на основе RS-485 аппаратного протокола.

Один машинный цикл оригинального 8051-ядра занимает 12 временных тактов, а большинство инструкций выполняется за один или два машинных цикла. При частоте тактового генератора, равной 12 МГц, 8051-ядро может выполнять 1 миллион операций в секунду, выполняемых за один цикл, или 500 тысяч операций в секунду, выполняемых за два цикла. Улучшенное 8051-совместимое ядро, которое в настоящее время распространено, выполняет машинный цикл за шесть, четыре, два, или даже за один временной такт, и позволяет использовать тактовые генераторы с частотой до 100 МГц, что позволило увеличить количество выполняемых операций в секунду.

Еще более быстрые 8051-ядра, с 1 тактом на машинный цикл, организуются с использованием ПЛИС, таких, как FPGA (скорость в диапазоне 130--150 МГц) или ASIC (скорость в диапазоне нескольких сотен МГц), при помощи специальной прошивки. Все 8051-совместимые устройства, производимые SILabs, некоторые из производимых Dallas и немногие из производимых Atmel имеют ядро с 1 тактом на машинный цикл.

Чрезвычайно полезной особенностью 8051-ядра является обработка булевых данных, что позволило ввести бинарную логику, оперирующую напрямую с битами внутренней ОЗУ (области из 128 прямо-адресуемых битов) и регистров. Данная особенность была востребована в приложениях промышленной автоматики. Еще одна ценная особенность состояла в 4 независимых наборах регистров, которые значительно уменьшали задержки при обработке прерываний, в сравнении с классическим использованием стека, применявшимся ранее.

Программирование.

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

Для программирования 8051 используются и другие языки высокого уровня: Форт, Бейсик, Паскаль, PL/M и Modula-2, однако они не получили такого широкого распространения, как Си и ассемблер.

2.2 МК типа ARM

Архитектура ARM (Advanced RISC Machine, Acorn RISC Machine, усовершенствованная RISC-машина) -- семейство лицензируемых 32-битных и 64-битных микропроцессорных ядер разработки компании ARM Limited.

Среди лицензиатов: AMD, Apple, Analog Devices, Atmel, Xilinx, Altera, Cirrus Logic (англ.), Intel (до 27 июня 2006 года), Marvell (англ.), NXP, STMicroelectronics, Samsung, LG, MediaTek, MStar, Qualcomm, Sony, Texas Instruments, nVidia, Freescale, Миландр, HiSilicon.

Многие лицензиаты делают собственные версии ядер на базе ARM: DEC StrongARM, Freescale i.MX, Intel XScale, NVIDIA Tegra, ST-Ericsson Nomadik, Krait в Qualcomm Snapdragon, Texas Instruments OMAP, Samsung Hummingbird, LG H13, Apple A6 и HiSilicon K3.

В 2007 году около 98 % из более чем миллиарда мобильных телефонов, продаваемых ежегодно, были оснащены, по крайней мере, одним процессором ARM. По состоянию на 2009 на процессоры ARM приходилось до 90 % всех встроенных 32-разрядных процессоров. Процессоры ARM широко используются в потребительской электронике -- в том числе КПК, мобильных телефонах, цифровых носителях и плеерах, портативных игровых консолях, калькуляторах и компьютерных периферийных устройствах, таких, как жесткие диски или маршрутизаторы.

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

Процессоры ARM.

В настоящее время значимыми являются несколько семейств процессоров ARM:

- ARM7 (с тактовой частотой до 60-72 МГц), предназначенные, например, для недорогих мобильных телефонов и встраиваемых решений средней производительности. В настоящее время активно вытесняется новым семейством Cortex.

- ARM9 (англ.)русск., ARM11 (с частотами до 1 ГГц) для более мощных телефонов, карманных компьютеров и встраиваемых решений высокой производительности.

- Cortex A -- новое семейство процессоров на смену ARM9 и ARM11.

- Cortex M -- новое семейство процессоров на смену ARM7, также призванное занять новую для ARM нишу встраиваемых решений низкой производительности. В семействе присутствуют четыре значимых ядра: Cortex M0, Cortex M3, Cortex M4 и Cortex-M7.

В 2010 году производитель анонсировал процессоры Cortex-A15 под кодовым названием Eagle, ARM утверждает, что ядро Cortex A15 на 40 процентов производительнее на той же частоте, чем ядро Cortex-A9 при одинаковом числе ядер на чипе. Изделие, изготовленное по 28-нанометровому техпроцессу, имеет 4 ядра, может функционировать на частоте до 2,5 ГГц и будет поддерживаться многими современными операционными системами.

Популярное семейство микропроцессоров xScale фирмы Marvell (до 27 июня 2007 года -- Intel), в действительности является расширением архитектуры ARM9, дополненной набором инструкций Wireless MMX, специально разработанных фирмой Intel для поддержки мультимедийных приложений.

Архитектура.

Уже давно существует справочное руководство по архитектуре ARM, которое разграничивает все типы интерфейсов, которые поддерживает ARM, так как детали реализации каждого типа процессора могут отличаться. Архитектура развивалась с течением времени, и начиная с ARMv7 были определены 3 профиля:

- `A'(application) -- для устройств, требующих высокой производительности (смартфоны, планшеты)

- `R'(real time) -- для приложений, работающих в реальном времени,

- 'M'(microcontroller) -- для микроконтроллеров и недорогих встраиваемых устройств.

Профили могут поддерживать меньшее количество команд (команды определенного типа).

Процессор может находиться в одном из следующих операционных режимов:

- User mode -- обычный режим выполнения программ. В этом режиме выполняется большинство программ.

- Fast Interrupt (FIQ) -- режим быстрого прерывания (меньшее время срабатывания).

- Interrupt (IRQ) -- основной режим прерывания.

- System mode -- защищённый режим для использования операционной системой.

- Abort mode -- режим, в который процессор переходит при возникновении ошибки доступа к памяти (доступ к данным или к инструкции на этапе prefetch конвейера).

- Supervisor mode -- привилегированный пользовательский режим.

- Undefined mode -- режим, в который процессор входит при попытке выполнить неизвестную ему инструкцию.

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

Функции RISC.

- Архитектура загрузки/хранения

- Нет поддержки нелинейного (не выровненного по словам) доступа к памяти (теперь поддерживается в процессорах ARMv6, за некоторыми исключениями, и полностью в ARMv7)

- Равномерный 16х32-битный регистровый файл

- Фиксированная длина команд (32 бит) для упрощения декодирования за счет снижения плотности кода. Позднее режим Thumb повысил плотность кода.

- Одноцикловое исполнение.

2.3 МК типа AVR

AVR -- семейство восьмибитных микроконтроллеров фирмы Atmel. Год разработки -- 1996.

Идея разработки нового RISC-ядра принадлежит двум студентам Norwegian University of Science and Technology (NTNU) из норвежского города Тронхейма -- Альфу Богену (Alf-Egil Bogen) и Вегарду Воллену (Vegard Wollen). В 1995 году Боген и Воллен решили предложить американской корпорации Atmel, которая была известна своими чипами с Flash-памятью, выпускать новый 8-битный RISC-микроконтроллер и снабдить его Flash-памятью для программ на одном кристалле с вычислительным ядром.

Идея была одобрена Atmel Corp., и было принято решение незамедлительно инвестировать в данную разработку. В конце 1996 года был выпущен опытный микроконтроллер AT90S1200, а во второй половине 1997 г. корпорация Atmel приступила к серийному производству нового семейства микроконтроллеров, к их рекламной и технической поддержке.

Новое ядро было запатентовано и получило название AVR. Существует несколько трактовок данной аббревиатуры. Кто-то утверждает, что это Advanced Virtual RISC, другие полагают, что не обошлось здесь без Alf Egil Bogen Vegard Wollan RISC.

Описание архитектуры.

Микроконтроллеры AVR имеют гарвардскую архитектуру (программа и данные находятся в разных адресных пространствах) и систему команд, близкую к идеологии RISC. Процессор AVR имеет 32 8-битных регистра общего назначения, объединённых в регистровый файл. В отличие от «идеального» RISC, регистры не абсолютно ортогональны:

Некоторые команды работают только с регистрами r16…r31. К ним относятся команды, работающие с непосредственным операндом: ANDI/CBR, ORI/SBR, CPI, LDI, LDS (16-бит), STS (16-бит), SUBI, SBCI, а также SER и MULS;

Команды, увеличивающие и уменьшающие 16-битное значение (в тех моделях, где они доступны) с непосредственным операндом (ADIW, SBIW), работают только с одной из пар r25:r24, r27:r26 (X), r29:r28 (Y), или r31:r30 (Z);

Команда копирования пары регистров (в тех моделях, где доступна) работает только с соседними регистрами, начинающимися с нечётного (r1:r0, r3:r2, …, r31:r30);

Результат умножения (в тех моделях, в которых есть модуль умножения) всегда помещается в r1:r0. Также только эта пара используется в качестве операндов для команды самопрограммирования (где доступна);

Некоторые варианты команд умножения принимают в качестве аргументов только регистры из диапазона r16…r23 (FMUL, FMULS, FMULSU, MULSU).

Система команд.

Система команд микроконтроллеров AVR весьма развита и насчитывает в различных моделях от 90 до 133 различных инструкций.

- Большинство команд занимает только 1 ячейку памяти (16 бит).

- Большинство команд выполняется за 1 такт.

Всё множество команд микроконтроллеров AVR можно разбить на несколько групп:

- команды логических операций;

- команды арифметических операций и команды сдвига;

- команды операции с битами;

- команды пересылки данных;

- команды передачи управления;

- команды управления системой.

Управление периферийными устройствами осуществляется через адресное пространство данных. Для удобства существуют «сокращённые команды» IN/OUT.

2.4 МК типа PIC

PIC -- микроконтроллеры Гарвардской архитектуры, производимые американской компанией Microchip Technology Inc. Название PIC является сокращением от Peripheral Interface Controller, что означает «контроллер интерфейса периферии». Название объясняется тем, что изначально PIC предназначались для расширения возможностей ввода-вывода 16-битных микропроцессоров CP1600.

В номенклатуре Microchip Technology Inc. представлен широкий спектр 8-, 16- и 32-битных микроконтроллеров и цифровых сигнальных контроллеров под маркой PIC. Отличительной особенностью PIC-контроллеров является хорошая преемственность различных семейств. Это и программная совместимость (единая бесплатная среда разработки MPLAB IDE), и совместимость по выводам, по периферии, по напряжениям питания, по средствам разработки, по библиотекам и стекам наиболее популярных коммуникационных протоколов. Номенклатура насчитывает более 500 различных контроллеров со всевозможными вариациями периферии, памяти, количеством выводов, производительностью, диапазонами питания и температуры и т. д.

8-битные микроконтроллеры.

8-битные микроконтроллеры имеют модифицированную гарвардскую архитектуру и делятся на 2 больших семейства: PIC10/12/16 и PIC18.

8-битные микроконтроллеры PIC10/12/16 представлены двумя базовыми архитектурами ядра: BASELINE и MID-RANGE.

Архитектура базового (BASELINE) семейства.

Базовая архитектура (BASELINE) состоит из контроллеров семейства PIC10 и части контроллеров семейств PIC12 и PIC16. Основываются они на 12-разрядной архитектуре слова программ и представлены контроллерами в корпусах от 6 до 28-и выводов. Упрощенная архитектура базового семейства предоставляет наиболее дешевое решение из предлагаемых Microchip. Широкий диапазон напряжений питания, возможность работы при низких напряжениях преследует целью возможность применения микроконтроллеров в батарейных устройствах.

- маловыводные и миниатюрные корпуса

- Flash-память программ

- низкое потребление тока

- низкая цена

- легкое освоение, всего 35 команд

Архитектура среднего (MID-RANGE) семейства.

Архитектура среднего семейства (Mid-Range) нашла применение в микроконтроллерах серий PIC12 и PIC16, и имеет ширину слова памяти программ 14 бит. Эти микроконтроллеры выпускаются в корпусах от 8 до 64 выводов. Микроконтроллеры с Flash памятью работают в диапазоне напряжений питания от 2.0 до 5.5В, имеют систему прерываний, аппаратный стек и энергонезависимую память данных EEPROM, а также богатый набор периферии, такой, как USB, SPI, IІC, USART, LCD, компараторы, АЦП и т. п.

- различные корпуса: 6--64 выводов

- Flash-память программ

- малый ток потребления

- богатая периферия

- производительность 5 MIPS

- легкое освоение, всего 35 команд

Расширенное ядро микроконтроллеров среднего семейства.

В более новых микроконтроллерах Microchip применяет улучшенную архитектуру 8-битных PIC микроконтроллеров среднего семейства PIC12 и PIC16:

- увеличенный объём памяти программ и данных

- более глубокий и улучшенный аппаратный стек

- дополнительные источники сброса

- расширенная периферия, периферия включает модуль mTouch ™ для создания сенсорных -пользовательских интерфейсов

- уменьшенное время входа в прерывание

- производительность увеличена на 50 %, а размер кода снижен на 40 %

- 14 дополнительных инструкций, оптимизированных под С-компилятор -- итого 49 инструкций

8-битные микроконтроллеры PIC18.

Высокопроизводительное семейство 8-битных микроконтроллеров PIC18F представлено широкой гаммой микроконтроллеров, включающих большой набор периферийных модулей:

- 10бит АЦП, компараторы, ШИМ, захват/сравнение, драйвер ЖКИ; интерфейсы связи USB, CAN, IІC, SPI, USART, Ethernet и т. д.

- быстродействия до 16 MIPS

- объём памяти программ до 128 кБ

- корпуса от 18 до 100 выводов.

- эффективное кодирование на C

- NanoWatt технологии

- встроенный программируемый генератор

- „трёхвольтовое“ и „пятивольтовое“ семейства

- продвинутая архитектура (16-разрядные слова программ)

- гибкость самопрограммирования

- поддержка широко распространенных протоколов связи (CAN, USB, ZigBee, TCP/IP)

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

3. Проектирование микропроцессорной системы на базе PIC16F913

3.1 Основные сведения о PIC16F913

Производитель -MICROCHIP TECHNOLOGY

Тип микросхемы -микроконтроллер PIC

Объем памяти EEPROM -256Б

Объем памяти SRAM -256Б

Частота макс. -20МГц

Рабочее напряжение -2...5.5В

Монтаж -THT

Корпус -DIP28

Кол-во входов/выходов -25

Кол-во таймеров 8 бит -2

Кол-во таймеров 16 бит -1

Вид архитектуры -Harvard 8бит

Память программы -7кБ

Встроенный генератор -32кГц, 8МГц

Интерфейс:

A/E/USART

LIN

SSP

Дополнительная информация

Масса брутто: 4.2 g

Групповая упаковка: 15 pcs

Рис. 3.1.1. Цоколевка PIC16F913

Рис. 3.1.2. Блок - схема PIC16F913.

3.2 Принципиальная схема МПС

Рис. 3.2.1. Принципиальная схема МПС для управления освещением.

Принцип работы схемы такой: вначале проверяется состояние кнопки принудительного включения. Если она включена, то реле включается. Иначе идет проверка ИК датчика. Когда в комнате присутствует человек то срабатывает ИК-датчик, который посылает сигнал на усилитель. Сигнал обрабатывается МК и идет проверка фотодиода. Если фотодиод освещен, то его сигнал усиливается до уровня логической единицы (пороговое напряжение 2,7В) и подается на порт МК. На выходе МК устанавливается логический 0 и реле выключено. Стоит же ослабиться освещению, как на входе МК установится логический ноль и на выходе МК установится 1, т.е. реле включится. При включении реле включается лампа. Эти действия повторяются циклически.

ИК-датчик размещается под потолком с использованием линзы Френеля, которая увеличивает «обзор» датчика.

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

Также присутствует кнопка отключения реле, она не связана с МК и выключает реле напрямую, вне зависимости от состояния на выходе МК.

3.3 Выбор датчиков

В качестве ИК-датчика выберем RE 200B.

Рис. 3.3.1. Типовое включение датчика.

Выберем фотодиод QSD2030F.

, то есть он воспринимает видимый дневной свет

)

3.4 Расчет основных элементов МПС

Рассчитаем сначала усилитель для ИК-датчика. Так как напряжение на нем отрицательное, то используем инвертирующий усилитель на ОУ.

Коэффициент усиления такого усилителя:

Необходимый нам коэффициент усиления найдем:

Зададимся

Тогда определим по формуле:

Теперь рассчитаем усилитель для фотодиода. При некоторой малой освещенности (сумерки) он должен будет подавать сигнал, который усиливаясь не будет равен уровню логической 1 (< 2.7 В).

При освещенности напряжение на фотодиоде будет порядка 200 мВ.

Тут используем неинвертирующий усилитель.

Коэффициент усиления такого усилителя:

Необходимый нам коэффициент усиления найдем:

Зададимся

Тогда определим по формуле:

На основе этих данных выберем 2 ОУ AD743.

3.5 Составление алгоритма работы схемы и программы для МК

Алгоритм работы схемы будет выглядеть следующим образом:

Рис. 3.5.1. Алгоритм работы схемы.

Согласно этому алгоритму составим программу:

LISTp=16f913 ; PIC16f913

#include 'P16f913.INC'

org 0; начало памяти

setportsbsf STATUS,RP0; инициализация портов

movlw 0xFF

movwf TRISB; порт В для ввода информации

movlw 0x0

movwf TRISC; порт С для включения реле

bcf STATUS,RP0

clrw

movwf PORTB

movwf PORTC; сброс портов

cycle bsf STATUS,RP0; начало цикла, выбираем банк 1

movlw 0x7

movwf PORTB; порт В для ввода с первых 3х каналов

bcf STATUS,RP0; банк 0

startbcf STATUS,RP0; проверка параметров, выбираем банк 0

btfsc PORTB,0; если кнопка включена то включить реле

goto on

btfss PORTB,1; иначе проверка ИКД, если есть сигнал, то проверить ФД

goto off; иначе установить 0 на выходе порта С

btfsc PORTB,2; если ФД освещен установить 0 на выходе порта С

goto off

goto on; иначе включить реле

offbcf PORTC,0; выключение реле

bsf STATUS,RP0

clrf PORTB; сброс порта для корректной работы

bcf STATUS,RP0

goto cycle; организуем бесконечный цикл

onbsf PORTC,0; включение реле

bsf STATUS,RP0

clrf PORTB; сброс порта для корректной работы

bcf STATUS,RP0

goto cycle; организуем бесконечный цикл

end

3.6. Сборка МПС в программе Proteus и получение результата

Рис. 3.6.1. Симуляция работы схемы при присутствии человека и темное время суток.

Здесь надо уточнить, что программа Proteus не поддерживает симуляцию ИК-датчиков и фотодиодов, так что придется имитировать их источниками напряжения.

Рис. 3.6.2. Симуляция схемы при присутствии человека в светлое время суток.

Рис. 3.6.3. Симуляция схемы при нажатии кнопки принудительного включения в светлое время суток.

Список использованной литературы

1) https://ru.wikipedia.org/wiki/История_персональных_компьютеров

2) С.Т. Усатенко, Т.К. Каченюк, М.В. Терехова. Выполнение электрических схем по ЕСКД.

Москва - «Издательство стандартов» - 1992г.

3) http://mysku.ru/blog/aliexpress/34596.html

4) В.С. Яценков. Микроконтроллеры MicroChip. Практическое руководство. Москва - 2002г.

5) http://www.yaklass.ru/materiali?chtid=459&mode=cht

6) http://online-studies.ru/universalnye-mikroprocessory-i-ix-osnovnye-xarakteristiki/

7) https://ru.wikipedia.org/wiki/Цифровой_сигнальный_процессор

8) https://en.wikipedia.org/wiki/PIC_microcontroller

Приложение

Компоновка печатной платы МПС.

Рис.4.2.1. Компоновка ПП.

Рис. 4.2.2. Вид с обратной стороны.

Рис. 4.2.3. Вид сверху.

Поз. обознач.

Наименование

Кол

Примечание

R1

47 кОм ±5%, 125 мВт

1

R2

10 кОм ±5%, 125 мВт

1

R3

261 кОм ±2%, 125 мВт

1

R4

10 кОм ±5%, 125 мВт

1

R5

12 кОм ±5%, 125 мВт

1

U1,U2

AD743

2

U3

PIC16F913

1

VD1

QSD2030F

1

VS1

RE 200B

1

RL1

D4D12

1

3,5 VDC

микропроцессор освещение микроконтроллер датчик

Заключение

В данной курсовой работе я спроектировал МПС для управления освещением в помещении. Оно подходит для подъездов и подсобных помещений, хотя может и применяться и для жилых комнат.

В ходе работы был также составлен алгоритм и на его основе программа микроконтроллера.

В заключении могу написать, что микроконтроллеры PIC являются простыми в освоении, так как не имеют большого количества команд.

Являясь универсальными устройствами управления микропроцессоры находят все более широкое применение.

ref.by 2006—2019
contextus@mail.ru