Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 05.09.2012, 17:28  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: AT45DB

Сообщение от papa_n Посмотреть сообщение
Подскажите каким образом дописывать? и как потом к этим данным обращаться?
Элементарно... Те участки 520-байтной страницы, которые не должны быть переписаны - заполняем в буфере ПЗУшки единицами, в тот участок который нужно переписать - заполняем своими 32 байтами. И подаем команду Запись без стирания. Потом аналогично записываем следующие 32 байта и т.д. Ресурс считается только по операциям стирания, а их здесь нет

Обращаться ещё проще. В режиме чтения у 45-й серии можно обратиться к любому байту, без чтения всей страницы. Просто считаем адрес со смещением 32*n
Реклама:
niXto вне форума  
Непрочитано 05.09.2012, 17:35  
finevlad
Временная регистрация
 
Регистрация: 19.03.2008
Сообщений: 50
Сказал спасибо: 2
Сказали Спасибо 6 раз(а) в 2 сообщении(ях)
finevlad на пути к лучшему
По умолчанию Re: AT45DB

Сообщение от niXto Посмотреть сообщение
При минимальном размере страницы 512+8 байт ТС по вашей рекомендации сделает 15 лишних стираний с потерей времени и ресурса. Проще один раз стереть страницу и потом 16 раз дописывать 32-байтные пакеты без стирания
нет, не надо отдельно стирать и дописывать каждый раз

наверное можно рассчитать емкость резервного питания - скажем ионистор и монитор внешнего питания
при срабатывании монитора внешнего питания
записывается буфер
еще можно использовать только 512 байт (32*16) а дополнительный байты использовать для статуса - скажем при записи обычной страницы размещается счетчик а при записи при пропадании питания - еще и признак аварии
так легко будет найти последнюю запись при включении устройства
удобство в использовании записи в 32 и четного числа записей в странице - будет в удобстве адресации и возможности не губить последующие при перезаписи

датафлаш хорош именно в применении в логгерах где страницы переписываются по циклу равномерно
если некоторые страницы будут переписываться чаще других - то обратите внимании что в таком режиме требуется стирание больших блоков через какое-то количество записей - а это будет уже напряжно - для отработки таких ситуаций можно как раз использовать счетчик записей в дополнительных байтах страницы
finevlad вне форума  
Непрочитано 05.09.2012, 17:40  
_Артём_
Гражданин KAZUS.RU
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: AT45DB

Сообщение от niXto Посмотреть сообщение
Элементарно... Те участки 520-байтной страницы, которые не должны быть переписаны - заполняем в буфере ПЗУшки единицами, в тот участок который нужно переписать - заполняем своими 32 байтами. И подаем команду Запись без стирания.
Можно конечно.

Но первый пункт (заполняем в буфере ПЗУшки единицами) делается командой CopyPageToBuffer. А далее по списку...
_Артём_ вне форума  
Непрочитано 05.09.2012, 20:42  
LVII
Частый гость
 
Регистрация: 06.06.2008
Сообщений: 43
Сказал спасибо: 90
Сказали Спасибо 126 раз(а) в 23 сообщении(ях)
LVII на пути к лучшему
По умолчанию Re: AT45DB

Как то написал статью про работу с AT45.
Там же библиотека собственного изготовления, использовал в нескольких проектах.
Примеры для ATMega162.
http://movilavn.narod.ru/
LVII вне форума  
Сказали "Спасибо" LVII
gres_go (08.05.2013)
Непрочитано 05.09.2012, 22:21  
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,984
Сказал спасибо: 0
Сказали Спасибо 4,943 раз(а) в 2,371 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: AT45DB

Сообщение от _Артём_ Посмотреть сообщение
Где такое сказано? Иногда пишут, что unlimited, иногда что 10 в степени 15 (или больше, не помню)
на самом деле производитель сделал вывод о таком количестве циклов на основе параллельных тестов большого количества чипов и степени их износа за, допустим, 10е6-10е7 тестовых записей-считываний. не узрел прибор значительных изменений - смело пишем маркетинговые 10е15
Сообщение от niXto Посмотреть сообщение
ФРАМ пишется как обычная ОЗУ. Собственно, от ОЗУ ее можно отличить только по маркировке, физически она работает точно так же и задержки при записи те же. С ресурсом сложнее - при каждом чтении ячейки фактически происходит ее перезапись, однако даже ограниченного ресурса достаточно, чтобы десятки лет непрерывно читать или писать одну и ту же ячейку на максимальной скорости
механизм записи, реализованный для каждой ячейки, будет очень дорог и займет значительную площадь кристалла. кстати, в анонсированные 10е15, наверняка включили и циклы чтения с перезаписью
jump вне форума  
Непрочитано 05.09.2012, 22:30  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: AT45DB

Сообщение от jump Посмотреть сообщение
механизм записи, реализованный для каждой ячейки, будет очень дорог и займет значительную площадь кристалла. кстати, в анонсированные 10е15, наверняка включили и циклы чтения с перезаписью
Механизм записи примерно такой же, как и в DRAM. На паре дополнительных транзисторов, высокое напряжение ведь не надо
Циклы чтения включены в ресурс, но если разделить 10^15 на 10 МГц, то получится более 3 лет. А читаться-писаться явно будет не единственная ячейка, и не круглосуточно на максимальной скорости
niXto вне форума  
Непрочитано 06.09.2012, 13:53  
finevlad
Временная регистрация
 
Регистрация: 19.03.2008
Сообщений: 50
Сказал спасибо: 2
Сказали Спасибо 6 раз(а) в 2 сообщении(ях)
finevlad на пути к лучшему
По умолчанию Re: AT45DB

ФРАМ вроде пока маленьких размеров? Есть на 64Мбит? за разумную цену конечно?

вот флеши мы целенаправленно "убивали" - надо было для проекта...
несколько выводов из этого:
цифры производителя обычно занижены
по мере "убивания" растет время записи
при несоблюдении требований по стиранию (типа дозапись) убивается быстрее указанного ресурса
при особых глупостях убить можно еще быстрее
при соблюдении требований по стиранию убивается отдельный сектор а остальные продолжают работать
при несоблюдении - убивается вся микруха - возможно есть еще системный сектор и при его убивании - все стопорится
finevlad вне форума  
Непрочитано 06.09.2012, 16:44  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: AT45DB

Сообщение от finevlad Посмотреть сообщение
ФРАМ вроде пока маленьких размеров? Есть на 64Мбит? за разумную цену конечно?
ТС ничего не сказал про объем
Большие объемы пока только флеш
Но 45-я серия на ячейках SLC имеет ресурс гораздо больше, чем SD на MLC
niXto вне форума  
Непрочитано 06.09.2012, 17:24  
papa_n
Временная регистрация
 
Регистрация: 08.01.2007
Сообщений: 92
Сказал спасибо: 17
Сказали Спасибо 9 раз(а) в 9 сообщении(ях)
papa_n на пути к лучшему
По умолчанию Re: AT45DB

Помогите разобратся в этой функции!!! Плиз
PHP код:
void Cont_Flash_Read_Enable (unsigned int PageAdrunsigned int IntPageAdr)
{
    
DF_CS_inactive();        
    
DF_CS_active();            

    
spi(ContArrayRead);        
    
spi((unsigned char)(PageAdr ›› (16 PageBits)));
    
spi((unsigned char)((PageAdr ‹‹ (PageBits 8))+ (IntPageAdr››8)));
    
spi((unsigned char)(IntPageAdr));
    
spi(0x00);                
    
spi(0x00);                
    
spi(0x00);                
    
spi(0x00);

По идее, должна прочитать всю флешку, но что то я не пойму куда она ее отправит? в параметрах номер страници и номер байта в странице
PageBits - индекс, для at45db161 и at45db321 равен 9
spi - стандартная функция отправки по spi

Кто нибудь, объясните на пальцах
papa_n вне форума  
Непрочитано 06.09.2012, 17:33  
ewseltek
Частый гость
 
Регистрация: 14.07.2010
Сообщений: 30
Сказал спасибо: 0
Сказали Спасибо 7 раз(а) в 6 сообщении(ях)
ewseltek на пути к лучшему
По умолчанию Re: AT45DB

Сия функция посылает во флэш команду - "чтение" и затем адрес с кторого надо начать чтение.После этой функции должны идти ф-и непосредственного приема байтов из флэш.
Вы даташит-то читали ?
ewseltek вне форума  
Сказали "Спасибо" ewseltek
papa_n (06.09.2012)
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Эмуляция EEPROM на AT45DB uk8amk Микроконтроллеры, АЦП, память и т.д 1 28.03.2012 11:01
AT45DB... в Proteus GLVlad Микроконтроллеры, АЦП, память и т.д 3 19.10.2011 17:58
Вопрос по Atmel`овским флешкам серии AT45DB andreiesafov Микроконтроллеры, АЦП, память и т.д 10 30.03.2008 01:16


Часовой пояс GMT +4, время: 08:31.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot