Jump to content
    

SPI драйвер для ADS7046

26 минут назад, Mysteo сказал:

А если использовать T113-s3 Cortex-A7, можно будет на нем добиться желаемого под линуксом ? 

 

1 минуту назад, aaarrr сказал:

Если задействовать DSP - пожалуй, возможно. Но не уверен, стоит ли оно того.

Ну а если не сумеете задействовать ДСП, то сделайте так же на бареметал, просто одно ядро кортекса приспособьте под работу с АЦП в суперлупе, скорости хватит...

29 минут назад, Mysteo сказал:

в общем совсем не годится это железо

О чем я тут уже писал не раз...

Share this post


Link to post
Share on other sites

26 minutes ago, mantech said:

просто одно ядро кортекса приспособьте под работу с АЦП в суперлупе, скорости хватит...

...что, конечно, достижимо и без бареметал, но всё равно какой-то костылизм.

Share this post


Link to post
Share on other sites

On 4/8/2024 at 10:01 PM, mantech said:

Если задействовать DSP - пожалуй, возможно.

DSP Вы имеете в виду отдельный процессор на обработку сигнала ставить ? 

Share this post


Link to post
Share on other sites

10 часов назад, Mysteo сказал:

DSP Вы имеете в виду отдельный процессор на обработку сигнала ставить ? 

В Т113ом есть встроенный ДСП, работает на 600МГц, его исключительно поставить на работу с SPI и АЦП

 

10 часов назад, aaarrr сказал:

..что, конечно, достижимо и без бареметал,

На счет ДСП согласен полностью, это практически независимый блок, если отделить на него свою память или использовать страницы статической, но разделять ядра с обшим адресным пространством, ММУ, контроллером прерываний и пр под линухой... Ммм так себе задача, ИМХО... Кмк, сложность данной работы превышает затраты бареметала... Если уж на то пошло, то наверно проще автору взять T113-S4, как тут уже писали с разлоченным riscv, и поставить линуху на кортексы, а обработчик АЦП на riscv, все-таки по нему больше доки, чем по ДСП, ну эт только мое мнение, конечно)))

Edited by mantech

Share this post


Link to post
Share on other sites

I2s pcm интерфейс t113? В режиме pcm? Есои пара ацп можно с двуз сразу читать по лвум входам процессора.

Edited by GenaSPB

Share this post


Link to post
Share on other sites

On 4/1/2024 at 10:34 PM, Mysteo said:

А если вешать на обработчик прерываний, то не хило ресурсов сожрет.

cформировать CS и CLK для spi на двух каналах pwm, spi на процессоре в режиме slave, выход do с ацп подключить к MOSI и складывать данные через DMA в память

Share this post


Link to post
Share on other sites

On 4/9/2024 at 8:30 AM, mantech said:

На счет ДСП согласен полностью, это практически независимый блок, если отделить на него свою память или использовать страницы статической, но разделять ядра с обшим адресным пространством, ММУ, контроллером прерываний и пр под линухой... Ммм так себе задача, ИМХО... Кмк, сложность данной работы превышает затраты бареметала.

использовать freertos+linux - ничего сложного вообще не вижу

Share this post


Link to post
Share on other sites

1 час назад, sasamy сказал:

использовать freertos+linux

Судя по заданию ТСа фриртос тут не подойдет, никаких прерываний на РТОС шедулеры и пр, только суперлуп...

1 час назад, sasamy сказал:

cформировать CS и CLK для spi на двух каналах pwm,

Не хватит скорости, у него в задаче 2.4М выборок, т.е. клок SPI как минимум в 8-16 раз больше, а тактировка pwm модуля 24МГц, а частоту получим дел на 2.

2 часа назад, GenaSPB сказал:

I2s pcm интерфейс t113? В режиме pcm

Он совместим с SPI?

Edited by mantech

Share this post


Link to post
Share on other sites

On 4/9/2024 at 11:34 AM, mantech said:

Судя по заданию ТСа фриртос тут не подойдет, никаких прерываний на РТОС шедулеры и пр, только суперлуп

какая разница нужны прерывания или нет, с freertos не надо въезжать в архитектуру dsp, сделайте циклический опрос готовности данных spi без прерываний

On 4/9/2024 at 11:34 AM, mantech said:

Не хватит скорости, у него в задаче 2.4М выборок, т.е. клок SPI как минимум в 8-16 раз больше, а тактировка pwm модуля 24МГц, а частоту получим дел на 2.

цитата из мануала на т113, 9.10 PWM

Quote

Output frequency range: 0 to 24 MHz or 100 MHz

 

Edited by sasamy

Share this post


Link to post
Share on other sites

21 minutes ago, mantech said:

Он совместим с SPI?

он может формировать CS для этого АЦП аппаратурой. И не будет джиттера. Посмотрите на временные диаграммы в даташите АЦП - мне показалось что можно подобрать.
SPI в этом процессоре так не умеет.

Edited by GenaSPB

Share this post


Link to post
Share on other sites

С форума ST:
 

Quote

So I checked the SPI/I2S datasheet and I found that the I2S mode can be configured in ''PCM standard''. If I set a datalen of 16 bits and a channel lenght of 32 bits using a short PCMSYNC, I get exactly the signal needed by the ADC: data tranfers are 16bit wide, bit 17 to 32 are ignored during transfer and the CS signal goes high during the last bit (the 32bit) and goes down on the first. Also, the I2S mode has a separate PLL which is very useful to generate the correct sample frequency needed.I have not attached the actual ADC to the signals, but from the scope they look OK.

 

Share this post


Link to post
Share on other sites

On 4/9/2024 at 12:07 PM, GenaSPB said:

С форума ST:

модуль i2s пожалуй поинтересней будет чем pwm

Share this post


Link to post
Share on other sites

4 minutes ago, sasamy said:

pwm

я про модуль I2S/PCM написал

Share this post


Link to post
Share on other sites

On 4/9/2024 at 12:19 PM, GenaSPB said:

я про модуль I2S/PCM написал

я понял. я написал про костыль с pwm, а ваше сообщение про i2s не заметил а он тут явно лучше для ацп

 

Edited by sasamy

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...