F60-67 (1041605), страница 45

Файл №1041605 F60-67 (Раздаточные материалы) 45 страницаF60-67 (1041605) страница 452017-12-26СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

1.2244C8051F060/1/2/3/4/5/6/720.4.3. Регистр данныхРегистр данных модуля SMBus0 SMB0DAT содержит байт последовательных данных, которыйнеобходимо передать, или байт последовательных данных, который только что принят. Программа можетпрочитать из регистра или записать в регистр данные, когда флаг SI установлен в 1; программа не должнапытаться обратиться к регистру SMB0DAT, когда модуль SMBus включен и флаг SI сброшен в 0, т.к.

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

Таким образом, в случае потери арбитража переход отведущего передатчика к ведомому приемнику осуществляется с корректными данными в регистре SMB0DAT.Рисунок 20.10. SMB0DAT: Регистр данных модуля SMBus0R/WR/WR/WR/WR/WR/WR/WR/WЗначениепри сбросе:Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0SFR Адрес: 0xC2SFR страница: 000000000Бит 7Биты 7-0: SMB0DAT: Данные модуля SMBus0.Регистр SMB0DAT содержит байт данных, которые должны передаваться последовательномуинтерфейсу SMBus, или данные, только что принятые от последовательного интерфейса SMBus. Читать изэтого регистра или записывать в этот регистр можно всегда, когда флаг прерывания от последовательногопорта SI (SMB0CN.3) установлен в 1. Когда флаг SI не установлен в 1, система может находится в процессесдвига данных в регистр (или из регистра) SMB0DAT и обращаться к этому регистру нельзя.20.4.4. Регистр адресаРегистр адреса SMB0ADR содержит адрес ведомого для интерфейса SMBus0.

В ведомом режиме семьстарших значащих битов образуют 7-битный адрес ведомого. Младший значащий бит, бит 0, используется дляразрешения распознавания адреса общего вызова (0х00). Если бит 0 установлен в 1, адрес общего вызова будетраспознаваться. В противном случае, адрес общего вызова будет игнорироваться. Содержимое этого регистраигнорируется, если модуль SMBus0 работает в ведущем режиме.245Ред.

1.2C8051F060/1/2/3/4/5/6/7Рисунок 20.11. SMB0ADR: Регистр адреса модуля SMBusR/WSLV6R/WSLV5R/WSLV4R/WSLV3R/WSLV2R/WSLV1R/WSLV0R/WGCБит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000SFR Адрес: 0xC3SFR страница: 0Биты 7-1: SLV6-SLV0: Адрес ведомого SMBusЭти биты загружаются 7-разрядным адресом ведомого, на который будет отвечать модульSMBus при работе в качестве ведомого передатчика или ведомого приемника. SLV6 являетсястаршим значащим битом адреса и соответствует первому биту адресного байта,полученного по шине SMBus.Бит 0:GC: Разрешение адреса общего вызова.Этот бит используется для разрешения распознавания адреса общего вызова (0х00).0: Адрес общего вызова игнорируется.1: Адрес общего вызова распознается.20.4.5.

Регистр состоянияРегистр состояния SMB0STA содержит 8-битный код состояния, показывающий текущее состояниемодуля SMBus0. Существует 28 возможных состояний модуля SMBus, каждому из которых соответствуетуникальный код состояния. Пять старших значащих битов кода состояния могут иметь различные значения, атри младших значащих бита для корректных кодов состояния всегда равны нулю, когда SI = 1. Поэтому всевозможные коды состояния кратны восьми. Это позволяет применять в программе код состояния в качествеиндекса, используемого для перехода на соответствующую процедуру обслуживания (используя 8 байт кодадля обслуживания состояния или для перехода на более сложную процедуру обслуживания).Для нужд программы пользователя содержимое регистра SMB0STA определено только тогда, когдафлаг SI установлен в 1.

Программа никогда не должна записывать данные в регистр SMB0STA. Это приведет кнеопределенному результату. В табл.20.1 приведены все 28 состояний модуля SMBus вместе ссоответствующими им кодами.Ред. 1.2246C8051F060/1/2/3/4/5/6/7Рисунок 20.12. SMB0STA: Регистр состояния модуля SMBus0R/WSTA7R/WSTA6R/WSTA5R/WSTA4R/WSTA3R/WSTA2R/WSTA1R/WSTA0Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:11111000SFR Адрес: 0xC1SFR страница: 0Биты 7-3: STA7-STA3: Код состояния модуля SMBus0.Эти биты содержат код состояния модуля SMBus0.

Существует 28 возможных кодовсостояния. Каждый код состояния соответствует единственному состоянию модуля SMBus0.Корректный код состояния присутствует в регистре SMB0STA, когда флаг SI (SMB0CN.3)установлен в 1. Содержимое регистра SMB0STA не определено, когда флаг SI равен нулю.Запись в регистр SMB0STA в любое время даст неопределенный результат.Биты 2-0: STA2-STA0: Три младших значащих бита регистра SMB0STA всегда читаются как 0, когдафлаг SI установлен в 1247Ред. 1.2C8051F060/1/2/3/4/5/6/7Таблица 20.1.

Коды состояния модуля SMBusКодсостояния(SMB0STA)Режим0x00Все режимы0x080x10Ведущийпередатчик/приемникВедущийпередатчик/приемникСостояние модуля SMBusОшибка шины (т.е. некорректныйSTART, некорректный STOP, …)Передан бит START.Передан бит «повторный START».Передан адрес ведомого + W. ПолученACK.Передан адрес ведомого + W. ПолученNACK.0x18Ведущий передатчик0x20Ведущий передатчик0x28Ведущий передатчикПередан байт данных. Получен ACK.0x30Ведущий передатчикПередан байт данных. Получен NACK.0x38Ведущий передатчикПотерян арбитраж.0x40Ведущий приемникПередан адрес ведомого + R. ПолученACK.0x48Ведущий приемникПередан адрес ведомого + R.

ПолученNACK.0x50Ведущий приемникПолучен байт данных. Передан ACK.0x58Ведущий приемник0x60Ведомый приемник0x68Ведомый приемник0x70Ведомый приемник0x78Ведомый приемник0x80Ведомый приемник0x88Ведомый приемникПолучен байт данных. Передан NACK.Получен собственный адрес ведомого+ W. Передан ACK.При передаче в ведущем режимеадреса ведомого + R/W потерянарбитраж.Получен собственный адрес ведомого+ W.

Передан ACK.Получен адрес общего вызова (0x00).Передан ACK.При передаче в ведущем режимеадреса ведомого + R/W потерянарбитраж.Получен адрес общего вызова (0x00).Передан ACK.Получен собственный адрес ведомого+ W. Получен байт данных.Передан ACK.Получен собственный адрес ведомого+ W.

Получен байт данных.Передан NACK.Ред. 1.2Типичное действиеУстановка STO для сбросаSMBusЗагрузка SMB0DAT адресомведомого + R/W. Сброс STA.Загрузка SMB0DAT адресомведомого + R/W. Сброс STA.Загрузка SMB0DAT даннымидля передачиПовтор опроса подтверждения.Установка STO + STA.1) Загрузка SMB0DATследующим байтом, или2) Установка STO, или3) Сброс STO, а затемустановка STA для передачибита «повторный START»1) Повтор передачи, или2) Установка STOСохранение текущих данныхЕсли необходимо принятьтолько один байт, то сброс АА(передача NACK после приемабайта).

Ожиданиепринимаемых данныхПовтор опроса подтверждения.Установка STO + STA.Чтение SMB0DAT. Ожиданиеследующего байта. Еслиследующий байт являетсяпоследним, то сброс АА.Установка STO.Ожидание данных.Сохранить текущие данные дляповтора передачи, когда шинаосвободится.Ожидание данных.Ожидание данных.Сохранить текущие данные дляповтора передачи, когда шинаосвободится.Чтение SMB0DAT. Ожиданиеследующего байта или STOP.Установка STO для сбросаSMBus.248C8051F060/1/2/3/4/5/6/7Кодсостояния(SMB0STA)0x90РежимСостояние модуля SMBusВедомый приемник0x98Ведомый приемник0xA0Ведомый приемник0xA8Ведомый передатчик0xB0Ведомый передатчикПолучен адрес общего вызова (0x00).Получен байт данных.Передан ACK.Получен адрес общего вызова (0x00).Получен байт данных.Передан NACK.Получен бит STOP или «повторныйSTART», когда устройство адресуетсяв качестве ведомого.Получен собственный адрес ведомого+ R.

Передан ACK.При передаче в ведущем режимеадреса ведомого + R/W потерянарбитраж.Получен собственный адрес ведомого+ R. Передан ACK.0xB8Ведомый передатчикПередан байт данных. Получен ACK.0xC0Ведомый передатчик0xC8Ведомый передатчик0xD0Ведомыйпередатчик/приемник0xF8Все режимыПередан байт данных. Получен NACK.Передан последний байт данных(AA=0). Получен ACK.Истек таймаут высокого уровня налинии SCL, определяемый значениемрегистра SMB0CR (при FTE=1)Простой (ожидание)249Ред.

1.2Типичное действиеЧтение SMB0DAT. Ожиданиеследующего байта или STOP.Установка STO для сбросаSMBus.Никаких действий нетребуется.Загрузка SMB0DAT даннымидля передачи.Сохранить текущие данные дляповтора передачи, когда шинаосвободится.Загрузка SMB0DAT даннымидля передачи.Загрузка SMB0DAT даннымидля передачиОжидание бита STOP.Установка STO для сбросаSMBus.Установка STO для сбросаSMBus.Флаг SI не установлен.C8051F060/1/2/3/4/5/6/7ПРИМЕЧАНИЯРед. 1.2250C8051F060/1/2/3/4/5/6/721.

МОДУЛЬ SPI (SPI0)Модуль SPI0 обеспечивает доступ к гибкой полнодуплексной синхронной последовательной шине.SPI0 может выполнять функции ведущего или ведомого устройства в 3-х проводном или 4-х проводномрежимах, а также поддерживает работу нескольких ведомых и ведущих устройств на одной шине. Сигналвыбора ведомого (NSS) можно настроить как вход выбора SPI0 в ведомом режиме или как вход отключенияфункций ведущего при работе на шине с несколькими ведущими, что позволяет предотвратить конфликты нашине в том случае, если два или более ведущих попытаются передать данные одновременно. Кроме этого NSSможно настроить как выход выбора кристалла в ведущем режиме или отключить при работе в 3-х проводномрежиме.

Дополнительный порт ввода/вывода общего назначения можно использовать в ведущем режиме длявыбора нескольких ведомых устройств.Рисунок 21.1. Структурная схема модуля SPISYSCLKSPI0CKRSPI0CFGSPI0CNSCR7SCR6SCR5SCR4SCR3SCR2SCR1SCR0SPIBSYMSTENCKPHACKPOLSLVSELNSSINSRMTRXBMTSPIFWCOLMODFRXOVRNNSSMD1NSSMD0TXBMTSPIENSFR шинаСхема делителятактовой частотыСХЕМА УПРАВЛЕНИЯ МОДУЛЯ SPIУправлениевыводамиПередаваемыеданныеSPI0DATБуфер передаваемых данныхПринимаемыеСдвиговый регистрЧтениеSPI0DATSFR шина251СхемауправлениявыводамиSCKMISOданныеБуфер принимаемых данныхЗапись вSPI0DATMOSIРед. 1.2NSSМАТРИЦАУправлениетрактом данных7 6 5 4 3 2 1 0Прерывание отмодуля SPIПортввода/выводаC8051F060/1/2/3/4/5/6/721.1.

Описание сигналовНиже описаны четыре сигнала, используемые интерфейсом SPI (MOSI, MISO, SCK, NSS).21.1.1. Выход ведущего, вход ведомогоСигнал MOSI (master-out, slave-in - «выход ведущего, вход ведомого») является выходом данныхведущего устройства и входом данных ведомых устройств. Он используется для последовательной передачиданных от ведущего к ведомому. Этот сигнал является выходом, если SPI0 работает в ведущем режиме, ивходом, если SPI0 работает в ведомом режиме. Данные передаются старшими значащими разрядами вперед.При работе в ведущем режиме состояние сигнала MOSI определяется старшим значащим разрядом сдвиговогорегистра как в 3-х проводном, так и в 4-х проводном режимах.21.1.2.

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

Тип файла
PDF-файл
Размер
4,95 Mb
Тип материала
Высшее учебное заведение

Список файлов учебной работы

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