Список изменений библиотеки HAL для процессора 1967ВН044.

--------------------------------------------------------------------------------

v1.08.00 (09.10.2026)

    - hal_dma:
      - исправлено значение определения DMA_DCA_EXT_MEM (0x4.. изменено на 0x8..);
      - определения DMA_DCA_xx, TCB_INTMEMxx и TCB_EXTMEMxx перенесены в def1967VN044.h;
    - hal_gpio:
      - изменена функция HAL_GPIO_ReadPins(): для GPIO_PxPort_A читается регистр DR (выходные значения), а для GPIO_PxPort_D - регистр PXD (входные значения);
      - добавлены функции HAL_GPIO_ReadOutputPins() и HAL_GPIO_Px_ReadOutputPins() для чтения выходных значений портов;
      - скорректирована документация:
        - добавлено описание функций HAL_GPIO_ReadOutputPins() и HAL_GPIO_Px_ReadOutputPins();
        - уточнено описание функций HAL_GPIO_PxD_Init() и HAL_GPIO_PxD_DeInit();
    - hal_uart: в функции HAL_UART_Init() для процессоров К1967ВН044 рев. 3 добавлен расчет дробной части делителя UART;
    - hal_canfd: добавлена документация.

--------------------------------------------------------------------------------

v1.07.00 (23.04.2025)

    - Добавлена поддержка процессоров К1967ВН044 рев. 3:
      - добавлены определения и драйверы контроллеров: CANFD, USB, ETHERNET MAC;
      - добавлена поддержка контроллеров UART2 и UART3;
      - hal_interrupt: добавлен новый функционал;
      - hal_nand: добавлены новые определения;
      - hal_cmu: добавлены новые определения;
      - hal_i2c: добавлена функция HAL_I2C_SetupGpioPC23().
    - Во всех библиотечных файлах: изменена шапка, скорректировано форматирование, добавлены комментарии.
    - Описание периферии вынесено из заголовочных файлов драйверов в общий файл def1967VN044_periph.h.
    - Типы вынесены в файл hal_typedef.h.
    - Функции assert выделены в отдельный модуль hal_assert.
    - Драйверы MDR1636x и driver1967VN044_NANDSamsung исключены из HAL и перенесены в демопроекты.
    - Расширено описание файла 1967VN044_HAL_config_sample.h.
    - hal_uart: добавлена функция HAL_UART_Read() для чтения данных из FIFO приемника.
    - hal_cmu: расширен функционал драйвера.
    - hal_gpio: из HAL_GPIO_Init() исключена неявная запись регистров DR и INVR, которая может влиять на работу внешних выводов.
    - hal_i2c: из HAL_I2C_Enable() исключен неявный вызов глобального разрешения прерываний через GIE, так как он может нарушить работу внешнего кода, использующего HAL.

--------------------------------------------------------------------------------

v1.06.02 (03.10.2023)

    - hal_gtimer:
      - изменена разрядность регистра PSG (Prescaler) с 16 бит на 32 бита;
      - скорректированы опечатки в комментариях.
    - hal_rtc:
      - добавлена функция HAL_RTC_InitSecCounter() для инициализации счетчика секунд RTC_CNT;
      - скорректирована функция HAL_RTC_GetCurrectClock().
    - hal_link: в связи с корректировкой builtin-функций изменена функция HAL_LinkTx_GetStatCl() (чтение выполняется с помощью builtin-функций).

--------------------------------------------------------------------------------

v1.06.01 (07.04.2023)

    - hal_gpio.h: добавлен режим GPIO_PinMode_AltPU, скорректирована документация.
    - hal_link.c: изменена функция HAL_LinkTx_GetStatCl() для чтения без builtin-функций.
    - hal_gtimer:
      - скорректированы функции HAL_GTIMER_ChnOutInit(), HAL_GTIMER_ChnOutStructInit(), HAL_GTIMER_ClearFlag();
      - названия полей регистров и типов скорректированы в соответствии со спецификаций;
      - добавлены биты WR_CMPL1 и EV_DELAY, а также соответствующие функции HAL_GTIMER_GetChnWriteComplete1() и HAL_GTIMER_ChnEventDelay_Cmd();
      - добавлены функции HAL_GTIMER_SetCntPrescaler(), HAL_GTIMER_SetCntAutoreload(), HAL_GTIMER_GetCntAutoreload(), HAL_GTIMER_SetCounterDirection();
      - скорректирована документация.
    - driver1967VN044_NANDSamsung: добавлена возможность выбора порта PA для работы с NAND-Flash памятью, скорректирована документация.

--------------------------------------------------------------------------------

v1.06.00 (28.10.2022)

    - Изменена шапка всех библиотечных файлов.
    - hal_milstd.h, hal_milstd.c: в соответствии со спецификацией изменен функционал регистров CONTROL (биты 23-20) и STATUS (биты 10-6), 
      скорректирована документация hal_milstd.docx.
    - hal_gpio.c: исправлено включение внутренних резисторов доопределения, скорректирована документация hal_gpio.docx.
    - hal_updown.h: исправлен тип регистра DR на __builtin_quad (128-разрядный).
    - hal_sys.c: функция HAL_SYS_SDRAMRegenPer(), исправлено обращение к регистру SD_REP.
    - driver1967VN044_NANDSamsung.c: добавлена маска при настройке GPIO, чтобы не сбрасывались предыдущие настройки.
    - hal_audio.c:
      - скорректирована маска размера данных (передача выполняется словами) в HAL_AUDIO_StartDMA_TX_2BUF() и HAL_AUDIO_StartDMA_RX_2BUF();
      - раскомментирована запись конфигурации в регистры DMA в HAL_AUDIO_StartDMA_TX_2BUF() и HAL_AUDIO_StartDMA_RX_2BUF().
    - hal_rtc.c: исправлен расчёт делителя в HAL_RTC_InitTicPeriodUS().
    - hal_sys.h: добавлено публичное объявление HAL_SYS_MultipleWriteSysconSdrconEn().
    - def1967VN044.h: добавлены дефайны SYSCON_MEM_WID32/16.
    - Добавлен драйвер для работы с внешней памятью 1636РРx.
    - Внесены небольшие правки в документацию hal_dma.docx, hal_link.docx, hal_spi.docx, hal_sys.docx, hal_arinc.docx.

--------------------------------------------------------------------------------

v1.05.00 (01.11.2021)

    - Изменён способ задания внешней тактовой частоты - частота может быть задана или с помощью конфигурационного файла «1967VN044_HAL_config.h»,
      который пользователь самостоятельно определяет в своём проекте, или с помощью макрос XTI_KHZ, который должен быть задан иным образом 
      (например, с помощью опции компилятора).

--------------------------------------------------------------------------------

v1.04.02 (01.04.2021)

    - hal_link.h: изменено название "Link_BitOrder_OddFrontEvenCut" на "Link_BitOrder_EvenFrontOddCut".
    - hal_link.h, hal_link.docx: исправлено описание элементов "Rcode" и "Tcode".
    - def1967VN044.h: изменена кодировка с UTF-8-BOM на UTF-8 для совместимости с ассемблером.

--------------------------------------------------------------------------------

v1.04.01 (13.11.2020)

    - В начало всех исходных файлов добавлена информация об авторских правах (copyright).

--------------------------------------------------------------------------------

v1.04.00 (01.10.2020)

    - hal_dma.c: изменён атрибут выравнивания для учёта размерности CHAR.
    - Скорректирована документация:
      - в примерах, где необходимо было выравнивание массива, добавлен атрибут __attribute((aligned(...)));
      - #pragma interrupt заменена на __attribute((interrupt));
      - изменено название файла, в котором задаётся частота XTI_KHZ, с hal_pll.h на 1967VN044_HAL_config.h;
      - исправлены опечатки.
    - hal_uart.c, hal_spi.c, hal_i2c.c: #pragma interrupt заменена на __attribute((interrupt)).
    - hal_rtc.c: добавлено подключение библиотеки <stdlib.h> для явного объявления функции abs().
    - hal_interrupt.h, hal_interrupt.docx: переименованы названия запросов прерываний с intTIMx на intGTMRx.
    - hal_cmu.h: переименованы TMRx на GTMRx.
    - hal_gtimer.h, hal_gtimer.c: изменено название структур таймера с функцией Захвата/ШИМ, связанных с регистрами DMA_REx.
      hal_dma.c: изменено название запросов DMA от таймера с функцией Захвата/ШИМ с "dmaGTIMERx_PWMy" на "dmaGTIMERx_REQy".
      Соответствующим образом изменена документация на HAL.
    - hal_dma.c: исправлена функция HAL_DMA_GetChannelStatusClear().
    - HAL требует обязательного наличия в проекте конфигурационного файла «1967VN044_HAL_config.h». 
      В этом файле должно быть макроопределение XTI_KHZ, которое задаёт внешнюю частоту XTI.
      Из hal_pll.h удалено макроопределение XTI_KHZ.
      В hal_1967VN044.h добавлено подключение конфигурационного файла. В поставку включён пример конфигурационного файла 1967VN044_HAL_config_sample.h.
      Добавлен документ "General_description", в котором указаны требования к конфигурационному файлу.

--------------------------------------------------------------------------------

v1.03.00 (30.06.2020)

    - HAL_GPTIMER переименован на HAL_TIMER. Соответствующим образом переименованы все названия регистров и структур в исходном коде, 
      переименована и изменена документация на HAL. 
    - HAL_TIMER переименован на HAL_GTIMER. HAL_GPTIMER переименован на HAL_TIMER. 
      Соответствующим образом переименованы все названия регистров и структур в исходном коде, переименована и изменена документация на HAL.
    - hal_sys.h: удалено макроопределение FIX_IT_BUG().

--------------------------------------------------------------------------------

v1.02.00 (01.04.2020)

    - Обновлён драйвер HAL_AUDIO. Добавлены функции для приёма аудиоданных, а также для работы с цепочкой из двух буферов.
    - hal_dma.c, hal_dma.h: добавлена функция HAL_DMA_GetDcAddr().
    - Добавлены комментарии на английском языке для файлов директории scr.
    - Реализован HAL для группы регистров устройства защиты памяти (PU).
    - hal_dma.c: внесены небольшие корректировки.

--------------------------------------------------------------------------------

v1.01.01 (28.12.2019)

    - def1967VN044.h: изменена кодировка файла с UTF-8 BOM на UTF-8.
    - def1967VN044.h: добавлены недостающие макроопределения базовых адресов блоков.

--------------------------------------------------------------------------------

v1.01.00 (06.09.2019)

    - hal_i2c.c, hal_pll.c, hal_spi.c, hal_uart.c: добавлены volatile глобальным структурам для корректной работы кода при установке опций оптимизации.
    - Driver1967VN044_NANDSamsung.c: добавлены функции «Driver_NANDSamsung_reset()», «Driver_NANDSamsung_Read_id()», «Driver_NANDSamsung_Read_status()».
    - hal_gpio.c: добавлена функция «HAL_GPIO_Px_AltFullDeInit()».
    - Скорректирована документация 1967VN044\HAL\doc для следующих модулей: Driver_NANDSamsung.docx, hal_link.docx, hal_spi.docx.
    - hal_dma.c, hal_rtc.c: внесены небольшие корректировки.

--------------------------------------------------------------------------------

v1.00.00

    - Первоначальная версия.
