ΣSigmaStudio English

Программатор флэш-памяти (ADAU145x)

Этот модуль обеспечивает поддержку записи необработанных данных во внешнюю флэш-память через I2C/SPI. Запись через I2C/SPI выполняется во время инициализации до начала обработки звука в схеме.


Программатор флэш-памяти (ADAU145x)

Конфигурации

Нажмите кнопку настройки, чтобы сконфигурировать интерфейс SPI/I2C для модуля. Конфигурации

GUI Control NameDefault ValueRangeFunction Description
Protocol SPISPI/I2C Протокол Master Control Port
Bit Rate100kHZ 100 kHZ - 100000 kHZ (для SPI)/ 400 или 800 или 1000 kHz (для I2C)Скорость SPI/I2C
Slave Select0 0-6 Выбор ведомого устройства для SPI. Окно регистров должно быть настроено в соответствии с этим выбором. Пожалуйста, обратитесь к примечанию ниже.
Sub-Address Bytes2 1-4 Количество байтов адреса, исключая команду чтения/записи
PageSize128KB0-32MBРазмер страницы флэш-памяти
SPI ModeMode 3 Mode0/Mode3Режим работы SPI
R/W (Chip Address) Bytes10-255Командные байты (количество байтов, необходимых для команды)
Write Instruction (SPI)20-255Значение инструкции для операции записи (0x0 для аудиоустройств ADI, обычно 0x2 для EEPROM/флэш-памяти)
Read Instruction (SPI)30-255Значение инструкции для операции чтения (0x1 для аудиоустройств ADI, обычно 0x3 для EEPROM/флэш-памяти)
Write-Enable instruction (SPI)60-255Значение инструкции для операции разрешения записи в устройство
Block Protection Unlock (SPI)1520-255Команда разблокировки защиты блоков для устройств флэш-памяти SPI. Это необязательная команда. Её можно отключить.
Chip-Erase instruction (SPI)960-255Значение инструкции для операции стирания устройства
Chip-Erase Time (SPI)5 sec1-600 secВремя, необходимое для операции стирания микросхемы
Block/Sector Ersae Insutruction (SPI)2160-255Команда стирания блока/сектора для устройств флэш-памяти SPI. Это необязательная команда. Её можно отключить.
Block/Sector Address to Ersae (SPI)00-16777215Адрес блока/сектора для стирания устройств флэш-памяти SPI по блокам/секторам. Это необязательная команда. Её можно отключить, отключив команду стирания блока/сектора (Block/Sector Ersae Insutruction).
Data File NA NA Необработанные данные для записи во флэш-память (может быть ASCII-текстовым файлом / двоичными файлами, такими как wav-файл)
Data File Mode ASCII ASCII/Binary Режим записи файла. Аудиофайлы, такие как .wav, должны записываться в двоичном режиме
Configurable Address Disabled Enable/Disable Включение/отключение начального адреса для каждого файла
Start Address 0 0 - Максимальный размер FLASH/EEPROM в байтах (с шагом по размеру страницы) Запись данных во флэш-память/EEPROM, начиная с указанного адреса

Любое изменение этих параметров конфигурации SPI/I2C требует перекомпиляции.
Примечание: На следующем изображении показан пример ASCII-файла данных.

ding.txt
[ASCII 44100Hz, Channels: 2, Samples: 5, Flags: 0]                        
-0.005768 
-0.005768 
-0.003235 
-0.003235 
-0.002167 
-0.002167 
-0.004151 
-0.004151 
-0.005554 
-0.005554

Запись нескольких файлов

Количество файлов для записи можно настроить, щелкнув правой кнопкой мыши по модулю. Если выбрано несколько файлов, все они будут записаны один за другим. Поддерживается до 32 файлов.
Запись нескольких файлов
Запись нескольких файлов

Пример

Запись Wav-файла в SPI EEPROM с помощью программатора флэш-памяти (ADAU1452)

  • Добавьте модуль Flash Programmer в схему.
  • Настройте параметры SPI в окне свойств Control Port. (На рисунке ниже показана конфигурация SPI, необходимая для записи в EEPROM на плате EVAL-ADAU1452MINIZ)


Запись Wav-файла в SPI EEPROM с помощью программатора флэш-памяти (ADAU1452)

  • Выберите двоичный режим (Binary mode)
  • Выберите Wav-файл для записи (Убедитесь, что размер wav-файла не превышает размер EEPROM. В случае EVAL-ADAU1452MINIZ размер wav-файла не должен превышать 128 КБ)
  • Нажмите OK. Затем выполните Link compile download.
  • Нажмите OK, когда появится следующее предупреждение.


Запись Wav-файла в SPI EEPROM с помощью программатора флэш-памяти (ADAU1452)

  • Затем wav-файл записывается в EEPROM.


Запись Wav-файла в SPI EEPROM с помощью программатора флэш-памяти (ADAU1452)

  • После завершения записи нажмите «Да» в следующем окне, чтобы проверить операцию записи.


Запись Wav-файла в SPI EEPROM с помощью программатора флэш-памяти (ADAU1452)

  • Проверка должна пройти успешно, как показано ниже.


Запись Wav-файла в SPI EEPROM с помощью программатора флэш-памяти (ADAU1452)

  • Проверка не удастся, если файл больше 128 Кбайт. Убедитесь, что файл не больше 128 Кбайт, и повторите запись, если она не удалась.


Запись Wav-файла в SPI EEPROM с помощью программатора флэш-памяти (ADAU1452)

Flash Programmer (ADAU145x) в SigmaStudio: настройка и параметры

Flash Programmer (ADAU145x) — это модуль Master Control Port в среде SigmaStudio, предназначенный для записи необработанных данных во внешнюю флэш-память или EEPROM через интерфейсы I2C или SPI. Запись выполняется на этапе инициализации, до начала обработки звукового сигнала в схеме, что позволяет загружать данные, например WAV-файлы, для последующего использования процессором ADAU145x. Принцип работы модуля основан на прямой передаче данных из выбранного файла во внешнее запоминающее устройство по шине I2C или SPI. Для корректной работы необходимо настроить параметры интерфейса в окне конфигурации. Ключевыми настройками являются выбор протокола (SPI или I2C), скорость передачи (Bit Rate), а также количество байтов адреса (Sub-Address Bytes). Для SPI дополнительно указывается выбор ведомого устройства (Slave Select) и режим работы (SPI Mode). Важно помнить, что любые изменения конфигурации интерфейса требуют перекомпиляции проекта. Для работы с конкретной микросхемой флэш-памяти необходимо задать значения командных инструкций. В параметрах модуля указываются инструкции записи (Write Instruction), чтения (Read Instruction) и разрешения записи (Write-Enable Instruction). Для аудиоустройств Analog Devices обычно используются значения 0x0, 0x1 и 0x6 соответственно, тогда как для стандартных EEPROM — 0x2, 0x3 и 0x6. Также доступны опциональные команды стирания: полного (Chip-Erase) или поблочного (Block/Sector Erase), с указанием времени и адреса операции. В поле Data File указывается путь к файлу с необработанными данными.