Программное обеспечение QSPI для STM32F103

Diger67
Вторник 02 мая 2017 г. 1:18 утра
Многие люди используют STM32F103XXX. Но у него нет периферийного модуля QSPI. После прочтения документации по памяти (W25QXXX) мы попытались записать функции, которые позволяют вам читать информацию из нее, используя этот протокол. И вот что случилось. Если кто -то заинтересован в том, чтобы поместить источник, напишите. Недостатки включают неспособность использовать DMA и расширение памяти STM32 и использование в качестве общего пространства.
https: // youtu.be/yqsgpbkaefi

AG123
Вторник 2 мая 2017 г. 11:23 утра
Я думаю, что QSPI все еще полезен для устройств Flash SPI с использованием QSPI

казалось, что STM32 обладает поддержкой аппаратной поддержки QSPI, но только для конкретных устройств
http: // www.ул.com/content/ccc/resource/ ... 227538.PDF

Даже без DMA 4 -битные параллельные чтения могли бы увидеть довольно высокую пропускную способность

victor_pv
Вторник 02 мая 2017 г. 14:17
Diger67 написал:Многие люди используют STM32F103XXX. Но у него нет периферийного модуля QSPI. После прочтения документации по памяти (W25QXXX) мы попытались записать функции, которые позволяют вам читать информацию из нее, используя этот протокол. И вот что случилось. Если кто -то заинтересован в том, чтобы поместить источник, напишите. Недостатки включают неспособность использовать DMA и расширение памяти STM32 и использование в качестве общего пространства.
https: // youtu.be/yqsgpbkaefi

Racemaniac
Вторник 02 мая 2017 г. 14:36
Есть ли какое -либо преимущество в использовании этого программного Quadspi iso просто аппаратный SPI?
Обычно такие чипы памяти поддерживают как обычную SPI, так и Quad SPI, и я предполагаю, что вы все еще быстрее используете аппаратный SPI против программного QuadSPI.
или это чип, который имеет только Quadspi?

Diger67
Вторник 02 мая 2017 г. 16:38
Реданьяк написал:Есть ли какое -либо преимущество в использовании этого программного Quadspi iso просто аппаратный SPI?
Обычно такие чипы памяти поддерживают как обычную SPI, так и Quad SPI, и я предполагаю, что вы все еще быстрее используете аппаратный SPI против программного QuadSPI.
или это чип, который имеет только Quadspi?

Racemaniac
Вторник 02 мая 2017 г. 16:45
Diger67 написал:Реданьяк написал:Есть ли какое -либо преимущество в использовании этого программного Quadspi iso просто аппаратный SPI?
Обычно такие чипы памяти поддерживают как обычную SPI, так и Quad SPI, и я предполагаю, что вы все еще быстрее используете аппаратный SPI против программного QuadSPI.
или это чип, который имеет только Quadspi?

victor_pv
Вторник 02 мая 2017 г. 16:47
Diger67 написал:Реданьяк написал:Есть ли какое -либо преимущество в использовании этого программного Quadspi iso просто аппаратный SPI?
Обычно такие чипы памяти поддерживают как обычную SPI, так и Quad SPI, и я предполагаю, что вы все еще быстрее используете аппаратный SPI против программного QuadSPI.
или это чип, который имеет только Quadspi?

Diger67
Вторник 02 мая 2017 г. 16:51
Ух ты !! Извини. Сказал, что глупость, конечно, 18 Мбит / с. Но даже на этой скорости 4-проводной программной автобус выиграет в SPI.

Diger67
Вторник 2 мая 2017 г. 16:57
victor_pv написал: Diger, не уверен, была ли это опечатка, но F103 может выполнять аппаратный SPI на 18 -мегабит, официально в SPI1 до 3, и до 36 Мбит неофициально в SPI1.
Вы имеете в виду ограничение флэш -памяти с 4 -мбитами?

victor_pv
Вторник 02 мая 2017 г., 19:13
Diger67 написал:victor_pv написал: Diger, не уверен, была ли это опечатка, но F103 может выполнять аппаратный SPI на 18 -мегабит, официально в SPI1 до 3, и до 36 Мбит неофициально в SPI1.
Вы имеете в виду ограничение флэш -памяти с 4 -мбитами?

Diger67
Ср. 3 мая 2017 г. 2:26
Эта идея родилась случайно. Я подключил память к STM32F446 от QSPI, он не работал правильно. Как я узнал на доске, было неверно отметить два булавки. У меня не было никакого другого STM32 с QSPI Adware, мне пришлось написать программное обеспечение. Измерять скорость чтения не сложно. Материал, который вы предложили мне прочитать, он может оказаться чем -то полезным.
П.с.
Посмотрите на таблицу данных для этой памяти, и вы поймете, что реализовать на предлагаемом алгоритме QSPI будет практически невозможно.

Diger67
Ср. 3 мая 2017 г. 11:58
Я проверил время чтения дампа до 256 байтов. При инициализации Systick в 1 мкс время чтения для программы QSPI составляет 1 мс.
uint8_t idData[3]; uint8_t dataBuff[0x100]; static __IO uint32_t sysTickCounter; __IO uint32_t uwTick = 0; float timeend; uint32_t time; uint32_t GetSysTick(void) { return uwTick; } void SysTick_Handler(void) { uwTick++; } int main(void) { SysTick_Config(SystemCoreClock/1000000); //1uS Gpio_Init(); QSPIInit(); QSPI_Read_ID(READ_ID_CHIP, idData, 3); time = GetSysTick(); QSPI_data_read(0, 0x00, 6, dataBuff); timeend = (GetSysTick() - time)/1000 ; while(1) { } }

Улучшение Pinmode