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

 
 
> Работа с i2c устройствами в Linux, Python
wolfman
сообщение Nov 19 2015, 14:27
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



Здравствуйте.
Необходимо отладить I2c-шные корки в ПЛИС, т.к. ничего кроме Raspbery PI 2 нет, решил использовать её как мастер, наваял простенький код на Питоне.

На этапе отладки тестового софта использую eeprom и SFP модули.

Все бы хорошо, но есть проблемы: не читает данные из eeprom(типа AT24C256), точнее читает, но только один и тот же байт данных.
При этом из всевозможных SFP модулей данные читаются нормально.
В eeprom, если я правильно понимаю, используется страничный доступ, как его задействовать?
Если можно на пальцах, т.к. я ни разу не программист.

Код
#!/usr/bin/python
import smbus
import time

DevAddr = 0x55

bus = smbus.SMBus(1)

print "I2C: Read from Device 0x%02X" % DevAddr
for DevRegAddr in range (255):
    try:
        ret = bus.read_byte_data(DevAddr, DevRegAddr)
    except IOError, err:
        print "error reading device 0x%02X" % DevAddr
        exit(-1)
    print "%X" % ret


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Ruslan1
сообщение Nov 19 2015, 16:06
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Цитата(wolfman @ Nov 19 2015, 16:27) *
В eeprom, если я правильно понимаю, используется страничный доступ, как его задействовать?
Если можно на пальцах, т.к. я ни разу не программист.

Так в документации смотрите. Гуглится по строке поиска "AT24C256". Там смотрите раздел что-то вроде "RANDOM READ".
Там на картинке просто все нарисовано (в атмеловской документации это "Figure 5. Random Read"): сначала пишите туда адрес, а потом читаете данные.
Страницы- это при записи массивов актуально, не при чтении и не при записи отдельных байтов.
Что именно непонятно?
Go to the top of the page
 
+Quote Post



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

 


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


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