Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Разное » Сегнетоэлектрическая оперативная память


Сегнетоэлектрическая оперативная память

Сообщений 1 страница 14 из 14

1

Кто-нибудь использовал сегнетоэлектрическую ОЗУ вместо EEPROM? Например такую. http://www.gaw.ru/html.cgi/txt/ic/Ramtr … 24C256.htm
Из преимуществ перед EEPROM можно назвать такие:

Высокая износостойкость: 10 миллиардов циклов чтение/запись.  :O  :O
Запись без задержки (NoDelay™ )

Но как этот тип памяти в деле? Надежен?

0

2

Использовал такую, доволен до соплей, вообще никаких проблем.
Считай тоже ОЗУ, но помнит всё после обесточивания.
Я в ней настройки хранил и писал логи (в кольцевом буфере).
Проблем не наблюдалось, система работала 24/7 в течении несколько лет.

0

3

Спасибо. Примерно для того же хочу использовать. Флеш не подходит из-за ограниченного числа записей. Если писать раз в секунду, то допустимые 100 тысяч записей будут исчерпаны через 27 часов.

0

4

Ещё из плюсов, быстро работает, ненужны задержки при записи.
У меня алгоритм был такой, будто это аля касета/катридж, чип стоит на панельке, нужно - извлек. Вставляешь новый или тот же и с него вначале считывается информация об адресах чтения/записи данных (и некоторые прочие вещи), дальше продолжаешь работу в штатном режиме.
Запись делал в прерывании, чтобы не было конфликта с чтением (i2c же), организовывал временный, небольшой буфер для записи.

0

5

RDW написал(а):

чип стоит на панельке.

Таких микросхем вроде нет в DIP.

0

6

Нет.
Панельку делал руками (мини платка + разъёмы PLD..). Это как фантазия пойдет.

0

7

Кстати, оказывается bascom поддерживает эти микросхемы как внешнюю память (используя библиотеки FM24C16.lib, FM24C64_256.lib или FM25C256.lib) и можно просто объявить переменные во внешней памяти и работать с ними, т. е. не нужно в проге напрямую работать с i2c.  :O  :cool:
http://avrhelp.mcselec.com/fm24c16.htm
Это значительно упрощает программу.

0

8

а как он о адресации i2c узнает, библиотеку надо править?

0

9

По видимому, используются функции из i2c-библиотеки и номера выводов, а также использование аппаратного или программного варианта, зависят от настроек i2c.
Думаю что если расширить объем оперативной памяти МК за счет такой МС, то можно будет подключить SD флешку даже к Mega8.

0

10

их можно подключить до 8 штук на шину, непонятно в общем как адреса раздавать и судя из примера (видимо) ограничение ($eepromsize) в 16 бит, видимо больше 64К не использовать
сомнительная библиотека
своими силами можно до 256К адресовать)

0

11

Все зависит от задачи. Для многих и 32 КБ будет много.

0

12

Пётр написал(а):

Кто-нибудь использовал сегнетоэлектрическую ОЗУ вместо EEPROM?

Заказал, скоро приедут, буду издеваться!

0

13

sasha_1973 написал(а):

Заказал, скоро приедут, буду издеваться!

Ну и как, замучил?

0

14

Библиотека "fm24c64_256.lib" работает, но только с аппаратной конфигурацией i2c  !!!

           $lib "i2c_twi.lbx"       ' Без этой библиотеки реализация работы с шиной I2c будет программной, с библиотекой реализация шины I2c происходит на уровне аппаратных средств МК
          Config Scl = Portc.5       ' Конфигурация I2c Scl
          Config Sda = Portc.4       ' Конфигурация I2c Sda
          Config Twi = 400000       ' Скорость работы шины I2c на аппаратном уровне

Время записи 32768 байт = ~2450  ms
Время чтения 32768 байт = ~1560  ms

При ручной реализации записи и чтения, время примерно такое-же.

0


Вы здесь » Программирование ATMEL в BASCOM. » Разное » Сегнетоэлектрическая оперативная память