![]() |
Описание библиотеки микросхемы 5023ВС016 процессора "Спутник"
|
Этот файл содержит структуры, макросы и функции необходимые для взаимодействия с аппаратным модулем приемника телекомандной информации. Подробнее...
#include "types.h"
Структуры данных | |
struct | TCRX_DSC_T |
Структура дескрипторов модуля приемника телекомандной информации Подробнее... | |
struct | TCRX_T |
Структура для доступа к регистрам модуля приемника телекомандной информации Подробнее... | |
Макросы | |
#define | TCRX_DSC_COUNT 16 |
#define | DSCR_PTR(x) ((uint32_t)((x & 0x3FFFFFFF) << 0)) |
Макросы для DSCR_PTR дескриптора Подробнее... | |
#define | TCRX_DSC_DSCR_FLAG_SIZE_SIZE(x) ((uint32_t)((x & 0x3FF) << 0)) |
Макросы для DSCR_FLAG_SIZE дескриптора Подробнее... | |
#define | TCRX_DSC_DSCR_FLAG_SIZE_SOF ((uint32_t)(1 << 16)) |
#define | TCRX_DSC_DSCR_FLAG_SIZE_EOF ((uint32_t)(1 << 17)) |
#define | TCRX_DSC_DSCR_FLAG_SIZE_ERROR ((uint32_t)(1 << 18)) |
#define | TCRX_DSC_DSCR_FLAG_SIZE_READY ((uint32_t)(1 << 31)) |
#define | TCRX_DSCR_CURRENT_NUM(x) ((uint32_t)((x & 0xF) << 0)) |
Макросы для DSCR_CURRENT. Подробнее... | |
#define | TCRX_DSCR_CURRENT_WORK_FLAG ((uint32_t)(1 << 31)) |
#define | TCRX_GLOBAL_ENABLE_EN ((uint32_t)(1 << 0)) |
Макросы для GLOBAL_ENABLE. Подробнее... | |
#define | TCRX_PHY_FIFO_OVERFLOW ((uint32_t)(1 << 0)) |
Макросы для PHY_FIFO_OVERFLOW. Подробнее... | |
#define | TCRX_START_SEQ_DATA(x) ((uint32_t)((x & 0xFFFF) << 0)) |
Макросы и типы для START_SEQ. Подробнее... | |
#define | TCRX_DSCR_MAX_SIZE 1024 |
Макросы, относящиеся к логике работы контроллера Подробнее... | |
Перечисления | |
enum | TCRX_CODER_SEL_T { TCRX_CODER_SEL_RAND_SEL = ((uint32_t)(1 << 0)), TCRX_CODER_SEL_BCH_SEL = ((uint32_t)(1 << 1)) } |
Типы для CODER_SEL. Подробнее... | |
enum | TCRX_START_SEQ_T { TCRX_START_SEQ_ALLOW_1_ERR = ((uint32_t)(1 << 31)) } |
Функции | |
FlagStatus | TCRX_Dscr_Ready (uint32_t index) |
Возвращает значение флага DSCR_READY, показывающее, открыт ли дескриптор Подробнее... | |
uint32_t | TCRX_Get_Data_Size (uint32_t index) |
Возвращает количество данных, принятых дескриптором Подробнее... | |
FlagStatus | TCRX_SOF_Flag (uint32_t index) |
Возвращает значение флага SOF. Подробнее... | |
FlagStatus | TCRX_EOF_Flag (uint32_t index) |
Возвращает значение флага EOF. Подробнее... | |
FlagStatus | TCRX_ERROR_Flag (uint32_t index) |
Возвращает значение флага ERROR. Подробнее... | |
void | TCRX_Set_Current_Descriptor (uint32_t index) |
Выбор текущего дескриптора для приёма Подробнее... | |
uint32_t | TCRX_Get_Current_Descriptor () |
Получение номера активного дескриптора Подробнее... | |
void | TCRX_Enable () |
Активация приёма данных Подробнее... | |
void | TCRX_Disable () |
Отключение приёма данных Подробнее... | |
void | TCRX_Set_Decoder (uint32_t randomizer, uint32_t bch, uint32_t viterbi) |
Настройка параметров декодера Подробнее... | |
FlagStatus | TCRX_FIFO_Overflow () |
Возвращает значение флага переполнения FIFO. Подробнее... | |
void | TCRX_Set_Start_Sequence (uint32_t start_seq, uint32_t allow_1_err) |
Установка значения маркера начала фрейма и разрешения единичной ошибки в маркере Подробнее... | |
void | TCRX_Set_Tail_Sequence (uint32_t tail_first, uint32_t tail_second) |
Установка значения маркера конца фрейма Подробнее... | |
void | TCRX_OpenDescriptor (uint32_t index, uint32_t pointer, uint32_t size) |
Открытие дескриптора на приём Подробнее... | |
Этот файл содержит структуры, макросы и функции необходимые для взаимодействия с аппаратным модулем приемника телекомандной информации.
Copyright(C) НПП Цифровые решения, 2017 Copyright(C) Команда разработчиков НПП Цифровые решения Все права защищены.
Программное обеспечение, описанное в этом файле, предназначено только для демонстрационных целей, и предоставляет программистам информацию о продукции организации "Цифровые решения". Это программное обеспечение поставляется "КАК ЕСТЬ" без каких-либо гарантий, "Цифровые решения" отказываются от любых гарантий, фактических или подразумеваемых, включая все подразумеваемые гарантии товарной пригодности, пригодности для конкретной цели и сохранения прав интеллектуальной собственности. Органицация "Цифровые решения" не несет никакой ответственности за использование программного обеспечения, не предоставляет лицензий или прав на патент, авторское право, или любые другие права интеллектуальной собственности, на какие-либо продукты. Организация "Цифровые решения" оставляет за собой право вносить изменения в программное обеспечение без уведомления. Организация "Цифровые решения" также не дает никаких заверений или гарантий, что это программное приложение подойдет для использования без дальнейшего тестирования или модификаций.
Разрешение на использование, копирование, изменение и распространение этого программного обеспечения и документации предоставляется согласно условиям "Цифровых решений" и соответствующих авторских прав своей лицензии без оплаты, при условии, что это программное обеспечнение используется совместно с микроконтроллерами организации "Цифровые решения". Эти права должны распространяться во всех копиях этого кода.
См. определение в файле tcrx.h
#define DSCR_PTR | ( | x | ) | ((uint32_t)((x & 0x3FFFFFFF) << 0)) |
#define TCRX_DSC_COUNT 16 |
#define TCRX_DSC_DSCR_FLAG_SIZE_EOF ((uint32_t)(1 << 17)) |
#define TCRX_DSC_DSCR_FLAG_SIZE_ERROR ((uint32_t)(1 << 18)) |
#define TCRX_DSC_DSCR_FLAG_SIZE_READY ((uint32_t)(1 << 31)) |
#define TCRX_DSC_DSCR_FLAG_SIZE_SIZE | ( | x | ) | ((uint32_t)((x & 0x3FF) << 0)) |
#define TCRX_DSC_DSCR_FLAG_SIZE_SOF ((uint32_t)(1 << 16)) |
#define TCRX_DSCR_CURRENT_NUM | ( | x | ) | ((uint32_t)((x & 0xF) << 0)) |
#define TCRX_DSCR_CURRENT_WORK_FLAG ((uint32_t)(1 << 31)) |
#define TCRX_DSCR_MAX_SIZE 1024 |
#define TCRX_GLOBAL_ENABLE_EN ((uint32_t)(1 << 0)) |
#define TCRX_PHY_FIFO_OVERFLOW ((uint32_t)(1 << 0)) |
#define TCRX_START_SEQ_DATA | ( | x | ) | ((uint32_t)((x & 0xFFFF) << 0)) |
enum TCRX_CODER_SEL_T |
enum TCRX_START_SEQ_T |
FlagStatus TCRX_Dscr_Ready | ( | uint32_t | index | ) |
FlagStatus TCRX_EOF_Flag | ( | uint32_t | index | ) |
FlagStatus TCRX_ERROR_Flag | ( | uint32_t | index | ) |
FlagStatus TCRX_FIFO_Overflow | ( | ) |
uint32_t TCRX_Get_Current_Descriptor | ( | ) |
uint32_t TCRX_Get_Data_Size | ( | uint32_t | index | ) |
void TCRX_OpenDescriptor | ( | uint32_t | index, |
uint32_t | pointer, | ||
uint32_t | size | ||
) |
Открытие дескриптора на приём
index | : Номер дескриптора |
pointer | : Адрес памяти, по которому расположено начало области для записи. Должен быть выровнен по 4 байтной границе |
size | : Размер области памяти, в которую будут записываться принятые данные. (значения от 0 до 1023) |
Открытие дескриптора на приём
void TCRX_Set_Current_Descriptor | ( | uint32_t | index | ) |
void TCRX_Set_Decoder | ( | uint32_t | randomizer, |
uint32_t | bch, | ||
uint32_t | viterbi | ||
) |
Настройка параметров декодера
randomizer | : Включение рандомизатора, принимает следующие значения:
|
bch | : Включение декодера БЧХ, принимает следующие значения:
|
viterbi | : Включение сверточного декодера витерби, принимает следующие значения:
|
randomizer | Включение рандомизатора, принимает следующие значения:
|
bch | : Включение декодера БЧХ, принимает следующие значения:
|
viterbi | : Включение сверточного декодера витерби, принимает следующие значения:
|
void TCRX_Set_Start_Sequence | ( | uint32_t | start_seq, |
uint32_t | allow_1_err | ||
) |
Установка значения маркера начала фрейма и разрешения единичной ошибки в маркере
start_seq | : Значение маркера начала фрейма. Длина 16 бит. Первый принятый бит сравнивается со старшим битом |
allow_1_err | : Разрешение или запрещение единичной ошибки в маркере начала фрейма, принимает следующие значения:
|
void TCRX_Set_Tail_Sequence | ( | uint32_t | tail_first, |
uint32_t | tail_second | ||
) |
Установка значения маркера конца фрейма
tail_first | : Значение маркера конца фрейма, первая часть. Длина 32 бит. Первый принятый бит сравнивается со старшим битом |
tail_second | : Значение маркера конца фрейма, вторая часть. Длина 32 бит. Последний принятый бит сравнивается с младшим битом |
FlagStatus TCRX_SOF_Flag | ( | uint32_t | index | ) |