реклама на сайте
подробности

 
 
> Не получается соединить STM32L152 и N25Q128!
Sergiocars
сообщение Mar 11 2014, 18:40
Сообщение #1





Группа: Участник
Сообщений: 14
Регистрация: 11-03-14
Пользователь №: 80 887



Кто работал с этой памятью, может кто-нибудь что-нибудь посоветовать?
Go to the top of the page
 
+Quote Post
4 страниц V  < 1 2 3 4 >  
Start new topic
Ответов (30 - 44)
mempfis_
сообщение Mar 18 2014, 10:20
Сообщение #31


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(haker_fox @ Mar 18 2014, 14:12) *
Запись маленько мудрёная (нужно проверять флаг занятости девайса).

Но самое мудрёное будет сохранить куда-либо 64 Кбайт сектор перед тем, как его стереть, а затем перезаписать 256-байтовыми страницами


Там есть возможность стирания субсекторами по 4к.
Go to the top of the page
 
+Quote Post
Harvester
сообщение Mar 18 2014, 13:21
Сообщение #32


Местный
***

Группа: Участник
Сообщений: 338
Регистрация: 1-02-06
Из: Королев, М.О.
Пользователь №: 13 846



Цитата(haker_fox @ Mar 18 2014, 14:12) *
Но самое мудрёное будет сохранить куда-либо 64 Кбайт сектор перед тем, как его стереть, а затем перезаписать 256-байтовыми страницами rolleyes.gif Если оперативы для кэша на борту мало, то будет очень медленно работать. Так, что мегабайта 2 ОЗУ бы надо)

Не надо такого экстрима, вполне можно стирать субсекторами по 4К
PS. Уже ответили

Сообщение отредактировал Harvester - Mar 18 2014, 13:21


--------------------
-Да как так-то?/-Да как-то так/-Ну так-то да
Go to the top of the page
 
+Quote Post
Sergiocars
сообщение Mar 18 2014, 17:00
Сообщение #33





Группа: Участник
Сообщений: 14
Регистрация: 11-03-14
Пользователь №: 80 887



Я перепаял чип на другой такой же с 8ю ногами, а потом и с 16ю ногами, ответ на read id такой же!!! , может я купил не micron, а какого-нибудь другого производителя!!! Хотя покупал микрон, но может подсунули другое!!! По поводу чтения из памяти вроде работает, ответ на команду 03h по адресу 000000h вот такой ffffffffffffffffffff........h и так далее, но когда пишешь командой 02h по адресу 000000h , а потом читаешь командой 03h по тому же самому адресу читается полный бред, не то что ты записал, а иногда просто нули по этому адресу!!!

Сообщение отредактировал Sergiocars - Mar 18 2014, 17:20
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Mar 18 2014, 23:44
Сообщение #34


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (Sergiocars @ Mar 19 2014, 02:00) *
какого-нибудь другого производителя!!!

N25 это Numonyx. Как они могут коррелировать с микроном - не знаю.


QUOTE (Harvester @ Mar 18 2014, 22:21) *
Не надо такого экстрима, вполне можно стирать субсекторами по 4К
PS. Уже ответили

Гм, судя по доке
QUOTE
For devices with bottom or top architecture, at the bottom (or top) of the addressable area
there are 8 boot sectors, each one having 16 4Kbytes subsectors.

я так понимаю, что нельзя всю флешь стирать 4 Кб секторами, можно стереть 16 таких секторов в "верхней" и "нижней" части микросхемы... или я сильно ошибься?


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Harvester
сообщение Mar 19 2014, 04:29
Сообщение #35


Местный
***

Группа: Участник
Сообщений: 338
Регистрация: 1-02-06
Из: Королев, М.О.
Пользователь №: 13 846



Цитата(haker_fox @ Mar 19 2014, 03:44) *
N25 это Numonyx. Как они могут коррелировать с микроном - не знаю.

Может когда-то это и был Numonyx, но сейчас это Micron

Цитата(haker_fox @ Mar 19 2014, 03:44) *
Гм, судя по доке
Цитата

For devices with bottom or top architecture, at the bottom (or top) of the addressable area
there are 8 boot sectors, each one having 16 4Kbytes subsectors.

Хм. Из документации, скачанной с сайта Micron:
Цитата
The device is subsector, sector, or bulk-erasable, but not page-erasable.
Bits are erased from zero through one. The memory is configured as 16,777,216 bytes (8
bits each); 256 sectors (64KB each); 4096 subsectors (4KB each); and 65,536 pages (256
bytes each);

Кто-то из нас заблуждается. laughing.gif


Цитата(Sergiocars @ Mar 18 2014, 21:00) *
Я перепаял чип на другой такой же с 8ю ногами, а потом и с 16ю ногами, ответ на read id такой же!!!

А почему ответ должен быть другим? Обмен-то как был неправильным, так и остался. sm.gif
А теперь серьезно:
В интерфейсе SPI всего две критичные настройки - фаза тактового сигнала (CPHA) и полярность тактового сигнала (CPOL). Их комбинация определяет режим интерфейса. Очевидно, что таких комбинаций всего 4.
Чтобы исключить заморочки с формированием строба, подключаете вход S# памяти к свободному выходу микроконтроллера и управляете им программно.
Перебираете все 4 комбинации - как минимум, одна из них должна быть правильной.

PS Не могу сказать про данный конкретный МК, но все аппаратные SPI, которые мне встречаллись, выставляли сигнал строба только на время приема/передачи посылки. Для работы с памятью это не подходит и стробом в любом случае приходилось управлять программно


--------------------
-Да как так-то?/-Да как-то так/-Ну так-то да
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Mar 19 2014, 06:17
Сообщение #36


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(Sergiocars @ Mar 18 2014, 20:00) *
Я перепаял чип на другой такой же с 8ю ногами, а потом и с 16ю ногами, ответ на read id такой же!!! , может я купил не micron, а какого-нибудь другого производителя!!!


Micron или не Micron практически в 100% случаев фиолетово. Коды команд и процедуры работы с подобными микросхемами памяти совпадают.
Посмотрите на процедуры работы с памятью из поста #29, сравните и найдите какие у Вас есть отличия. Я приводил 100% рабочий код. Задействуйте в конце концов софтовый SPI с полным контролем MISO/MOSI/SCK/nCS.
Как Вам правильно подсказали многие аппаратные SPI активируют nCS только на одну транзакцию, что абсолютно недопустимо для работы с этой памятью.
Поэкспериментируйте с программным управлением nCS и аппаратной передачей по SPI.
Я работал с памятью N25, M95, W25 и все они заводились с полпинка. При этом ниодна микросхема не идёт залоченной от записи. Все они изначально готовы к нормальной работе.
Go to the top of the page
 
+Quote Post
Harvester
сообщение Mar 19 2014, 06:32
Сообщение #37


Местный
***

Группа: Участник
Сообщений: 338
Регистрация: 1-02-06
Из: Королев, М.О.
Пользователь №: 13 846



Цитата(mempfis_ @ Mar 19 2014, 10:17) *
При этом ниодна микросхема не идёт залоченной от записи. Все они изначально готовы к нормальной работе.

bb-offtopic.gif
А вот на это полагаться не стоит, бывает и по другому sm.gif
Как пример - SST25VF064C от Microchip. По умолчанию у нее все сектора защищены от записи.
Я сам когда с этим столкнулся, был неприятно удивлен - замена производителя памяти потребовала выпуска новой прошивки.
Так что лучше принудительно очистить все биты защиты от записи при старте программы.

Сообщение отредактировал Harvester - Mar 19 2014, 06:33


--------------------
-Да как так-то?/-Да как-то так/-Ну так-то да
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Mar 19 2014, 06:51
Сообщение #38


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(mempfis_ @ Mar 19 2014, 09:17) *
Я работал с памятью N25, M95, W25 и все они заводились с полпинка. При этом ниодна микросхема не идёт залоченной от записи. Все они изначально готовы к нормальной работе.


Вероятно гдето в документации на микрочиповскую память указано что она идёт залоченной.
В моём посте имелось ввиду что N25, M95, W25 не идут залоченными от записи и в документации об этом нигде не написано.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Mar 19 2014, 10:49
Сообщение #39


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (Harvester @ Mar 19 2014, 13:29) *
то-то из нас заблуждается. laughing.gif

А можете название микросхемы, с которой работаете, подсказать?
Мне сейчас в проекте уже фиолетово, там 32 Мб SDRAM, и буфер 64 Кб выделить не проблема. Но ради спортивного интереса...
Спасибо)


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Harvester
сообщение Mar 19 2014, 11:24
Сообщение #40


Местный
***

Группа: Участник
Сообщений: 338
Регистрация: 1-02-06
Из: Королев, М.О.
Пользователь №: 13 846



Цитата(haker_fox @ Mar 19 2014, 14:49) *
А можете название микросхемы, с которой работаете, подсказать?
Мне сейчас в проекте уже фиолетово, там 32 Мб SDRAM, и буфер 64 Кб выделить не проблема. Но ради спортивного интереса...
Спасибо)

Честно говоря, я с ней не работаю rolleyes.gif
Но дока по обсуждаемой мсх в прикрепленном файле
Прикрепленные файлы
Прикрепленный файл  n25q_128mb_3v_65nm.pdf ( 1.06 мегабайт ) Кол-во скачиваний: 30
 


--------------------
-Да как так-то?/-Да как-то так/-Ну так-то да
Go to the top of the page
 
+Quote Post
Sergiocars
сообщение Mar 28 2014, 18:06
Сообщение #41





Группа: Участник
Сообщений: 14
Регистрация: 11-03-14
Пользователь №: 80 887



Начал дергать СS отдельно пином порта, все заработало!!!! Спасибо всем, особенно zealot, harvester, haker_fox!!!!
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 29 2014, 01:51
Сообщение #42


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Harvester @ Mar 19 2014, 10:29) *
PS Не могу сказать про данный конкретный МК, но все аппаратные SPI, которые мне встречаллись, выставляли сигнал строба только на время приема/передачи посылки. Для работы с памятью это не подходит и стробом в любом случае приходилось управлять программно

Это может не подходить только если не успеваете подгружать передатчик SPI и у вас происходит опустошение буфера TX.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение May 21 2014, 23:52
Сообщение #43


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Сорри за поднятие старья) Но подтверждаю, 4 Кб стирание работает. Только сейчас руки дошли проверить. Т.ч. не верьте старым даташитам от Numonyx и идите верной дорогой, товарищи (даташит от Micron).


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Радиотехник73
сообщение Jun 27 2017, 12:19
Сообщение #44


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 25-05-10
Пользователь №: 57 521



Здравствуйте, используем память N25Q512A13GF840 на модуле phyCORE-Vybrid, на модуле установлен Линукс, файловая система флешки ubi. Память перестает работать через некоторое время. Никто не сталкивался с такой проблемой?
Go to the top of the page
 
+Quote Post
RoadRunner
сообщение Oct 3 2017, 13:58
Сообщение #45


Частый гость
**

Группа: Участник
Сообщений: 136
Регистрация: 13-05-11
Пользователь №: 64 972



Всем доброго времени суток.

Работаю с N25Q256 по интерфейсу SPI extended.
Идентификатор микросхемы командой READ ID считывается верно. Пытаюсь записать/читать в память. Для этого ставлю выставляю бит Write Enable в статусном регистре. Проверяю - бит установлен. Пишу массив из 32-х байт по нулевому адресу. Последующее считывание статусного регистра показывает, что бит занятости (busy) устанавливается на какое-то время, т.е. команда выполняется. После того, как бит занятости сбрасывается, пытаюсь считать эти же 32 байта по нулевому адресу. Считываются нули. Собственно в этом и проблема.

При этом, если перед командой чтения, проверить статусный регистр, то выяснится, что бит Write Enable там уже сброшен. Как будто его нужно выставлять перед каждой записью.
Можно было бы предположить, что после команды записи, SPI перестает правильно все читать: и статусный регистр, и данные. Но при этом команда READ ID правильно считывает идентификатор девайса, т.е. она не поломалась.

В общем такие пироги. Буду благодарен за помощь в разрешении вопроса.
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 10:13
Рейтинг@Mail.ru


Страница сгенерированна за 0.01491 секунд с 7
ELECTRONIX ©2004-2016