Главная » Просмотр файлов » пояснительная записка

пояснительная записка (1231539), страница 7

Файл №1231539 пояснительная записка (Разработка универсального микропроцессорного устройства управления и контроля приборов и устройств ЖАТ) 7 страницапояснительная записка (1231539) страница 72020-10-06СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 7)

ENDP - число 0..15 -адрес конечной точки с которой будет работать хост в текущей транзакции;

CRC5 - контрольная сумма полей ADDR,ENDP

-вычисляется без учёта дополнительных синхробитов Stuffed Bit полученных в результате битстаффинга;

-вычисляется побитовой сверткой данных с полиномом 0x25(100101).

Пакеты типа IN, OUT, SETUP являются заголовками многопакетной транзакции с обменом данными. Они содержат поля адреса устройства для транзакции и номера Endpoint, с которым будет обмен. Целостность пакетов удостоверяет поле CRC5.

Data Packets (DP) - пакет данных.

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

DATA - данные для обмена между хостом и конечной точкой в байтах. Число байт данных называют полезной нагрузкой пакета (Payload);

CRC16 - контрольная сумма поля DATA:

-вычисляется без учёта дополнительных синхробитов Stuffed Bit полученных в результате битстаффинга;

-вычисляется побитовой сверткой данных с полиномом 0x18005(11000000000000101).

Пакеты типа DATA содержат поле данных и поле контроля целостности данных CRC16. Стандарт ограничивает максимальную разрешенную длину данных: 8 байт для несконфигурированных устройств, 64 байта для устройств Low Speed, 1023 байта для устройств Full Speed и 1024 байта для устройств High Speed. Устройство может установить свою максимальную длину данных, меньшую разрешенной. Хост обязан поддерживать максимальную разрешенную длину данных.

Start of Frame Packets (SOF) - пакет определяющий начала кадра.

Этот пакет посылается хостом каждую миллисекунду(1000Гц) и обозначает начало нового кадра.

Этот пакет могут принимать все устройства сети, он без адресный.

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

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

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

Рис.12 Структура пакета начала кадра.

Frame Number - число 0..2047 -номер кадра(количество миллисекунд). Этот счетчик имеет полный цикл в 2.048 сек;

CRC5 - контрольная сумма полей ADDR,ENDP

-вычисляется без учёта дополнительных синхробитов Stuffed Bit полученных в результате битстаффинга;

-вычисляется побитовой сверткой данных с полиномом 0x25(100101).

Пакет SOF не получается низко скоростными устройствами.

Handshake Packets (HP) -пакет квитирования.

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

Пакеты типа ACK, NACK, STALL не содержат никаких дополнительных полей.

Preambule Packets (HP) - преамбула низкоскоростного пакета.

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

После получения сигнала EOP в конце низкоскоростного пакета, хаб должен вернуться на полную скорость

2.7.6 Адрес

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

2.7.7 Endpoint

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

Поле endpoint - четырёхбитное, это позволяет организовать до 16 endpoint, Каждый endpoint может независимо работать как приемный и как передающий, поэтому иногда их насчитывают 32. Поле endpoint содержится только в TP пакетах.

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

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

2.7.8 Запросы устройства (Device Requests)

Спецификацией USB определены некоторые запросы, который хост отправляет устройству и в ответ на которые хост получает некие свойства устройства, называемые дескрипторами.

С помощью запросов выполняются основные операции над устройствами определенные спецификацией:

  • Dynamic Attachment and Removal(Динамическое присоединение и удаление устройств);

  • Address Assignment(Назначение адреса устройству);

  • Configuration(Конфигурация устройства);

  • Data Transfer(Передача данных);

  • Power Management(Управление питанием):

  1. Power Budgeting(Планирование мощности потребления);

  2. Remote Wakeup(Пробуждение устройства по команде хоста);

  • Request Processing(Выполнение запросов):

  1. Request Processing Timing(Контроль времени обработки запросов);

  2. Reset/Resume Recovery Time(Возобновление работы по сигналам Reset/Resume);

  3. Set Address Processing(Установка адреса устройства);

  4. Standard Device Requests(Стандартные запросы устройства);

  5. Class-specific Requests(Специфичные запросы класса устройств);

  • Request Error(Запрос об ошибке).

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

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

Длина пакета DATA0 всегда равна 8 байт (в транзакции SETUP)

Все биты байта передаются последовательно, начиная с нулевого.

2.7.9 Дескрипторы устройств

Дескриптор - это определённая структура данных, которую устройство использует для сообщения хосту своих атрибутов.

Стандартом USB определены следующие дескрипторы:

  • дескриптор устройства (Device Descriptor) - описывает общую информацию устройства USB, применяется глобально и во всех конфигурациях. USB устройство имеет только один такой дескриптор;

  • дескриптор конфигурации (Configuration Descriptor) - описывает информацию о конфигурации устройства. Устройство может иметь несколько различных конфигураций, а следовательно и несколько таких дескрипторов;

  • дескриптор интерфейса (Interface Descriptor) - описывает набор конечных точек, включенных в интерфейс для заданной конфигурации. Нулевая конечная точка никогда не включается этот набор;

  • дескриптор конечной точки (Endpoint Descriptor) - этот дескриптор содержит требуемую хостом информацию, для определения требований по пропускной способности каждой конечной точки. Нулевая точка не имеет дескриптора;

  • дескриптор строки (String Descriptor) - описывают характеристики устройства текстовыми строками, удобными для человека. Устройство может их не поддерживать или не иметь вовсе. Требуемый язык дескриптора определяется запрсчиком при его запросе, используя ID (LANGID) определенный Microsoft Windows UNICODE.

Дескриптор конечной точки и интерфейса всегда возвращаются как часть дескриптора конфигурации.

К ним нельзя непосредственно обращаться запросом Get или Set Descriptor.

2.8 Контроллер AVR-USB-MEGA16

Большинство производителей современных ПК отказываются от параллельного порта в пользу последовательного USB порта, не говоря уже о laptop PC, в которых остаются лишь USB, HDMI, VGA и LAN. Поэтому целесообразно разрабатывать устройства, поддерживающие USB интерфейс. Один из вариантов USB контроллера является такой, выполненный на микроконтроллере AT Mega16.

Компания Objective Development [8] в свободном доступе (но есть и платные коммерческий лицензии стоимостью до 500$) распространяет библиотеку V-USB, которая помогает программно реализовать USB протокол low-speed USB устройства на базе AVR микроконтроллера, не используя дополнительных внешних чипов.

Особенности V-USB:

  • полноценное USB 1.1 low-speed устройство, кроме обработки ошибок связи и электрических характеристик;

  • передача до 254 байт информации по умолчанию;

  • поставляется со свободно используемых идентификаторов USB (пара Vendor-ID и Product-ID);

  • работает на любом AVR микроконтроллере с минимум 2 килобайт Flash памяти, 128 байт RAM и тактовой частотой не меньше 12 МГц;

  • может тактироваться 12 МГц, 15 МГц, 16 МГц, 18 МГц или 20 МГц внешним кварцевым резонатором, или 12,8 МГц или 16,5 МГц внутренним RC осциллятором;

  • имеет хорошо прокомментированные примеры на языке C;

  • из аппаратных ресурсов микроконтроллера для реализации протокола USB используется только прерывание INT0;

  • занимает до 1400 байт Flash памяти контроллера.

Библтотека V-USB предназначена для создания прошивок микроконтроллеров, поддерживающих программно реализованный протокол USB, но для общения с таким контроллером с ОС понадобится так называемое ПО хоста. В его создании для упрощения работы программиста помогает другая библиотека libusb-win32 версия 1.2.5.0. Есть и более новые версии, но и этой, для создания ПО хоста AVR-USB-MEGA16 контроллера вполне достаточно. Так же эта библиотека существует для пользователей MAC OS и Linux.

Аппаратная часть USB-контроллера представлена на листе 4 графического материала.

Конденсатор C1 ёмкостью 22 мкФ предназначен для сглаживания высокочастотных помех в линии питания USB хоста и расположен между шиной +5 В и землёй. Параллельно ему расположен ещё один конденсатор C6 номиналом 0,22 мкФ, его предназначение схоже с C1, но уже для низкочастотных помех, на плате его стараются располагать как можно ближе ножкам питания контроллера.

Так как на дифференциальной линии D+, D- протоколом USB требуется напряжение не выше +3,6 В, а на выходе контроллера мы получаем все +5 В, стоят два стабилитрона VD1 и VD2.

Для распознавания системой низкоскоростного USB устройство протоколом USB принято устанавливать подтяжку на питание через резистор 1,5 кОм дифференциальной линии D-, роль которого на данной схеме выполняет резистор R4. Резисторы R2, R3 номиналом по 68 Ом являются согласующими. R5 и R6 имеет такие же номиналы, как и R2, R3, но установлены в RC контур цепи опорного напряжения AVR-микроконтроллера для правильной работы каналов Аналогово-Цифрового Преобразователя (АЦП), находящегося в составе архитектуры самого контроллера, в паре с конденсаторами C4, C5, номиналом 0,22 мкФ.

Через резистор R7, номиналом 10 кОм, подаётся уровень логической единицы на вход RESET микроконтроллера.

Для тактирования предназначен внешний осциллятор на базе кварцевого резонатора G1, частотой 16 МГц и двух конденсаторов C2, C3 ёмкостью по 22 пкФ.

Все порты микроконтроллера ATmega16 могут работать не только на ввод/вывод информации. Они также могут нести дополнительные функции, привязанные к внутренней архитектуре ядра AVR. Стоит отметить, что PB5..PB7 – используются для реализации SPI протокола, PC3..PC5 – для JTAG (Joint Test Action Group) отладчика, PD2,PD4 – для данных интерфейса USB. В таблице 2.5 представлено краткое описание этих функций [9].

Таблица 2.5 – Дополнительные функции контроллера AVR MEGA 16

Имя порта

Описание возможностей

PA0

ADC0 - эта ножка может работать как входной канал 0 АЦП. Каналы ADC1..ADC7 несут аналогичную функцию

PA1

ADC1 - входной канал 1 АЦП

PA2

ADC2 - входной канал 2 АЦП

PA3

ADC3 - входной канал 3 АЦП

PA4

ADC4 - входной канал 4 АЦП

PA5

ADC5 - входной канал 5 АЦП

PA6

ADC6 - входной канал 6 АЦП

PA7

ADC7 - входной канал 7 АЦП





Продолжение таблицы 2.5

Имя порта

Описание возможностей

PB1

T1 - эта ножка может работать как тактовый вход для таймера/счетчика 1 (Timer/Counter1 External Counter Input) для измерения и подсчета импульсов

PB2

AIN0, INT2. Эта ножка может выполнять две дополнительные функции. AIN0 - положительный вход аналогового компаратора (Analog Comparator Positive Input). INT2 - вход для внешнего прерывания 2 (External Interrupt 2 Input)

PB3

AIN1, OC0. Эта ножка может выполнять две дополнительные функции. AIN0 - отрицательный вход аналогового компаратора (Analog Comparator Negative Input). OC0 - выход сигнала события совпадения таймера/счетчика 0 (Timer/Counter0 Output Compare Match Output)

PB4

SS, этот вывод может работать как аппаратная выборка внешних подчиненных устройств, подключенных к интерфейсу SPI (SPI Slave Select Input)

PC0

SCL, это сигнал тактов для внешнего подчиненного устройства шины I2C/TWI (Two-wire Serial Bus Clock Line)

PC1

SDA, это двунаправленный сигнал данных для внешнего подчиненного устройства шины I2C/TWI(Two-wire Serial Bus Data Input/Output Line)

PC6

TOSC1, вход для подключения резонатора для дополнительного генератора (Timer Oscillator Pin 1). Если ножка используется в режиме TOSC1, то этот вывод работает как вход внутреннего инвертирующего усилителя (сюда подключают кварцевый или керамический резонатор)

PC7

TOSC2, выход для подключения резонатора для дополнительного генератора (Timer Oscillator Pin 2). Если ножка используется в режиме TOSC2, то этот вывод работает как выход внутреннего усилителя (сюда подключают кварцевый или керамический резонатор)

PD0

RXD, вход последовательного порта UART (USART Input Pin). Обычно используется как порт ввода данных от внешних устройств, или для отладки

PD1

TXD, выход последовательного порта UART (USART Output Pin). Обычно используется для отладки, или как как порт вывода данных для внешних устройств

PD3

INT1 - вход для внешнего прерывания 1 (External Interrupt 1 Input)

PD5

OC1A - сигнал события совпадения A таймера 1 (Timer/Counter1 Output Compare A Match Output)

PD6

ICP1, вход для захвата внешних импульсов (Timer/Counter1 Input Capture Pin). Может использоваться для измерения длительностей сигнала с помощью таймера 1

PD7

OC2 - сигнал события совпадения таймера 2 (Timer/Counter2 Output Compare Match Output)

PB0

T0, XCK. К этой ножке на макетной плате подключен светодиод. Ножка могла бы использоваться как T0 - вход тактового сигнала для таймера 0 (Timer/Counter0 External Counter Input), или как XCK - вход тактов для порта USART (USART External Clock Input/Output)

2.9 SPI интерфейс

В составе AVR микроконтроллеров имеется модуль последовательного периферийного интерфейса или модуль SPI (serial peripheral interface). Относительно нашего контроллера такой расшит на штурьевую колодку XP5, и используется для загрузки ПО в память микроконтроллера.

Характеристики

Список файлов ВКР

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6551
Авторов
на СтудИзбе
299
Средний доход
с одного платного файла
Обучение Подробнее