\documentclass[12pt,a4paper,titlepage]{report}
\usepackage{lcard}
\usepackage{doxygen}

\hypersetup{
  pdftitle = {Руководство программиста для модулей L-502 E-502 и E16},
  pdfauthor = {Борисов А.В.}
}
\ltextmargin{}
\emergencystretch=75pt

\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{4}

\begin{document}
   \lcardtitlepage{Современные устройства сбора данных}{L-502/E-502/E16}{Руководство программиста}{1.1.13}{Сентябрь 2024}
   \lcardinfopage{Автор руководства}{\href{mailto:borisov@lcard.ru}{Борисов Алексей}}{Модули L-502 E-502 и E16}
  %----------------------------------------------------
  % Ревизии документа 
  %---------------------------------------------------------
  \begin{longtable}{|m{0.18\linewidth}|m{0.18\linewidth}|m{0.54\linewidth}|}
  \caption{Ревизии текущего документа}\\\hline
  \textbf{Ревизия} & \textbf{Дата} & \textbf{Описание}\\\hline
  1.0.0            & 27.06.2012    & Первая ревизия данного документа \\\hline
  1.0.1            & 22.11.2012    & Добавлено описание использования библиотеки с программами на C\# и в LabView, добавлено описание установки для ОС Linux, а также описание функций для циклического вывода \\\hline
  1.0.2            & 20.02.2013    & Добавлена ссылка на исходные коды SDK. Описание установки пакетов для Linux вынесено в отдельный документ \\\hline
  1.0.3            & 16.02.2015    & Исправлена последовательность шагов для работы с модулем при синхронном потоковом выводе. Добавлено примечание о передачи массивов в качестве выходных параметров в LabView \\\hline
  1.1.0            & 02.06.2015    & Описание изменено в соответствии с изменениями, внесенными в библиотеку для поддержки модуля E-502 (введение общих и специализированных функций). Включено краткое описание различий модулей с программной стороны. Добавлены отдельные главы, описывающие настройку модуля при работе по Ethernet и поиск модулей в локальной сети. \\\hline
  1.1.1            & 06.07.2015    & Добавлено описание возможности ожидания завершения установки циклического сигнала, добавленной в версии 1.1.2 библиотеки. В разделе отличий модулей при описании наличия ARM-контроллера в E-502 указан путь для скачивания обновлений прошивки с рекомендацией обновления. \\\hline
  1.1.2            & 10.07.2015    & Добавлено описание нового алгоритма расчета максимального размера циклического сигнала для E-502 с прошивкой ARM 1.0.3 и выше \\\hline
  1.1.3            & 28.07.2015    & Добавлено описание функций X502\_SetExtRefFreqValue() и X502\_GetRefFreqValue() \\\hline
  1.1.4            & 29.06.2016    & Указано, что установка частоты вывода доступна в L-502, начиная с версии 0.5 прошивки ПЛИС. Рекомендация при синхронном выводе на ЦАП предворительно асинхронно установить начальные значения. Добавлено описание функций X502\_CheckFeature() и X502\_OutGetStatusFlags(). \\\hline
  1.1.5            & 03.08.2016    & Добавлено описание использования библиотеки в Visual Basic 6 \\\hline
  1.1.6            & 23.08.2016    & Изменена ссылка во вступлении на обновленное общее низкоуровневое описание программиста для L-502 и E-502 \\\hline
  1.1.7            & 16.11.2016    & Добавлено описание функций X502\_CalcAdcFreq(), X502\_CalcDinFreq(), X502\_CalcOutFreq() \\\hline
  1.1.8            & 27.02.2015    & При описании синхронного и асинхронного режимов работы добавлено описание ограничения их совместного использования при запуске синхронного ввода-вывода от внешнего сигнала \\\hline
  1.1.9            & 25.12.2019    & Добавлено описание функции X502\_IsOpened(). Добавлено общее описание процедуры открытия соединения с модулем, где в частности описана ситуация, когда соединение может остаться открытым, несмотря на возвращенную ошибку при его открытии \\\hline
  1.1.10         & 21.09.2020     & Исправление ссылок на исходные коды. Переименование lqmeasstudio в X502Studio \\\hline
  1.1.11         & 26.07.2022     & В информацию о модуле добавлены флаги для определения типа ЦАП и типа процессора \\\hline
  1.1.12         & 11.04.2024     & Для E502-P1 добавлено описание функций для работы с метками времени \\\hline
  1.1.13         & 30.09.2024     & Поддержка E16 со стороны x502api\\\hline
  \end{longtable}
  \newpage  
  
  \tableofcontents
  

\chapter{О чем этот документ}
\input{sect_about}
\chapter{Установка и подключение библиотеки к проекту}
\input{sect_setup}
\chapter{Общий подход к работе с библиотекой}
\input{sect_gen_descr}

  
\chapter{Константы, типы данных и функции библиотеки}
\input{constants}

\input{types}
%\input{struct_l502_cbr_coef.tex}
%\input{struct_l502_cbr.tex}
%\input{struct_l502_info.tex}
\section{Функции}
\input{funcs_hnd}
\input{funcs_open}
\input{funcs_devrec}
\input{funcs_config}
\input{funcs_async}
\input{funcs_streams}
\input{funcs_eth_config}
\input{funcs_eth_svc_browse}
\input{funcs_dsp}
\input{funcs_flash}
\input{funcs_misc}
\chapter{Метки времени (только для E502-P1)}
\input{sect_tstp_descr}
\input{tstptypes}
\input{funcs_tstp}

\end{document}
