Описание библиотеки микросхемы 5023ВС016 процессора "Спутник"
Макросы | Функции | Переменные
Файл spi_test.c

Этот файл содержит тестовую программу для аппаратного модуля SPI. Подробнее...

#include "spi_test.h"

См. исходные тексты.

Макросы

#define SPI_BUF_SIZE   64
 
#define SPI_DATA_BIT_NUM(databits)   (databits+1)
 
#define SPI_DATA_BYTES(databits)   (((databits) > SPI_BITS_8) ? 2:1)
 
#define SPI_LO_BYTE_MSK(databits)   ((SPI_DATA_BYTES(databits) > 1) ? 0xFF:(0xFF>>(8-SPI_DATA_BIT_NUM(databits))))
 
#define SPI_HI_BYTE_MSK(databits)   ((SPI_DATA_BYTES(databits) > 1) ? (0xFF>>(16-SPI_DATA_BIT_NUM(databits))):0)
 

Функции

void Init_ports_SPI ()
 настройка портов для SPI для первого из режимов альтернативных функций Подробнее...
 
static uint8_t Buffer_Verify (uint8_t bits, uint16_t *src_addr, uint16_t *dst_addr)
 Проверка данных после транзакции Подробнее...
 
void SPI_1_IRQ (void)
 Обработчик прерываний от SPI1. Подробнее...
 
void SPI_2_IRQ (void)
 Обработчик прерываний от SPI2. Подробнее...
 
void DMA_DONE_SPI_1_IRQ (void)
 Обработчик прерывания для DMA SPI1. Подробнее...
 
void DMA_DONE_SPI_2_IRQ (void)
 Обработчик прерывания для DMA SPI2. Подробнее...
 
void start_init ()
 
uint32_t SPI_Test (void)
 Основная программа тестирования SPI. Подробнее...
 

Переменные

const uint32_t sys_freq = 80000000
 Системная частота Подробнее...
 
char dbg_buffer [256]
 Отладочный буфер Подробнее...
 
DMA_CTRL_T DMA_SPI_CTRL
 
static uint8_t dma_tx_done
 
static uint8_t dma_rx_done
 
static uint8_t int_done
 
static uint16_t Master_Tx_Buf [SPI_BUF_SIZE]
 
static uint16_t Slave_Tx_Buf [SPI_BUF_SIZE]
 
static uint16_t Master_Rx_Buf [SPI_BUF_SIZE]
 
static uint16_t Slave_Rx_Buf [SPI_BUF_SIZE]
 
static SPI_CONFIG_T ssp_config
 
static SPI_DATA_SETUP_T master_setup
 
static SPI_DATA_SETUP_T slave_setup
 

Подробное описание

Этот файл содержит тестовую программу для аппаратного модуля SPI.

Copyright(C) НПП Цифровые решения, 2017 Copyright(C) Команда разработчиков НПП Цифровые решения Все права защищены.

Программное обеспечение, описанное в этом файле, предназначено только для демонстрационных целей, и предоставляет программистам информацию о продукции организации "Цифровые решения". Это программное обеспечение поставляется "КАК ЕСТЬ" без каких-либо гарантий, "Цифровые решения" отказываются от любых гарантий, фактических или подразумеваемых, включая все подразумеваемые гарантии товарной пригодности, пригодности для конкретной цели и сохранения прав интеллектуальной собственности. Органицация "Цифровые решения" не несет никакой ответственности за использование программного обеспечения, не предоставляет лицензий или прав на патент, авторское право, или любые другие права интеллектуальной собственности, на какие-либо продукты. Организация "Цифровые решения" оставляет за собой право вносить изменения в программное обеспечение без уведомления. Организация "Цифровые решения" также не дает никаких заверений или гарантий, что это программное приложение подойдет для использования без дальнейшего тестирования или модификаций.

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

См. определение в файле spi_test.c

Макросы

§ SPI_BUF_SIZE

#define SPI_BUF_SIZE   64

См. определение в файле spi_test.c строка 35

§ SPI_DATA_BIT_NUM

#define SPI_DATA_BIT_NUM (   databits)    (databits+1)

См. определение в файле spi_test.c строка 36

§ SPI_DATA_BYTES

#define SPI_DATA_BYTES (   databits)    (((databits) > SPI_BITS_8) ? 2:1)

См. определение в файле spi_test.c строка 37

§ SPI_HI_BYTE_MSK

#define SPI_HI_BYTE_MSK (   databits)    ((SPI_DATA_BYTES(databits) > 1) ? (0xFF>>(16-SPI_DATA_BIT_NUM(databits))):0)

См. определение в файле spi_test.c строка 39

§ SPI_LO_BYTE_MSK

#define SPI_LO_BYTE_MSK (   databits)    ((SPI_DATA_BYTES(databits) > 1) ? 0xFF:(0xFF>>(8-SPI_DATA_BIT_NUM(databits))))

См. определение в файле spi_test.c строка 38

Функции

§ Buffer_Verify()

static uint8_t Buffer_Verify ( uint8_t  bits,
uint16_t *  src_addr,
uint16_t *  dst_addr 
)
static

Проверка данных после транзакции

См. определение в файле spi_test.c строка 70

§ DMA_DONE_SPI_1_IRQ()

void DMA_DONE_SPI_1_IRQ ( void  )

Обработчик прерывания для DMA SPI1.

См. определение в файле spi_test.c строка 135

§ DMA_DONE_SPI_2_IRQ()

void DMA_DONE_SPI_2_IRQ ( void  )

Обработчик прерывания для DMA SPI2.

См. определение в файле spi_test.c строка 145

§ Init_ports_SPI()

void Init_ports_SPI ( )

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

См. определение в файле spi_test.c строка 60

§ SPI_1_IRQ()

void SPI_1_IRQ ( void  )

Обработчик прерываний от SPI1.

См. определение в файле spi_test.c строка 101

§ SPI_2_IRQ()

void SPI_2_IRQ ( void  )

Обработчик прерываний от SPI2.

См. определение в файле spi_test.c строка 120

§ SPI_Test()

uint32_t SPI_Test ( void  )

Основная программа тестирования SPI.

См. определение в файле spi_test.c строка 192

§ start_init()

void start_init ( )

См. определение в файле spi_test.c строка 151

Переменные

§ dbg_buffer

char dbg_buffer[256]

Отладочный буфер

См. определение в файле spi_test.c строка 32

§ dma_rx_done

uint8_t dma_rx_done
static

См. определение в файле spi_test.c строка 47

§ DMA_SPI_CTRL

DMA_CTRL_T DMA_SPI_CTRL

См. определение в файле spi_test.c строка 44

§ dma_tx_done

uint8_t dma_tx_done
static

См. определение в файле spi_test.c строка 46

§ int_done

uint8_t int_done
static

См. определение в файле spi_test.c строка 48

§ Master_Rx_Buf

uint16_t Master_Rx_Buf[SPI_BUF_SIZE]
static

См. определение в файле spi_test.c строка 51

§ master_setup

SPI_DATA_SETUP_T master_setup
static

См. определение в файле spi_test.c строка 54

§ Master_Tx_Buf

uint16_t Master_Tx_Buf[SPI_BUF_SIZE]
static

См. определение в файле spi_test.c строка 49

§ Slave_Rx_Buf

uint16_t Slave_Rx_Buf[SPI_BUF_SIZE]
static

См. определение в файле spi_test.c строка 52

§ slave_setup

SPI_DATA_SETUP_T slave_setup
static

См. определение в файле spi_test.c строка 55

§ Slave_Tx_Buf

uint16_t Slave_Tx_Buf[SPI_BUF_SIZE]
static

См. определение в файле spi_test.c строка 50

§ ssp_config

SPI_CONFIG_T ssp_config
static

См. определение в файле spi_test.c строка 53

§ sys_freq

const uint32_t sys_freq = 80000000

Системная частота

См. определение в файле spi_test.c строка 31