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

 
 
 
Reply to this topicStart new topic
> Кто работал с FRAM памятью по SPI интерфейсу, Поделитесь исходниками для IAR
Serega Doc
сообщение Dec 12 2005, 14:40
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 267
Регистрация: 11-11-04
Из: Одесса
Пользователь №: 1 103



Нужна библиотека по работе с FM25CL64
Go to the top of the page
 
+Quote Post
prottoss
сообщение Dec 12 2005, 15:14
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Serega Doc @ Dec 12 2005, 21:40) *
Нужна библиотека по работе с FM25CL64


Не знаю, как на счет FM25CL64, есть для AT25128/256, правда, только для чтения. Для записи не было нужды делать, т.к. заливал ее программатором. Надеюсь, они по программному интерфейсу одинаковы, вроде бы серия 25 одна.

Или там ньюансы есть какие?

Прикрепленный файл  1.rar ( 1.79 килобайт ) Кол-во скачиваний: 304


--------------------
Go to the top of the page
 
+Quote Post
Igor26
сообщение Dec 13 2005, 09:46
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



При использовании FRAM столкнулись с одной бякой. При программировании МК, иногда портилось содержимое FRAM. Лечилось подключением ее входа HOLD к входу RESET МК.
Библиотеки, к сожалению, дать не могу. ПисАл другой программист и на АСМе.
Go to the top of the page
 
+Quote Post
prottoss
сообщение Dec 13 2005, 18:52
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Igor26 @ Dec 13 2005, 16:46) *
При использовании FRAM столкнулись с одной бякой. При программировании МК, иногда портилось содержимое FRAM. Лечилось подключением ее входа HOLD к входу RESET МК.
Библиотеки, к сожалению, дать не могу. ПисАл другой программист и на АСМе.


А я все программировал с помощью ПОНИПРОГа и обычного АТМЕЛОВСКОГО программатора. Правда на плату пришлось воткнуть джампер для переключения входа КС ФЛЭШа и РЕСЕТа АВРа. Флэшка шилась прям при работающем девайсе, (чтения флэш АВРом происходило только по нажатию кнопок :-))

Вот рисунок в MS Word и PCAD2001 Прикрепленный файл  SPI_FLASH_AVR_PROG.rar ( 43.95 килобайт ) Кол-во скачиваний: 288


--------------------
Go to the top of the page
 
+Quote Post
Igor26
сообщение Dec 14 2005, 06:59
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Цитата(prottoss @ Dec 13 2005, 21:52) *
Цитата(Igor26 @ Dec 13 2005, 16:46) *
При использовании FRAM столкнулись с одной бякой. При программировании МК, иногда портилось содержимое FRAM. Лечилось подключением ее входа HOLD к входу RESET МК.
Библиотеки, к сожалению, дать не могу. ПисАл другой программист и на АСМе.


А я все программировал с помощью ПОНИПРОГа и обычного АТМЕЛОВСКОГО программатора. Правда на плату пришлось воткнуть джампер для переключения входа КС ФЛЭШа и РЕСЕТа АВРа. Флэшка шилась прям при работающем девайсе, (чтения флэш АВРом происходило только по нажатию кнопок :-))

Вот рисунок в MS Word и PCAD2001 Прикрепленный файл  SPI_FLASH_AVR_PROG.rar ( 43.95 килобайт ) Кол-во скачиваний: 288


У нас во FRAM постоянно обновлялся архив событий - десятки раз в секунду. FRAM выбрали из-за её неограченного количества циклов записи и из-за того, что время записи равно циклу чтения. Применить ОЗУ с батарейной подпиткой не было возможности из-за особеностей схемотехники контроллера.

PS Уважаемый prottoss, а как Вы "затолкали" PCADовскую схему в WORD?

Сообщение отредактировал Igor26 - Dec 14 2005, 07:01
Go to the top of the page
 
+Quote Post
АДИКМ
сообщение Dec 14 2005, 08:53
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 630
Регистрация: 2-08-05
Пользователь №: 7 294



Работа с FRAM FM25CL64 ничем не отличается с работой с AT25С64.
Просто нет задержек и ресурс очень большой.
А вы хоть укажите под какой процессор это вам надо.
Хотя для любого проца с аппаратным SPI там 20 строк программы...


--------------------
летаю на пепелаце...
Go to the top of the page
 
+Quote Post
prottoss
сообщение Dec 14 2005, 10:20
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Igor26 @ Dec 14 2005, 13:59) *
PS Уважаемый prottoss, а как Вы "затолкали" PCADовскую схему в WORD?


Элементарно, Ватсон! :-)

В ПИКАДЕ - Меню Edit->Select All, дальше щелчек правой кнопкой мыши, во всплывающей портянке Copy

Далее запускаем МСВОРД. Те же манипуляции с мышью только в портянке Paste. ВСЕ.

Единственно, в ПИКАДЕ предварительно (если хотите получить черно-белый рисунок), зайти в Options->Display->Colors и все переправить на черный цвет кроме Background, ну и, для удобства, гриды и выделение. Кстати таким макаром обычно я делаю печатные платы из того же ПИКАДА. В ВОРДЕ, мне, удобнее.



Цитата(АДИКМ @ Dec 14 2005, 15:53) *
А вы хоть укажите под какой процессор это вам надо.
Хотя для любого проца с аппаратным SPI там 20 строк программы...


Вообще эта часть форума относится к ATMEL AVR... :-)


--------------------
Go to the top of the page
 
+Quote Post
Igor26
сообщение Dec 14 2005, 10:24
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



[quote name='prottoss' date='Dec 14 2005, 13:20' post='71382']
[quote name='Igor26' post='71308' date='Dec 14 2005, 13:59']
PS Уважаемый prottoss, а как Вы "затолкали" PCADовскую схему в WORD? [/quote]

Элементарно, Ватсон! :-)

В ПИКАДЕ - Меню Edit->Select All, дальше щелчек правой кнопкой мыши, во всплывающей портянке Copy

Далее запускаем МСВОРД. Те же манипуляции с мышью только в портянке Paste. ВСЕ.

Единственно, в ПИКАДЕ предварительно (если хотите получить черно-белый рисунок), зайти в Options->Display->Colors и все переправить на черный цвет кроме Background, ну и, для удобства, гриды и выделение. Кстати таким макаром обычно я делаю печатные платы из того же ПИКАДА. В ВОРДЕ, мне, удобнее.

Действительно просто! Спасибо!!!
Go to the top of the page
 
+Quote Post
Serega Doc
сообщение Dec 17 2005, 10:48
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 267
Регистрация: 11-11-04
Из: Одесса
Пользователь №: 1 103



Подскажите как правильно инициализировать.
А то что то вроде как сделал как в DataSheet
Записываю 0xAA а читаю 0x00
Вот исходники процедур под AVR 64

void INIT_FRAM (void)
{
SETBIT(PORTB,WPM);
CLEARBIT(PORTB,CSM0);
SPI_W(CMD_WREN_FRAM);
SETBIT(PORTB,CSM0);
DELAY100(); // задержка 100 ns
CLEARBIT(PORTB,CSM0);
SPI_W(CMD_INIT_FRAM);
SPI_W(RG_STAT);
SETBIT(PORTB,CSM0);
CLEARBIT(PORTB,WPM);
}

void WRITE_FRAM (unsigned int ADR, unsigned char DATA)
{
char h_byte, l_byte;
l_byte=ADR;
h_byte=ADR>>8;
CLEARBIT(PORTB,CSM0);
SPI_W(CMD_WR_FRAM);
SPI_W(h_byte);
SPI_W(l_byte);
SPI_W(DATA);
SETBIT(PORTB,CSM0);

}

char READ_FRAM (unsigned int ADR)
{
char h_byte, l_byte, DATA;
l_byte=ADR;
h_byte=ADR>>8;
CLEARBIT(PORTB,CSM0);
SPI_W(CMD_RD_FRAM);
SPI_W(h_byte);
SPI_W(l_byte);
DATA=SPI_R();
SETBIT(PORTB,CSM0);
return DATA;
}
Go to the top of the page
 
+Quote Post
prottoss
сообщение Dec 17 2005, 12:49
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Serega Doc @ Dec 17 2005, 17:48) *
Подскажите как правильно инициализировать.
А то что то вроде как сделал как в DataSheet
Записываю 0xAA а читаю 0x00


SPI_W(...) - это что за процедура? Если это просто запись в регистр данных SPI SPDR - то после записи должно пройти минимум 16 тактов CPU на максимальной скорости SP2X, равной половине частоты CPU, для передачи всех восьми бит данных. Можно просто проверять бит SPIF, как только он установится в 1, все, передача окончена . Во всех даташитах на AVR со встроенным SPI-портом дан простой исходник, которым рекомендую пользоваться:

C Code Example(1)

void SPI_MasterInit(void)

{

/* Set MOSI and SCK output, all others input */

DDR_SPI = (1<<DD_MOSI)|(1<<DD_SCK);

/* Enable SPI, Master, set clock rate fck/16 */

SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0);

}

void SPI_MasterTransmit(char cData)

{

/* Start transmission */

SPDR = cData;

/* Wait for transmission complete */

while(!(SPSR & (1<<SPIF)))

;

}

Код довольно компактный что на Си, что на Асме, а в туманном SPI_W(...) еще не известно что сидит...


--------------------
Go to the top of the page
 
+Quote Post
Serega Doc
сообщение Dec 19 2005, 12:46
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 267
Регистрация: 11-11-04
Из: Одесса
Пользователь №: 1 103



Вопрос не в инициализации SPI интерфейса а в правильной работе с FRAM.
С SPI вообще нет проблем
Go to the top of the page
 
+Quote Post
VslavX
сообщение Dec 19 2005, 14:16
Сообщение #12


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



В аттаче исходники абсолютно работающих c 25CL64 процедур для меги.
ИМХО, что-то Вы намутили с защитой от записи.
Прикрепленные файлы
Прикрепленный файл  spisram.rar ( 1.59 килобайт ) Кол-во скачиваний: 187
 
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 14:04
Рейтинг@Mail.ru


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