SPI библилтека

Модуль SPI доступен со всеми MCU ARM. mikroPascal PRO для ARM предоставляет библиотеку для инициализации режима ведомого и инициализацию и удобную работу с режимом Master. ARM может легко связываться с другими устройствами через SPI: аналого-цифровые преобразователи, ЦАП, MAX7219, LTC1290 и т. д.

  Important :

Библиотечные процедуры

Общие процедуры

SPIx_Init

Прототип

procedure SPIx_Init();

Описание

Настраивает и инициализирует модуль SPI с настройками по умолчанию.

Настройки по умолчанию для MCU Stellaris:

  • Мастер-режим.
  • 8-битный режим данных.
  • Серийные часы установлены на 2 МГц.
  • Время ожидания холостого хода.
  • Последовательные выходные данные изменяются на первом фронте перехода по фронту.

Настройки по умолчанию для MCU MCP432:

  • Мастер-режим.
  • 8-битный режим данных.
  • Низкоскоростная основная синхронизация подсистемы в качестве источника синхронизации.
  • Последовательные выходные данные изменяются на первом фронте перехода по фронту.
  • MSB отсылается первым.

Настройки по умолчанию для ST устройств :

  • Мастер-режим.
  • 8-битный режим данных.
  • Серийные часы, установленные для периферийных часов / 64.
  • Время ожидания холостого хода.
  • Последовательные выходные данные изменяются на первом фронте перехода по фронту.
  • Неверный выбор устройства.
  • Управление ведомым устройством отключено.

Настройки по умолчанию для CEC1x02 :

  • Мастер-режим.
  • 8-битный режим данных.
  • Серийные часы установлены на 1 МГц.
  • Время ожидания холостого хода.
  • Последовательные выходные данные изменяются на первом фронте перехода по фронту.
  • MSB отправлен первым.

Настройки по умолчанию для Kinetis :

  • Мастер-режим.
  • 8-битный режим данных.
  • Серийные часы установлены на 8 МГц.
  • Время ожидания холостого хода.
  • Последовательные выходные данные изменяются на первом фронте перехода по фронту.
  • MSB отправлен первым.
Параметры

Нет.

Возвращает

Ничего.

Требует

MCU должен иметь модуль SPI.

Example
// Initialize the SPI1 module with default settings
SPI1_Init();
Примечания
  • Процедуры библиотеки SPI требуют указать модуль, который вы хотите использовать. Чтобы выбрать желаемый модуль SPI, просто измените букву x в прототипе подпрограммы на число от 0 до 8.
  • Количество модулей SPI на каждый MCU отличается от чипа до чипа. Перед использованием этой библиотеки ознакомьтесь с соответствующей таблицей данных.
  • SPI_Rd_Ptr() и SPI_Wr_Ptr() глобальные указатели функций назначаются при инициализации модуля SPI.Они указывают на соответствующие процедуры чтения и записи (определяемые инициализированным модулем SPI), поэтому они могут использоваться для операций чтения и записи SPI.
  • Переключение между модулями SPI в библиотеке SPI осуществляется с помощью SPI_Set_Active функции (оба модуля SPI должны быть предварительно инициализированы).
  • Модули SPI устанавливаются на следующих контактах:

    Stellaris

    • SPI0 :
      • PA2/PA4/PA5 - все Cortex M3 и M4 MCUs.
    • SPI1 :
      • PB5/PE4/PE5 - TM4C129x Cortex M4 MCUs.
      • PD0/PD2/PD3 - все другие Cortex M4 MCUs, не перечисленные ранее.
      • PE0/PE2/PE3 - все Cortex M3 MCUs.
    • SPI2 :
      • PG7/PG5/PG4 - TM4C129x Cortex M4 MCUs.
      • PH4/PH6/PH7 - LM4F112x, LM4F122x, LM4F132x, LM4F212x и LM4F232x Cortex M4 MCUs.
      • PB4/PB5/PB7 - все другие Cortex M4 MCUs, не перечисленные ранее.
    • SPI3 :
      • PQ0/PQ2/PQ3 - TM4C129x Cortex M4 MCUs.
      • PH0/PH2/PH3 - LM4F112x, LM4F122x, LM4F132x, LM4F212x and LM4F232x Cortex M4 MCUs.
      • PD0/PD2/PD3 - все другие Cortex M4 MCUs, не перечисленные ранее.

    MSP432

    • SPI1 :
      • PA1/PA2/PA3.
    • SPI2 :
      • PA9/PA10/PA11.
    • SPI3 :
      • PB1/PB2/PB3.
    • SPI4 :
      • PE5/PE6/PE7.
    • SPI5 :
      • PA5/PA6/PA7.
    • SPI6 :
      • PC11/PC13/PC12.
    • SPI7 :
      • PB5/PB6/PB7.
    • SPI8 :
      • PE9/PE10/PE11.

    STM32

    • SPI1 :
      • PA5/PA6/PA7 - все Cortex M0, M3 and M4 MCUs.
    • SPI2 :
      • PB10/PB14/PB15 - STM32F373x/STM32F378x/STM32F383x Cortex M4 MCUs.
      • PB13/PB14/PB15 - все Cortex M0, M3 и другие Cortex M4 MCUs, не перечисленные ранее..
    • SPI3 :
      • PB3/PB4/PB5 - все Cortex M3 and M4 MCUs.
    • SPI4 :
      • PE2/PE5/PE6 - все Cortex M3 and M4 MCUs.
    • SPI5 :
      • PB0/PA12/PA10 - STM32F411x Cortex M4 MCUs.
      • PF7/PF8/PF9 - все другие Cortex M4 MCUs, не перечисленные ранее..
    • SPI6 :
      • PG12/PG13/PG14 - все Cortex M4 MCUs.

    CEC1302

    • SPI0 :
      • P153/P164/P054

    CEC1702

    • SPI0 :
      • P034/P036/P001

    Kinetis

    • SPI0 :
      • PD1/PD3/PD2
    • SPI1 :
      • PD5/PD7/PD6
    • SPI2 :
      • PB21/PB23/PB22

SPIx_Init_Advanced

Прототип // для MCU Stellaris :

procedure SPIx_Init_Advanced(bit_rate_Hz : dword; master_slave_mode : word; config : word);

// для MCU Stellaris с альтернативными функциями PORT на контактах GPIO :

procedure SPIx_Init_Advanced(bit_rate_Hz : dword; master_slave_mode : word; config : word; module : ^const Module_Struct);

// для MCP432 MCU :

procedure SPI8_Init_Advanced(mst : word; clkDiv : word; clkSource : word; msbFirst : word; clkPhase : word; clkPolarity : word; spiMode : word; map : ^const module_Struct);

// для ST MCUs :

procedure SPIx_Init_Advanced(clock_divider : byte; config : dword; module : ^const Module_Struct);

// для CEC1x02 :

procedure SPI0_Init_Advanced(bit_rate_Hz : dword; lsb_first : word; config : byte);

// для Kinetis :

procedure SPI0_Init_Advanced(baudRate : dword; config : dword, module : ^const Module_Struct);

Описание

Конфигурирует и инициализирует модуль SPI с пользовательскими настройками.

Параметры

Stellaris

  • bit_rate_Hzпараметр определяет значение синхронизации SPI в Гц.
  • master_slave_mode параметр определяет рабочий режим для модуля SPI.
    Режим ведущий / ведомый
    Описание Предопределенные библиотечные константы
    Мастер-режим _SPI_MASTER
    Режим ведомого _SPI_SLAVE
  • Параметр config определяет размер данных, полярность часов и фазу синхронизации.
    This value is deriven from OR-ing the following constants :
    Размер данных
    Описание Предопределенные библиотечные константы
    4-битовый размер данных _SPI_4_BIT
    5-битовый размер данных _SPI_5_BIT
    6-битовый размер данных _SPI_6_BIT
    7-битовый размер данных _SPI_7_BIT
    8-битовый размер данных _SPI_8_BIT
    9-битовый размер данных _SPI_9_BIT
    10-битовый размер данных _SPI_10_BIT
    11-битовый размер данных _SPI_11_BIT
    12-битовый размер данных _SPI_12_BIT
    13-битовый размер данных _SPI_13_BIT
    14-битовый размер данных _SPI_14_BIT
    15-битовый размер данных _SPI_15_BIT
    16-битовый размер данных _SPI_16_BIT

    Полярность часов
    Описание Предопределенные библиотечные константы
    IDLE state is Lo, ACTIVE state is Hi _SPI_CLK_IDLE_LOW
    IDLE state is Hi, ACTIVE state is Lo _SPI_CLK_IDLE_HIGH

    Фаза синхронизации
    Описание Предопределенные библиотечные константы
    Data is sampled on the first clock edge transition _SPI_FIRST_CLK_EDGE_TRANSITION
    Данные берутся на второй переход по краю тактовой частоты _SPI_SECOND_CLK_EDGE_TRANSITION
  • module: соответственная распиновка модуля. Используйте Code Assistant, для того чтобы перечислить доступные распиновки модулей, набрав _GPIO_MODULE_SPI и нажимая Ctrl + Space.
  • MSP432

    • mst параметр определяет рабочий режим для модуля SPI. Допустимые значения:
      Описание Предопределенные библиотечные константы
      Мастер-режим _SPI_MASTER
      Режим ведомого _SPI_SLAVE
    • clkDiv параметр определяет рабочие часы для модуля SPI. Допустимые значения: от 1 до 65535.
    • clockSource: источник синхронизации для модуля SPI. Допустимые значения:
      Описание Предопределенные библиотечные константы
      Вспомогательные часы _SPI_CLOCKSOURCE_ACLK
      Малоскоростные основные тактовые генераторы _SPI_CLOCKSOURCE_SMCLK
    • msbFirst: наиболее / наименее значимый бит. Допустимые значения:
      Описание Предопределенные библиотечные константы
      Самый старший бит сначала _SPI_MSB_FIRST
      Наименее значимый бит сначала _SPI_LSB_FIRST
    • clkPhase: фаза синхронизации. Допустимые значения:
      Описание Предопределенные библиотечные константы
      Данные изменяются на первом фронте такта и фиксируются на следующем краю _SPI_PHASE_DATA_CHANGE_FIRST_CAPTURE_NEXT
      Данные записываются на первый фронт тактового сигнала и изменяются на следующем краю. _SPI_PHASE_DATA_CAPTURE_FIRST_CHANGE_NEXT
    • clkPolarity: Полярность часов, допустимые значения:
      Описание Предопределенные библиотечные константы
      The inactive state is low _SPI_CLK_IDLE_LOW
      The inactive state is high _SPI_CLK_IDLE_HIGH
    • spiMode: 3-проводной или 4-проводной SPI. Допустимые значения:
      Описание Предопределенные библиотечные константы
      3-pin SPI _SPI_3PIN
      4-pin SPI с UCxSTE активный высоуий: ведомый включен, когда UCxSTE = 1 _SPI_4PIN_UCxSTE_ACTIVE_HIGH
      4-pin SPI with UCxSTE активный низкий: ведомый включен, когда UCxSTE = 0 _SPI_4PIN_UCxSTE_ACTIVE_LOW
    • module: соответственная распиновка модуля. Используйте Code Assistant, для того чтобы перечислить доступные распиновки модулей, набрав _GPIO_MODULE_SPI и нажимая Ctrl + Space.
    • STM32

      • clock_divider параметр определяет часы для модуля SPI (особенности ST).
        Часы SPI
        Описание Предопределенные библиотечные константы
        Периферийные часы /2 _SPI_FPCLK_DIV2
        Периферийные часы /4 _SPI_FPCLK_DIV4
        Периферийные часы /8 _SPI_FPCLK_DIV8
        Периферийные часы /16 _SPI_FPCLK_DIV16
        Периферийные часы /32 _SPI_FPCLK_DIV32
        Периферийные часы /64 _SPI_FPCLK_DIV64
        Периферийные часы /128 _SPI_FPCLK_DIV128
        Периферийные часы /256 _SPI_FPCLK_DIV256
      • Параметр config определяет размер данных, gолярность часов и фазу синхронизации.
        This value is deriven from OR-ing the following constants :
        Data Length Size
        Описание Предопределенные библиотечные константы
        8-разрядный размер данных _SPI_8_BIT
        16-разрядный размер данных _SPI_16_BIT

        Режим ведущий / ведомый
        Описание Предопределенные библиотечные константы
        Мастер-режим _SPI_MASTER
        Режим ведомого _SPI_SLAVE

        Полярность часов
        Описание Предопределенные библиотечные константы
        IDLE state is Lo, ACTIVE state is Hi _SPI_CLK_IDLE_LOW
        IDLE state is Hi, ACTIVE state is Lo _SPI_CLK_IDLE_HIGH

        Фаза синхронизации
        Описание Предопределенные библиотечные константы
        Данные берутся на первый переход к краю тактовой частоты _SPI_FIRST_CLK_EDGE_TRANSITION
        Данные берутся на второй переход по краю тактовой частоты _SPI_SECOND_CLK_EDGE_TRANSITION

        Иерархия отправки бит
        Описание Предопределенные библиотечные константы
        Самый значительный бит (MSB) отправлен первым _SPI_MSB_FIRST
        Самый младший бит (MSB) отправлен первым _SPI_LSB_FIRST

        Управление ведомым программным обеспечением
        Описание Предопределенные библиотечные константы
        Включить управление ведомым устройством _SPI_SSM_ENABLE
        Управление ведомым устройством отключено _SPI_SSM_DISABLE

        Вывод выбора ведомого устройства
        Описание Предопределенные библиотечные константы
        Разрешить вывод ведомого устройства _SPI_SS_ENABLE
        Вывод выбора подчиненного устройства отключен _SPI_SS_DISABLE

        Внутренний выбор ведомого устройства
        Описание Предопределенные библиотечные константы
        Внутренний выбор ведомого устройства = 0 _SPI_SSI_0
        Внутренний выбор ведомого устройства = 1 _SPI_SSI_1
      • module: соответственная распиновка модуля. Используйте Code Assistant, для того чтобы перечислить доступные распиновки модулей, набрав _GPIO_MODULE_SPI и нажимая Ctrl + Space.
      • CEC1x02

        • The bit_rate_HzПараметр определяет часы для модуля SPI в Гц.
        • lsb_first параметр определяет нумерацию бит. Допустимые значения:
          Описание Предопределенные библиотечные константы
          MSB посылается первым _SPI_MSB_FIRST
          LSB посылается первым _SPI_LSB_FIRST
        • Параметр config определяет размер данных, полярность часов и фазу синхронизации. This value is deriven from OR-ing the following constants :

          Полярность часов
          Описание Предопределенные библиотечные константы
          IDLE state is Lo, ACTIVE state is Hi _SPI_CLK_IDLE_LOW
          IDLE state is Hi, ACTIVE state is Lo _SPI_CLK_IDLE_HIGH

          Clock Phase
          Описание Предопределенные библиотечные константы
          Данные отбираются по нарастающему фронту синхронизации _SPI_SAMPLE_DATA_RISING_EDGE
          Данные отбираются по краю падающих часов _SPI_SAMPLE_DATA_FALLING_EDGE

        Kinetis

        • baudRate параметр определяет часы для модуля SPI (особенности ST).
        • Параметр config определяет размер данных, gолярность часов и фазу синхронизации.
          This value is deriven from OR-ing the following constants :
          Размер данных
          Описание Предопределенные библиотечные константы
          4-битовый размер данных _SPI_CFG_FRAME_SIZE_4BITS
          5-битовый размер данных _SPI_CFG_FRAME_SIZE_5BITS
          6-битовый размер данных _SPI_CFG_FRAME_SIZE_6BITS
          7-битовый размер данных _SPI_CFG_FRAME_SIZE_7BITS
          8-битовый размер данных _SPI_CFG_FRAME_SIZE_8BITS
          9-битовый размер данных _SPI_CFG_FRAME_SIZE_9BITS
          10-битовый размер данных _SPI_CFG_FRAME_SIZE_10BITS
          11-битовый размер данных _SPI_CFG_FRAME_SIZE_11BITS
          12-битовый размер данных _SPI_CFG_FRAME_SIZE_12BITS
          13-битовый размер данных _SPI_CFG_FRAME_SIZE_13BITS
          14-битовый размер данных _SPI_CFG_FRAME_SIZE_14BITS
          15-битовый размер данных _SPI_CFG_FRAME_SIZE_15BITS
          16-битовый размер данных _SPI_CFG_FRAME_SIZE_16BITS

          Режим ведущий / ведомый
          Описание Предопределенные библиотечные константы
          Мастер-режим _SPI_CFG_MASTER
          Режим ведомого _SPI_CFG_SLAVE

          Полярность часов
          Описание Предопределенные библиотечные константы
          IDLE state is Lo, ACTIVE state is Hi _SPI_CFG_CLK_IDLE_LOW
          IDLE state is Hi, ACTIVE state is Lo _SPI_CFG_CLK_IDLE_HIGH

          Фаза синхронизации
          Описание Предопределенные библиотечные константы
          Данные берутся на первый переход к краю тактовой частоты _SPI_CFG_CLK_PHASE_CAPT_LEADING
          Данные берутся на второй переход по краю тактовой частоты _SPI_CFG_CLK_PHASE_CHG_LEADING

          Иерархия отправки бит
          Описание Предопределенные библиотечные константы
          Самый значительный бит (MSB) отправлен первым _SPI_CFG_MSB_FIRST
          Самый младший бит (MSB) отправлен первым _SPI_CFG_LSB_FIRST

        • module: соответственная распиновка модуля. Используйте Code Assistant, для того чтобы перечислить доступные распиновки модулей, набрав _GPIO_MODULE_SPI и нажимая Ctrl + Space.
Возвращает

Ничего.

Требует

MCU должен иметь модуль SPI.

Example

Stellaris

// Установите   SPI1 в главный режим, длина данных - 16 бит, часы = 2 МГц, высокое   время ожидания IDLE и данные, переданные при первом переходе по фронту   тактового сигнала :
SPI1_Init_Advanced(2000000, _SPI_MASTER, _SPI_16_BIT OR _SPI_CLK_IDLE_HIGH OR _SPI_FIRST_CLK_EDGE_TRANSITION);

// Установите   SPI1 в главный режим, длина данных - 16 бит, часы = 2 МГц, время   ожидания IDLE и данные, переданные при первом фронте перехода по фронту,   на GPIO_PORTE:
SPI1_Init_Advanced(2000000, _SPI_MASTER, _SPI_16_BIT OR _SPI_CLK_IDLE_HIGH OR _SPI_FIRST_CLK_EDGE_TRANSITION, @_GPIO_MODULE_SPI1_E023);

MSP432

// Установите   SPI1 в главный режим, 3-контактный интерфейс, SMCLK, деленный на 6,   сначала передается MSB, данные изменяются на первом фронте UCLK и   фиксируются на следующем краю, неактивное состояние низкое:
SPI1_Init_Advanced(_SPI_MASTER, 6, _SPI_CLOCKSOURCE_SMCLK, _SPI_MSB_FIRST, _SPI_PHASE_DATA_CHANGE_FIRST_CAPTURE_NEXT, _SPI_CLK_IDLE_LOW, _SPI_3PIN, @_GPIO_MODULE_SPIA0_A123);

STM32

// Установите   SPI1 в главный режим, длина данных - 8 бит, часы = Периферийные / 64,   минимальное время ожидания IDLE и данные, переданные при первом переходе   по фронту тактовой частоты, сначала передаются MSB, Slave Select   Disabled:
SPI1_Init_Advanced(_SPI_FPCLK_DIV64, _SPI_MASTER OR _SPI_8_BIT OR _SPI_CLK_IDLE_LOW OR _SPI_FIRST_CLK_EDGE_TRANSITION OR _SPI_MSB_FIRST OR _SPI_SS_DISABLE OR _SPI_SSM_ENABLE OR _SPI_SSI_1, @_GPIO_MODULE_SPI1_PA567);

CEC1x02

// Установите   SPI0 с тактовой частотой = 1 МГц, сначала отправляется MSB, состояние   низкого уровня синхронизации ID и данные, передаваемые при восходящем   фронте перехода по фронту :
SPI1_Init_Advanced(1000000,  _SPI_MSB_FIRST, _SPI_CLK_IDLE_LOW OR _SPI_SAMPLE_DATA_RISING_EDGE);

Kinetis

// Установите   SPI1 в главный режим, длина данных - 8 бит, часы = 8 МГц, минимальное   время ожидания IDLE и данные, переданные при первом переходе по фронту   тактовой частоты, сначала переданный MSB:
SPI1_Init_Advanced(8000000, _SPI_CFG_MASTER | _SPI_CFG_FRAME_SIZE_8BITS | _SPI_CFG_CLK_IDLE_LOW | _SPI_CFG_CLK_PHASE_CAPT_LEADING | _SPI_CFG_MSB_FIRST, &_GPIO_Module_SPI0_PD1_3_2);
Примечания
  • Процедуры библиотеки SPI требуют указать модуль, который вы хотите использовать. Чтобы выбрать желаемый модуль SPI, просто измените букву x в прототипе подпрограммы на число от 0 до 8.
  • Количество модулей SPI на каждый MCU отличается от чипа до чипа. Перед использованием этой библиотеки ознакомьтесь с соответствующей таблицей данных.
  • SPI_Rd_Ptr() и SPI_Wr_Ptr() глобальные указатели функций назначаются при инициализации модуля SPI. Они указывают на соответствующие процедуры чтения и записи (определяемые инициализированным модулем SPI), поэтому они могут использоваться для операций чтения и записи SPI.
  • Переключение между модулями SPI в библиотеке SPI осуществляется с помощью SPI_Set_Active функцияей (оба модуля SPI должны быть предварительно инициализированы).
  • Для доступных режимов работы для конкретного MCU, пожалуйста, ознакомьтесь с соответствующим техническим паспортом.

SPIx_Read

Прототип

function SPIx_Read(buffer: dword): word;

Описание

Читает одно слово из шины SPI.

Параметры
  • buffer: фиктивные данные для генерации часов (см. подробное описание модулей модулей данных SPI)
Возвращает

Полученные данные.

Требует

Процедура требует по крайней мере, один модуль SPI.

Использованный модуль SPI должен быть инициализирован перед использованием этой функции. См. также процедуры SPIx_Init и SPIx_Init_Advanced.

Example
// read a word from the SPI bus 
var take, buffer : word;
...
take := SPI1_Read(buffer);
Примечания
  • Процедуры библиотеки SPI требуют указать модуль, который вы хотите использовать. Чтобы выбрать желаемый модуль SPI, просто измените букву x в прототипе подпрограммы на число от 0 до 8.
  • Количество модулей SPI на каждый MCU отличается от чипа до чипа. Перед использованием этой библиотеки ознакомьтесь с соответствующей таблицей данных.

SPIx_Write

Прототип

procedure SPIx_Write(data_out : word);

Описание

Записывает одно слово через шину SPI.

Параметры
  • data_out: data to be sent
Возвращает

Ничего.

Требует

Процедура требует по крайней мере, один модуль SPI.

Использованный модуль SPI должен быть инициализирован перед использованием этой функции. См. также процедуры SPIx_Init и SPIx_Init_Advanced.

Example
// write a word to the SPI bus
var data_out : word;
...
SPI1_Write(data_out);
Примечания
  • Процедуры библиотеки SPI требуют указать модуль, который вы хотите использовать. Чтобы выбрать желаемый модуль SPI, просто измените букву x в прототипе подпрограммы на число от 0 до 8.
  • Количество модулей SPI на каждый MCU отличается от чипа до чипа. Перед использованием этой библиотеки ознакомьтесь с соответствующей таблицей данных.

SPI_Set_Active

Прототип

procedure SPI_Set_Active(read_ptr : ^TSPI_Rd_Ptr; write_ptr : ^TSPI_Wr_Ptr);

Описание

Устанавливает активный модуль SPI, который будет использоваться функциями SPIx_Read и SPIx_Write.

Параметры

Параметры :

Возвращает

Ничего.

Требует

Routine доступен только для MCU с несколькими модулями SPI.

Использованный модуль SPI должен быть инициализирован перед использованием этой функции. См. также процедуры SPIx_Init и SPIx_Init_Advanced.

Example
SPI_Set_Active(@SPI1_Read, @SPI1_Write); // Sets the SPI1 module active
Примечания

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

SPI_Read

Прототип

function SPI_Read(buffer: word): word;

Описание

Читает одно слово или байт из шины SPI.

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

Параметры
  • buffer: фиктивные данные для генерации часов (см. подробное описание модулей модулей данных SPI)
Возвращает

Полученные данные.

Требует

Процедура требует по крайней мере, один модуль SPI.

Использованный модуль SPI должен быть инициализирован перед использованием этой функции. См. также процедуры SPIx_Init и SPIx_Init_Advanced.

Example
// прочитать слово из шины SPI
var take, buffer : word;
...
take := SPI_Read(buffer);
Примечания

Нет.

SPI_Write

Прототип

procedure SPI_Write(data_out : word);

Описание

Записывает одно слово или байт через шину SPI.

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

Параметры
  • data_out: отправляемые данные
Возвращает

Ничего.

Требует

Процедура требует по крайней мере, один модуль SPI.

Использованный модуль SPI должен быть инициализирован перед использованием этой функции. См. также процедуры SPIx_Init и SPIx_Init_Advanced.

Example
// записаить слово на шину SPI
var data_out : word;
...
SPI_Write(data_out);
Примечания

Нет.