F20-23 (1041603), страница 42

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

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

Если прерывания разрешены, тоустановка этого бита приведет к переходу на процедуру обслуживания прерывания от модуля SPI0.Этот бит не сбрасывается аппаратно, его необходимо сбросить программно.Бит 3: TXBSY: Флаг занятости передатчика.Этот бит аппаратно устанавливается в 1 при осуществлении передачи данных в ведущем режиме.Он сбрасывается аппаратно по окончании передачи данных.Бит 2: SLVSEL: Флаг выбора ведомого.Этот бит аппаратно устанавливается в 1 всякий раз, когда на линию NSS подан сигнал низкогоуровня, и показывает, что ведомый включен. Этот флаг сбрасывается в 0, когда на линии NSSприсутствует сигнал высокого уровня (ведомый отключен).Бит 1: MSTEN: Включение ведущего режима.0: Ведущий режим отключен.

Модуль SPI0 работает в ведомом режиме.1: Ведущий режим включен. Модуль SPI0 работает в ведущем режиме.Бит 0: SPIEN: Включение модуля SPI0.Это бит включает/отключает модуль SPI0.0: Модуль SPI0 отключен.1: Модуль SPI0 включен.Ред. 1.4202C8051F020/1/2/3Рисунок 19.7. SPI0CKR: Регистр установки тактовой частоты модуля SPI0R/WSCR7R/WSCR6R/WSCR5R/WSCR4R/WSCR3R/WSCR2R/WSCR1R/WSCR0Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000SFR Адрес:0x9DБиты 7-0: SCR7-SCR0: Тактовая частота модуля SPIЭти биты определяют частоту выходного сигнала SCK, когда модуль SPI0 работает введущем режиме. Частота тактового сигнала SCK представляет собой поделенную наопределенный коэффициент системную тактовую частоту и задается следующимуравнением:fSCK = 0.5 * SYSCLK / (SPI0CKR + 1), для 0 ≤ SPI0CKR ≤ 255,где: SYSCLK – частота системного тактового сигнала;SPI0CKR – 8-разрядное значение регистра SPI0CKR.Пример: Если SYSCLK = 2МГц и SPI0CKR = 0х04, то:fSCK = 0.5 * 2000000 / (4 + 1) = 200кГц.Рисунок 19.8.

SPI0DAT: Регистр данных модуля SPI0R/WR/WR/WR/WR/WR/WR/WR/WБит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0Значениепри сбросе:00000000Бит 7SFR Адрес:0x9BБиты 7-0: SPI0DAT: Данные передатчика и приемника модуля SPI0.Регистр SPI0DAT используется для передачи и приема данных. В ведущем режиме записьданных в регистр SPI0DAT сразу же приводит к загрузке данных в регистр сдвига иинициирует сеанс передачи.

Чтение регистра SPI0DAT возвратит содержимое приемногобуфера.203Ред. 1.4C8051F020/1/2/3ПРИМЕЧАНИЯРед. 1.4204C8051F020/1/2/320. УАПП0УАПП0 (универсальный асинхронный приемопередатчик) представляет собой усовершенствованныйпоследовательный порт, обеспечивающий определение ошибок формата и аппаратное распознавание адреса.УАПП может функционировать в полнодуплексном асинхронном или полудуплексном синхронном режимах, атакже полностью поддерживает организацию связи с несколькими МК. Во всех режимах принимаемые данныебуферизуются в регистре временного хранения. Это позволяет УАПП0 начать прием второго входящего байтаданных до того, как программа закончит чтение предыдущего байта данных.

Флаг переполнения приемникаустанавливается в 1, если следующий принятый байт данных фиксируется в буфере приемника до окончаниячтения ранее принятого байта.С работой УАПП0 связаны следующие регистры специального назначения: регистр управленияУАПП0 (SCON0) и буфер данных УАПП0 (SBUF0).

Одна и та же ячейка памяти, адресуемая как SBUF0,обеспечивает доступ и к регистру передатчика, и к регистру приемника. Операция чтения обращается крегистру приемника, а операция записи обращается к регистру передатчика автоматически.С модулем УАПП0 можно работать как в режиме опроса, так и с использованием прерываний. УАПП0имеет два источника прерываний:- флаг прерываний от передатчика TI0 (SCON0.1), устанавливается, когда передача байта данных завершена;- флаг прерываний от приемника RI0 (SCON0.0), устанавливается, когда завершен прием байта данных.Флаги прерываний от УАПП0 не сбрасываются аппаратно при переходе к процедуре обслуживанияпрерывания. Они должны сбрасываться программно. Это позволяет программе определить причину,вызвавшую прерывание от УАПП0 (завершение передачи или завершение приема).Рисунок 20.1.

Структурная схема УАПП0SFR шинаЗаписьв SBUFTB8SBUFSETD(сдвиговый регистрпередатчика)QCLRTXМатрицаДетектор нуляГенерациябита STOPСтартСдвигДанныеУправление передатчиком (Tx)Тактирование TxЛогикагенератораскоростипередачиданныхУАПППередачаПрерывание TxSCONTIПрерывание отпоследовательногопорта (УАПП0/1)S S S R T R T RM M M E B B I I0 1 2 N 8 8RIТактирование RxВключение Прерывание RxУправление приемником (Rx)СтартСдвигОпределениеошибки форматаЗагрузкаSBUFСовпадениеадресаПортввода/вывода0x1FFВходной регистрсдвига (9 бит)Загрузка SBUFRB8ДетекторсовпаденияSBUF(Защелка приемника)SADDRSADENЧтениеSBUFSFR шина205RXРед.

1.4МатрицаC8051F020/1/2/320.1. Режимы работы УАПП0УАПП0 поддерживает четыре режима работы (один синхронный и три асинхронных), задаваемыебитами конфигурации в регистре SCON0. Эти четыре режима различаются скоростью передачи данных ипротоколом обмена. В табл.20.1 приведены основные характеристики режимов работы УАПП0.Таблица 20.1. Режимы работы УАПП0РежимСинхронизацияСкорость передачи данных0123СинхронныйАсинхронныйАсинхронныйАсинхронныйSYSCLK/12Переполнение Таймера 1 или Таймера 2SYSCLK/32 или SYSCLK/64Переполнение Таймера 1 или Таймера 2Битыданных8899БитыСтарт/СтопНет1 Старт, 1 Стоп1 Старт, 1 Стоп1 Старт, 1 Стоп20.1.1.

Режим 0: Синхронный режимРежим 0 обеспечивает синхронный, полудуплексный обмен данными. Последовательные данныепередаются и принимаются через внешний вывод RX0. Через внешний вывод TX0 выдаются импульсы сдвигакак для передачи, так и для приема данных. МК должен быть ведущим, т.к. он генерирует импульсы сдвига дляпередачи данных в обоих направлениях (см. рис.20.2).Передача данных начинается, когда происходит запись байта данных в регистр SBUF0.

Передаютсявосемь бит данных, МЗР вперед (см. временные диаграммы на рис.20.3). Флаг прерывания от передатчика TI0(SCON0.1) устанавливается в 1 в конце восьмого битового интервала. Прием данных начинается, когдаустанавливается в 1 флаг включения приемника REN0 (SCON0.4) и сбрасывается флаг прерывания отприемника RI0 (SCON0.0). Спустя один цикл после приема восьмого бита устанавливается флаг RI0 и приемзавершается до программного сброса бита RI0. При установке флагов TI0 или RI0 будет сгенерированопрерывание, если оно разрешено.Скорость передачи данных в режиме 0 равна 1/12 системной тактовой частоты.

В режиме 0 вывод RX0настраивается как выход с открытым стоком и обычно требуется подключить к этому выводу внешнийподтягивающий резистор.Рисунок 20.2. Пример использования УАПП0 в режиме 0TXCLKRXDATAC8051FxxxРегистрсдвига8 дополнительных выходовРисунок 20.3. Временные диаграммы УАПП0 в режиме 0ПЕРЕДАЧА В РЕЖИМЕ 0RX (выход данных)D0D1D2D3D4D5D6D7TX (выход такт. имп-в)ПРИЕМ В РЕЖИМЕ 0RX (вход данных)D0D1D2D3D4D5D6D7TX (выход такт.

имп-в)Ред. 1.4206C8051F020/1/2/320.1.2. Режим 1: 8-разрядный УАПП0, изменяемая скорость передачи данныхРежим 1 обеспечивает стандартный асинхронный полнодуплексный обмен данными с использованием10 бит для передачи одного байта данных: один стартовый бит, восемь бит данных (МЗР вперед) и одинстоповый бит. Данные передаются через внешний вывод TX0 и принимаются через внешний вывод RX0. Приприеме в регистре SBUF0 сохраняются восемь бит данных, а бит RB80 (SCON0.2) принимает значениестопового бита.Передача данных начинается, когда происходит запись байта данных в регистр SBUF0. Флагпрерывания от передатчика TI0 (SCON0.1) устанавливается в 1 в конце передачи (в начале передачи стоповогобита). Прием данных может быть начат в любое время после установки в 1 флага включения приемника REN0(SCON0.4).

После приема стопового бита байт данных будет загружен в регистр приемника SBUF0, еслисоблюдаются следующие условия: RI0 должен быть равен лог.0, и, если SM20 равен лог.1, то стоповый битдолжен быть равен лог.1.Если эти условия соблюдаются, то восемь бит данных сохраняются в регистре SBUF0, стоповый битсохраняется в бите RB80 и устанавливается в 1 флаг RI0. Если эти условия не соблюдаются, то SBUF0 и RB80не будут загружаться и флаг RI0 не устанавливается. При установке флагов TI0 или RI0 будет сгенерированопрерывание, если оно разрешено.Рисунок 20.4. Временные диаграммы УАПП0 в режиме 1Лог.1Лог.0БитСТАРТD0D1D2D3D4D5D6D7БитСТОПБИТОВЫЕИНТЕРВАЛЫВЫБОРКА БИТАСкорость передачи данных в режиме 1 определяется функцией от переполнения таймера, как показанов уравнениях 20.1 и 20.2.

Для задания скорости передачи данных УАПП0 может использоваться либо Таймер 1,работающий в режиме 8-разрядного таймера/счетчика с автоперезагрузкой, либо Таймер 2, работающий врежиме генератора скорости передачи данных (следует иметь ввиду, что источники тактовых импульсов дляпередатчика (ТХ0) и приемника (RX0) выбираются по отдельности). При каждом переполнении таймера (припереходе от всех единиц - 0xFF для Таймера 1 и 0xFFFF для Таймера 2 – к нулю) тактовый импульс посылаетсясхеме генератора скорости передачи данных.Таймер 2 выбирается в качестве генератора скорости передачи данных для передатчика (ТХ) и/илиприемника (RX) установкой в 1 бит TCLK0 (T2CON.4) и/или RCLK0 (T2CON.5) соответственно (подробнаяинформация о настройке таймеров приведена в разделе 22).

Когда либо TCLK0, либо RCLK0 установлены в 1,Таймер 2 переводится в режим генератора скорости передачи данных и настраивается на использованиесигнала SYSCLK/2 в качестве источника тактового сигнала. Если биты TCLK0 и/или RCLK0 сброшены в 0, тоТаймер 1 функционирует в качестве генератора скорости передачи данных для схем передатчика (ТХ) и/илиприемника (RX) соответственно.Ниже приведены уравнения, определяющие скорость передачи данных в режиме 1:Уравнение 20.1.

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

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

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

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