TOG 0 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба Друзья, есть 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) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба Стесняюсь спросить, а вы следуете всем рекомендациям из даташита, глава "Write Sequence"? Ни какой кодировки там быть не должно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба Скорее всего не тот режим SPI выбран. 2 minutes ago, haker_fox said: Ни какой кодировки там быть не должно. +1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TOG 0 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба Прошивку я считываю правильно, там есть строковые данные и они считываются правильно. Уточню, программа не моя. Я просто прицепился на шину и смотрю анализатором, что там происходит. Потом считываю прошивку с EEPROM. Результаты совпадают. Мне кажется это все же какая-то кодировка Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 3 minutes ago, TOG said: Мне кажется это все же какая-то кодировка Ну поглядите в даташит. Всё возможно. Но маловероятно, ИМХО. И нужно посмотреть текст программы. Может быть типы как-то неправильно преобразовываются. Такое тоже часто бывает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
esaulenka 7 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 1 hour ago, TOG said: Я изменяю значения параметра 0, 1, 2, 3, 4 и смотрю, что записалось в EEPROM. Вы решили отреверсить всё, что под руку попадается? :-) Возможно, по табличке или какой-то хитрой формуле этот "параметр" сразу пересчитывается в какое-то значение, которое и используется в дальнейшей работе. Нужно больше экспериментов! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
toweroff 1 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 8 часов назад, esaulenka сказал: Нужно больше экспериментов! Да таблицу запендюрить... 512 байт Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться