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

 
 
 
Reply to this topicStart new topic
> Помогите с AT25F1024, Не записывает определённые комбинации символов
ZEbr
сообщение Oct 24 2011, 18:14
Сообщение #1


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

Группа: Участник
Сообщений: 145
Регистрация: 2-12-10
Из: Воронеж
Пользователь №: 61 356



Проблема такая. Пытаюсь зашит в микросхему(AT25F1024) ldr файл, от BlackFin 537, в процессе прошивки, в любом месте памяти, может возникнуть ошибка(и файл записывается неправильно). Помогите пожалуйста из-за чего это происходит. Возможно есть какие-нибудь особенности программирования данной памяти?
Заранее спасибо!
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Oct 24 2011, 19:51
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Хоть бы примеры привели - что куда пишете, и что в результате читается. "Любое место" имеет постоянный адрес, или же он меняется от случая к случаю? Если не записываются именно определенные комбинации, то не грех было бы их здесь привести.
Никаких особенностей программирования у AT25F1024 нет, все работает, как написано в документации.
Go to the top of the page
 
+Quote Post
pavel-pervomaysk
сообщение Oct 24 2011, 20:06
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 253
Регистрация: 28-12-07
Из: Украина г. Первомайск
Пользователь №: 33 716



Перед тем как ее записать нужно сначала стереть ее.

CODE
[_SENDBYTE]
LOOP=(7,0){SI=R0[I],SCK=1,SCK=0}

[_SENDADR]
LOOP=(23,0){SI=ADR[I],SCK=1,SCK=0}

[_WREN]
SCK=0
CS=0
_SENDBYTE(00000110b) ; Write enable
CS=1

[_WAITWR] ;Wait for end write memory...
SCK=0
LOOP=(0,10000){
_RDSR
R1[0]?0{BREAK} ;WIP bit
P=10
}


[WRITEBLOCK]
SCK=0
_WREN
CS=0
_SENDBYTE(00000010b) ; Write
_SENDADR
LOOP=($BLOCKSIZE){ ; размер блока 256 байт
_SENDBYTE(DATA)
ADR=+1
}
CS=1
_WAITWR
Go to the top of the page
 
+Quote Post
ZEbr
сообщение Oct 25 2011, 16:41
Сообщение #4


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

Группа: Участник
Сообщений: 145
Регистрация: 2-12-10
Из: Воронеж
Пользователь №: 61 356



Пишется в микросхему ldr файл, т.е. я его полностью записываю в память(с 0 адреса), записываю с помощью программы написанной на С#, которая передаёт по RS485 пакеты в 256 байт, и уже процессор ADSP BlackFin 537 по SPI магистрали передаёт данные в микросхему AT25F1024. Одна из комбинаций которую я получил: записано 0x51 считано 0x11 по адресу 0x54FF, и также записано 0xa6 считано 0x26 по адресу 0x54FE. Микросхему я стираю.
Go to the top of the page
 
+Quote Post
pavel-pervomaysk
сообщение Oct 25 2011, 19:11
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 253
Регистрация: 28-12-07
Из: Украина г. Первомайск
Пользователь №: 33 716



Есть вариант что читаете неверно.
читать нужно после спада SCK предыдущего клока.

Сообщение отредактировал Павлик - Oct 25 2011, 19:11
Go to the top of the page
 
+Quote Post
ZEbr
сообщение Oct 28 2011, 04:31
Сообщение #6


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

Группа: Участник
Сообщений: 145
Регистрация: 2-12-10
Из: Воронеж
Пользователь №: 61 356



СПС за совет попробуем
Go to the top of the page
 
+Quote Post

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

 


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


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