Перейти к содержанию
    

Помогите понять алгоритм записи в EEPROM

Друзья,

есть EEPROM 25AA010 (Serial SPI EEPROM 128 байт). Микроконтроллер C8051F130 пишет туда значение параметра.

Я изменяю значения параметра 0, 1, 2, 3, 4 и смотрю, что записалось в EEPROM.  Записываются 2 байта, в скобках я привожу двоичный код.

Я что-то не могу понять эту логику. Это какая-то специальная кодировка для продления жизни EEPROMa что-ли ? 

параметр = 0.  Это записалось в EEPROM --->    0x80  (1 0 0 0 0  0 0 0),   0x67 (0 1 1 0 0 1 1 1)

параметр = 1.  Это записалось в EEPROM --->    0x86  (1 0 0 0 0  1 1 0),   0x6B (0 1 1 0 1 0 1 1)

параметр = 2.  Это записалось в EEPROM --->    0x77  (0 1 1 1 0  1 1 1),   0x8A (1 0 0 0 1 0 1 0)

параметр = 3.  Это записалось в EEPROM --->    0x7D  (0 1 1  1 1 1 0 1),   0x81 (1 0 0 0 0 0 0 1)

параметр = 4.  Это записалось в EEPROM --->    0x83  (1 0 0  0 0 0 1 1),   0x77 (0 1 1 1 0 1 1 1)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Стесняюсь спросить, а вы следуете всем рекомендациям из даташита, глава "Write Sequence"?

Ни какой кодировки там быть не должно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Скорее всего не тот режим SPI выбран.

2 minutes ago, haker_fox said:

Ни какой кодировки там быть не должно.

+1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прошивку я считываю правильно, там есть строковые данные и они считываются правильно.

Уточню, программа не моя. Я просто прицепился на шину и смотрю анализатором, что там происходит. Потом считываю прошивку с EEPROM. Результаты совпадают.

Мне кажется это все же какая-то кодировка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, TOG said:

Мне кажется это все же какая-то кодировка

Ну поглядите в даташит. Всё возможно. Но маловероятно, ИМХО.

И нужно посмотреть текст программы. Может быть типы как-то неправильно преобразовываются. Такое тоже часто бывает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, TOG said:

Я изменяю значения параметра 0, 1, 2, 3, 4 и смотрю, что записалось в EEPROM.

Вы решили отреверсить всё, что под руку попадается? :-)

 

Возможно, по табличке или какой-то хитрой формуле этот "параметр" сразу пересчитывается в какое-то значение, которое и используется в дальнейшей работе.

Нужно больше экспериментов!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 часов назад, esaulenka сказал:

Нужно больше экспериментов!

Да таблицу запендюрить... 512 байт :dance4:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...