В данном примере необходимо иметь проект, выполняемый на аппаратной плате, подключенной к хост-машине MATLAB.
Создайте основной объект MATLAB AXI. Объект соединяется с платой оборудования и подтверждает, что IP присутствует. Можно создать объект с именем поставщика или socHardwareBoard
объект.
Запись и чтение одного или нескольких адресов с помощью одной команды. По умолчанию функции автоматически увеличивают адрес для каждого слова данных. Например, напишите десять адресов, а затем считайте данные обратно из одного местоположения.
Теперь ознакомьтесь с письменными данными из десяти локаций.
rd_d =
1×10 uint32 row vector
10 11 12 13 14 15 16 17 18 19
Установите BurstType
свойство к 'Fixed'
чтобы выключить автошаг и получить доступ к одному и тому же адресу несколько раз. Например, считывайте записанные данные десять раз с одного и того же адреса.
rd_d =
1×10 uint32 row vector
10 10 10 10 10 10 10 10 10 10
Напишите инкрементные данные в десять раз по одному и тому же адресу. Окончательное значение, сохраненное в адресных 140
является 29
.
rd_d =
1×10 uint32 row vector
29 11 12 13 14 15 16 17 18 19
Кроме того, укажите адрес как шестнадцатеричную строку. Чтобы привести считанные данные к типу данных, отличному от uint32
, используйте OutputDataType
свойство.
rd_d =
Columns 1 through 10
0 0.2500 0.5000 0.7500 1.0000 1.2500 1.5000 1.7500 2.0000 2.2500
Columns 11 through 16
2.5000 2.7500 3.0000 3.2500 3.5000 3.7500
DataTypeMode: Fixed-point: binary point scaling
Signedness: Unsigned
WordLength: 6
FractionLength: 4
После завершения доступа к плате разблокируйте соединение JTAG.