Table of Contents Table of Contents
Previous Page  74 / 82 Next Page
Information
Show Menu
Previous Page 74 / 82 Next Page
Page Background

ПРОГРАММИРОВАНИЕ

74

WWW.SOEL.RU

СОВРЕМЕННАЯ ЭЛЕКТРОНИКА

№ 8 2010

Таблица 47. Описание функции Spi_Write

Прототип

void Spi_Write(unsigned short data)

Возвращаемое значение Нет

Описание

Записывает передаваемый байт data в регистр данных SSPBUF, что немедленно вызывает передачу

Требования

Требуется PIC микроконтроллер с аппаратным модулем SPI. SPI должен быть предварительно проинициализирован функциями Spi_Init_Advanced

или Spi_Init

Пример

Spi_Write(1)

Таблица 46. Описание функции Spi_Read

Прототип

unsigned short Spi_Read(unsigned short buffer)

Возвращаемое значение Возвращает принятый байт

Описание

Запускает обмен посылкой байта buffer, принимает данные и возвращает принятый байт по окончанию приёма

Требования

Требуется PIC микроконтроллер с аппаратным модулем SPI. SPI должен быть предварительно проинициализирован функциями Spi_Init_Advanced

или Spi_Init

Пример

short take, buffer;

...

take = Spi_Read(buffer);

Таблица 44. Описание функции Spi_Init

Прототип

void Spi_Init(void)

Возвращаемое значение Нет

Описание

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

других функций библиотеки SPI. Установки по умолчанию: режим ведущего, частота синхронизации Fosc/4, низкий уровень при отсутствии

синхросигнала на соответствующем выводе, передача по фронту, стробирование входных данных в середине интервала синхронизации.

Для установки собственных настроек необходимо использовать функцию Spi_Init_Advanced

Требования

Требуется PIC микроконтроллер с аппаратным модулем SPI

Пример

Spi_Init()

Таблица 45. Описание функции Spi_Init_Advanced

Прототип

void Spi_Init_Advanced(unsigned short master, unsigned short data_sample, unsigned short clock_idle, unsigned short transmit_edge)

Возвращаемое значение Нет

Описание

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

SPI. Аргумент mast_slav определяет режим работы SPI и может принимать следующие значения:

MASTER_OSC_DIV4 // Ведущий, частота синхр.=Fosc/4

MASTER_OSC_DIV16 // Ведущий, частота синхр.=Fosc/16

MASTER_OSC_DIV64 // Ведущий, частота синхр.=Fosc/64

MASTER_TMR2 // Ведущий, частоту синхр. задает TMR2

SLAVE_SS_ENABLE // Ведомый, разрешен Slave select

SLAVE_SS_DIS // Ведомый, запрещён Slave select

Аргумент data_sample определяет, когда стробируются входные данные, и может принимать следующие значения:

DATA_SAMPLE_MIDDLE // Входные данные стробируются

// в середине интервала синхронизации

DATA_SAMPLE_END // Входные данные стробируются

// в конце интервала синхронизации

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

CLK_IDLE_HIGH // Высокий уровень на выводе

// синхронизации при отсутствии обмена

CLK_IDLE_LOW // Низкий уровень на выводе

// синхронизации при отсутствии обмена

Аргумент transmit_edge может принимать следующие значения:

LOW_2_HIGH // Данные передаются по фронту

HIGH_2_LOW // Данные передаются по спаду

Требования

Требуется PIC микроконтроллер с аппаратным модулем SPI

Пример

SPI устанавливается в режим ведущего с частотой синхронизации = Fosc/4, входные данные стробируются в середине интервала синхронизации, вывод

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

Spi_Init_Advanced(MASTER_OSC_DIV4, DATA_SAMPLE_MIDDLE, CLK_IDLE_LOW, LOW_2_HIGH)

Таблица 43. Описание функции Ow_Write

Прототип

void Ow_Write(unsigned short *port, unsigned short pin, unsigned short par)

Возвращаемое значение Нет

Описание

Передаёт один байт данных (аргумент par) по шине OneWire

Требования

Нет

Пример

Ow_Write(&PORTA, 5, 0xCC)

© СТА-ПРЕСС