Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С

Тут можно читать онлайн Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом «ДМК-пресс», год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом «ДМК-пресс»
  • Год:
    2007
  • Город:
    Москва
  • ISBN:
    5-9706-0034-2
  • Рейтинг:
    4/5. Голосов: 91
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Стивен Барретт - Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С краткое содержание

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - описание и краткое содержание, автор Стивен Барретт, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

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

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

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

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - читать онлайн бесплатно полную версию (весь текст целиком)

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - читать книгу онлайн бесплатно, автор Стивен Барретт
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать
Рис 478Блоксхемы алгоритмов программного обслуживания контроллера - фото 155

Рис. 4.78.Блок-схемы алгоритмов программного обслуживания контроллера асинхронного обмена SPI

Микроконтроллер и периферийные интегральные схемы. Одна из основных функций интерфейса SPI в микропроцессорных системах — обмен данными между МК и установленными на той же печатной плате интерфейсными ИС. Контроллер SPI в составе МК 68HC12 может быть инициализирован для работы как в режиме ведущего (мастера), так и в режиме ведомого (подчиненного). В процессе обмена с интерфейса SPI — дополнительная функция линий PS7..PS4 порта S. Сигналы SPI распределяются между линиями PS7..PS4 в следующем порядке:

• PS7 — сигнал картинка 156. Когда линия картинка 157 установлена в 0, происходит передача данных из ведущего устройства SPI;

• PS6 — сигнал SCK;

• PS5 — сигнал MOSI. По этой линии передаются данные от ведущего устройства к ведомому;

• PS4 — сигнал MISO. По этой линии передаются данные от ведомого устройства к ведущему.

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

• DDRS — регистр направления передачи порта S. Разряды DDRS7…DDRS4 должны быть установлены соответствующим образом при работе контроллера SPI в режиме ведущего. Это необходимо для правильного формирования сигналов обмена на линиях порта S;

• SP0BR — регистр скорости передачи. Разряды SPR2…SPR0 этого регистра задают скорость обмена по шине SPI;

• SP0CR1 — регистр управления (первый). Задает режимы работы контроллера SPI;

• SP0CR2 — регистр управления (второй). Задает режимы работы контроллера SPI;

• SP0SR — регистр состояния. Отражает текущее состояние процесса передачи информации по шине SPI;

• SP0DR — регистр данных. В этот регистр записываются данные, подлежащие передаче в интерфейсную ИС.

Пример программирования контроллера SPI. В нашем примере мы будем использовать встроенный контроллер SPI в режиме ведущего. Контролер будет непрерывно посылать шестнадцатеричное число $F0 в «воображаемую» периферийную ИС. Работоспособность приведенного программного кода может быть проверена с помощью осциллографа. При желании Вы можете собрать простейшую периферийную ИС — последовательный регистр со светодиодами, подключенными к параллельным выходам (рис. 4.79). В примере не использованы прерывания, контроль за состоянием флага SPIF ведется методом полинга.

Рис 479Функциональная схема периферийного устройства для тестирования обмена - фото 158

Рис. 4.79.Функциональная схема периферийного устройства для тестирования обмена по SPI

/*--------------------------------------------------------------------*/

/* filename: SPI.c */

/* МAIN PROGRAМ: Эта программа реализует непрерывную посылку кода */

/* символа "S" с скоростью 9600 бод в 8-разрядном формате (кадр 10 бит)*/

/* с битом паритета */

/*--------------------------------------------------------------------*/

/*подключаемые файлы*/

#include <912b32.h>

#include

/*используемые функции*/

void initialize_spi(void);

void send_data(unsigned int);

void main(void) {

int i, j;

unsigned int data;

initialize_spi(); /*инициализация модуля SCI*/

data = 0xF0;

while(1) /*передавать данные непрерывно*/

{

send_data(data);

}

}

/* Функция initialize_spi производит инициализацию модуля SPI. */

void initialize_spi(void) {

SP0BR = 0х04; /*установить скорость обмена*/

SP0CR1 = 0x18; /*запретить прерывания от SPI, назначить режим*/

/*ведущего, старшим битом вперед*/

SP0DR = 0x00; /*очистить регистр данных */

SP0SR = 0x00; /*очистить регистр состояния*/

SP0CR1 = 0x58; /* разрешить SPI */

}

/* Функция send_data производит инициализацию модуля SPI. */

void send_data(unsigned int data) {

unsigned int status;

SP0DR = data; /*задать число для пересылки*/

while ((SP0SR & 0x80) == 0x00) /*ожидать флага завершения передачи*/

{

;

}

status = SP0SR /*прочитать регистр состояния с целью сброса флага SPIF*/

}

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

4.19.5 Периферийные ИС с интерфейсом SPI

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

• Память типа EEPROM или FLASH;

• Дополнительные порты ввода/вывода;

• Часы реального времени;

• АЦП высокого разрешения (число разрядов преобразования превышает 8 бит);

• Драйверы светодиодных и жидкокристаллических дисплеев;

• Многоканальные ЦАП;

• Схемы фазовой автоподстройки частоты.

4.20. Введение в теорию аналого-цифрового преобразования

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

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

Рис 480Временная диаграмма поясняющая процесс преобразования аналогового - фото 159

Рис. 4.80.Временная диаграмма, поясняющая процесс преобразования аналогового сигнала в цифровой код.

Для представления некоторого изменяющего во времени аналогового сигнала в цифровом коде необходимо:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стивен Барретт читать все книги автора по порядку

Стивен Барретт - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С отзывы


Отзывы читателей о книге Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С, автор: Стивен Барретт. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x