Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Продукция MICROCHIP

Продукция MICROCHIP Технические вопросы по всей продукции Microchip

Ответ
 
Опции темы Опции просмотра
Старый 23.07.2019, 14:59   #1
DimaK
Member
 
Регистрация: 11.04.2016
Адрес: Пфорцхайм, Германия
Возраст: 34
Сообщений: 59
Вес репутации: 165/14
DimaK has a spectacular aura aboutDimaK has a spectacular aura about
По умолчанию Работа в Гармошке с внешним EEPROM

Приветствую коллеги, хотел пожаловаться:
пытаюсь сопрячь внешний EEPROM 24AA64T с контроллером PIC32MZ2048EFH064 по I2C. Моя логика (у МС должно же быть работаюшее решения для своих собственных продуктов!) оказалась в корень кривой. Пришлось собирать функции записи/чтения из сгенерированных библиотек.
Вот функция чтения 1 байта из внешнего EEPROM:
Код:
unsigned char read_EEPROM (unsigned short EEPROM_ADR)
{
    
    unsigned char Tx_BUF_Seize, Rx_BUF_Seize;
    unsigned char I2C_TXbuffer[3]; 
    unsigned char I2C_RXbuffer[3];
    Tx_BUF_Seize = 2;
    Rx_BUF_Seize = 1;
    I2C_TXbuffer[0] = Word_to_Byte (Byte_H, EEPROM_ADR);
    I2C_TXbuffer[1] = Word_to_Byte (Byte_L, EEPROM_ADR);
       
    I2C_RXbuffer[0] = 0; 
    I2C_RXbuffer[1] = 0;
    I2C_RXbuffer[2] = 0;
    
    unsigned long I2C_Handle;
    
    /* Open the I2C Driver */
    I2C_Handle = DRV_I2C_Open( DRV_I2C_INDEX_0, ( DRV_IO_INTENT_READWRITE | 
                                                         DRV_IO_INTENT_NONBLOCKING ) );
    if (DRV_HANDLE_INVALID == I2C_Handle)
    {
        
        // Handle open error
    }
        
    drvI2CWRBUFHandle =DRV_I2C_TransmitThenReceive ( I2C_Handle,
                                                    APP_24AA_DEVICE_ADDR,
                                                    &I2C_TXbuffer[0],
                                                    Tx_BUF_Seize,
                                                    &I2C_RXbuffer[0],
                                                    Rx_BUF_Seize,
                                                    NULL);
      

   
    
    return I2C_RXbuffer[0];
}
Проблема такая: эту функцию нужно выполнить несколько тысяч раз (ТЫСЯЧ, Карл!), прежде чем байт реально прочитается.
Т.е. я запетлил функцию таким образом:

Код:
do
 {
      
      drvI2CWRBUFHandle =DRV_I2C_TransmitThenReceive ( I2C_Handle,
                                                    APP_24AA_DEVICE_ADDR,
                                                    &I2C_TXbuffer[0],
                                                    Tx_BUF_Seize,
                                                    &I2C_RXbuffer[0],
                                                    Rx_BUF_Seize,
                                                    NULL);
      

      
 }
 while (I2C_RXbuffer[0] > 0);
Теперь телепается до той поры, пока считанное значение будет не нулевым. С этим костылем, после примерно 5900 циклов она читает тот самый вожделенный байт! Но что я делаю не так? Частоту клока пробовал снижать до 20 кГц, при этом кол-во потребных циклов возросло до 15000! Вообще не понимаю: если бы что-то было феноменально не так, то тогда вообще бы не читалось.... Буду благодарен любой помощи!
DimaK вне форума   Ответить с цитированием
Старый 23.07.2019, 15:52   #2
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

DimaK
по моему опыту любой софт microchip крайне низкого качества - чтобы не получить ненужных проблем его следует избегать.

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

написать простой код - если считаете, что код корректен, выложить его в форум с приложенной осциллограммой того, что происходит на линиях I2C.
besogon вне форума   Ответить с цитированием
Старый 23.07.2019, 16:12   #3
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

посмотрел errata по Вашему микроконтроллеру и обнаружил что с I2C есть проблемы. одно из решений:

Instead of using the hardware I2C module, use a
software “bit-bang” implementation.

иначе говоря не использовать модуль i2c для работы а дергать ножкою.
besogon вне форума   Ответить с цитированием
Старый 23.07.2019, 17:37   #4
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 59
Сообщений: 2,462
Вес репутации: 3412/102
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Не работает только ОДИН модуль (третий) из ЧЕТЫРЕХ.
Больше по I2C никакой эрраты нет.
Цитата:
33. Module: I2C3
I2C3 on the A3 revision is non functional.
Work around
Silicon revision A3 I2C3 must use a software “bitbang” implementation.
Судя по контексту проблемы (вглубь не влазил), обмен идет в буферном режиме. Поэтому доступ такой странный.
Марк вне форума   Ответить с цитированием
Старый 24.07.2019, 00:18   #5
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Марк
интерфейс функции eeprom_read подразумевает, что она по завершению возвратит данные с какого-либо адреса. если она делает что-то другое, то она работает неправильно.

в errata указан конкретно i2c3 для частного случая, когда других вариантов нет - для остальных указан набор костылей, которые еще нужно вставить, чтобы заработало.
besogon вне форума   Ответить с цитированием
Старый 24.07.2019, 04:43   #6
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 59
Сообщений: 2,462
Вес репутации: 3412/102
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Цитата:
Сообщение от besogon Посмотреть сообщение
Марк
интерфейс функции eeprom_read подразумевает, что она по завершению возвратит данные с какого-либо адреса. если она делает что-то другое....

в errata указан конкретно i2c3 для частного случая, когда других вариантов нет - для остальных указан набор костылей, которые еще нужно вставить, чтобы заработало.
Может стоит хотя бы бегло взглянуть в мануал на Гармонию в разделе про I2C?
Уверяю Вас, там есть где юзеру можно наделать ошибок.
Что касается эрраты, то я привел выше исчерпывающую цитату из нее. Ничего более про этот интерфейс там нет. Что Вы называете частным случаем мне совершенно не понятно. Я наивно полагаю, что если эррата не ограничила три модуля из четырех, то эти три модуля работают согласно даташиту.
Марк вне форума   Ответить с цитированием
Старый 24.07.2019, 09:08   #7
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Марк
Вы эту errata читали?
http://ww1.microchip.com/downloads/e...S80000663J.pdf

Может стоит хотя бы бегло взглянуть в мануал на Гармонию в разделе про I2C? - нет, не стоит. у функции чтения байта из eeprom не должно быть другого поведения, кроме как прочесть байт из eeprom.

Уверяю Вас, там есть где юзеру можно наделать ошибок. - по моему опыту коды microchip использовать не надо. это просто потраченное впустую время, за которое можно было бы сделать что-то нормальное.
besogon вне форума   Ответить с цитированием
Старый 24.07.2019, 10:50   #8
DimaK
Member
 
Регистрация: 11.04.2016
Адрес: Пфорцхайм, Германия
Возраст: 34
Сообщений: 59
Вес репутации: 165/14
DimaK has a spectacular aura aboutDimaK has a spectacular aura about
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Да, у меня именно А3 версия...и пользуюсь 4-м модулем. И скорость свинтил ниже 100кГц. Т.е. по идее проблема возникать вообще не должна. Ща посмотрю мануал гармошки, может и правда чего-то упустил. Касательно писать собственный код - это часто бывает правильно, но, блин, мне казалось, что собственные микрухи должны у них работать ну просто влет!
DimaK вне форума   Ответить с цитированием
Старый 24.07.2019, 10:56   #9
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 59
Сообщений: 2,462
Вес репутации: 3412/102
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Цитата:
Сообщение от DimaK Посмотреть сообщение
Ща посмотрю мануал гармошки
Предлагаю посмотреть ВЕСЬ раздел I2C, чтобы понять идеологию фреймворка в общем и в частном. А не дергать первые попавшиеся под руку функции лишь на основании внешней похожести под задачу.
Марк вне форума   Ответить с цитированием
Старый 24.07.2019, 10:57   #10
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 59
Сообщений: 2,462
Вес репутации: 3412/102
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

...
Марк вне форума   Ответить с цитированием
Старый 24.07.2019, 11:00   #11
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 59
Сообщений: 2,462
Вес репутации: 3412/102
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Цитата:
Сообщение от besogon Посмотреть сообщение
Марк
Вы эту errata читали?
http://ww1.microchip.com/downloads/e...S80000663J.pdf

Может стоит хотя бы бегло взглянуть в мануал на Гармонию в разделе про I2C? - нет, не стоит. у функции чтения байта из eeprom не должно быть другого поведения, кроме как прочесть байт из eeprom.
У функции чтения байта может быть РАЗНОЕ поведение, в зависимости от режима. Никто не обещал писать примитивные функции в расчете на самые простые случаи.
А эррату я читал именно эту. И цитату привел прямо из нее. Никаких разночтений там быть не может. Не работает ОДИН ТРЕТИЙ МОДУЛЬ. К другим вообще нет вопросов.
Марк вне форума   Ответить с цитированием
Старый 24.07.2019, 12:13   #12
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Марк
Revision A1 Silicon Work around 2
Instead of using the hardware I 2 C module, use a
software “bit-bang” implementation.
- костыль вариант 2 - не использовать аппаратные возможности, а реализовать программно дергая ножкой.

Revision A3 Silicon Work around
The work arounds described for revision A1 silicon
will also work for silicon revision A3, with the
exception of I2C3, as I2C3 must use a software
“bit-bang” implementation.
- костыли описанные для ревизии А1 будут работать также для ревизии А3, за исключением i2c3, которую можно использовать только программно.

это мой вольный перевод: вряд-ли ребята из микрочип делали костыли - поэтому может не работать.
besogon вне форума   Ответить с цитированием
Старый 24.07.2019, 12:21   #13
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Марк
У функции чтения байта может быть РАЗНОЕ поведение, в зависимости от режима - я просто счастлив, что бог миловал меня работать вместе с Вами.
Я полагаю, что на этой почве мы бы с Вами могли поругаться в случае если бы нам надо было сделать совместно коммерчески успешный продукт.
besogon вне форума   Ответить с цитированием
Старый 24.07.2019, 12:26   #14
DimaK
Member
 
Регистрация: 11.04.2016
Адрес: Пфорцхайм, Германия
Возраст: 34
Сообщений: 59
Вес репутации: 165/14
DimaK has a spectacular aura aboutDimaK has a spectacular aura about
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Да, Марк, там имеется ввиду, что все модули I2C косячные, а на ревизии А3 3-й модуль убили совсем, так что даже костыли не помогают.
DimaK вне форума   Ответить с цитированием
Старый 24.07.2019, 14:18   #15
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 59
Сообщений: 2,462
Вес репутации: 3412/102
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Цитата:
Сообщение от DimaK Посмотреть сообщение
Да, Марк, там имеется ввиду, что все модули I2C косячные, а на ревизии А3 3-й модуль убили совсем, так что даже костыли не помогают.
Из чего это следует? В каком пункте эрраты написано про ВСЕ косячные модули?

Цитата:
33. Module: I2C3
I2C3 on the A3 revision is non functional.
Work around
Silicon revision A3 I2C3 must use a software “bitbang” implementation.
Марк вне форума   Ответить с цитированием
Старый 24.07.2019, 14:37   #16
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Марк
В каком пункте эрраты написано про ВСЕ косячные модули? - в пункте 6.
besogon вне форума   Ответить с цитированием
Старый 24.07.2019, 14:48   #17
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 59
Сообщений: 2,462
Вес репутации: 3412/102
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Дааа, чето я совсем слепой стал. Действительно пропустил 6 пункт. Хотя вроде вчера внимательно смотрел. Приношу свои извинения. Но ворк эрраунд там вроде не слишком густой...
Правда речь в данном случае идет немного о другом. У ТС не ошибки изредко, а вообще разовые чтения. Да и скорость можно поставить 100 кГц.
Марк вне форума   Ответить с цитированием
Старый 24.07.2019, 17:29   #18
DimaK
Member
 
Регистрация: 11.04.2016
Адрес: Пфорцхайм, Германия
Возраст: 34
Сообщений: 59
Вес репутации: 165/14
DimaK has a spectacular aura aboutDimaK has a spectacular aura about
По умолчанию Re: Работа в Гармошке с внешним EEPROM

А тем временем я написал свои функции для чтения и записи. Полтора дня убил на отладку, но вроде пашет. Конечно кондовый вариант - у гармошки глобальный плюс в том, что на другой контроллер код портируется безо всяких проблем, по сути - только в конфигураторе пины переназначить. А теперь придется 100500 строк каждый раз перебивать в ручную. Но уже не в моготу - сколько можно с этим возится? Платят-то за результат, а не за время...
DimaK вне форума   Ответить с цитированием
Старый 24.07.2019, 22:47   #19
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

DimaK
Полтора дня убил на отладку, но вроде пашет. - ну и прекрасно.
у гармошки глобальный плюс в том, что на другой контроллер код портируется - портируется что? какой глобальный плюс Вы собрались портировать, если у Вас сгенерированный гармонией код не работает?
besogon вне форума   Ответить с цитированием
Старый 25.07.2019, 09:41   #20
DimaK
Member
 
Регистрация: 11.04.2016
Адрес: Пфорцхайм, Германия
Возраст: 34
Сообщений: 59
Вес репутации: 165/14
DimaK has a spectacular aura aboutDimaK has a spectacular aura about
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Не, я в том плане, что если бы работало - был бы плюс. А так - конечно нет
DimaK вне форума   Ответить с цитированием
Старый 29.07.2019, 15:48   #21
Abivan
Member
 
Регистрация: 26.02.2007
Сообщений: 71
Вес репутации: 242/48
Abivan has a spectacular aura aboutAbivan has a spectacular aura aboutAbivan has a spectacular aura about
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Цитата:
Сообщение от DimaK Посмотреть сообщение
А тем временем я написал свои функции для чтения и записи. ...у гармошки глобальный плюс в том, что на другой контроллер код портируется безо всяких проблем, по сути - только в конфигураторе пины переназначить. А теперь придется 100500 строк каждый раз перебивать в ручную.
могу рассказать про гармошку и spi flash.
поначалу хотел использовать их драйвер работы с внешней флэшью.
не стал. Выбрал просто драйвер SPI. У них то оно все работает, но все организовано через их очереди и их мьютексы. Все работало ооооочень медленно. В результате драйвер реализовал на plib с привязкой к макросам генерируемым гармонией. Переносимость присутствует и работает быстро.
ЗЫ: а от i2c еепромов я отказался еще 15 лет назад, только spi, но это к делу не относится.
Abivan вне форума   Ответить с цитированием
Старый 30.07.2019, 10:16   #22
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Abivan
реализовал на plib - plib устарел и более не сопровождается.
с привязкой к макросам генерируемым гармонией - гармония не достигла зрелости.

на мой взгляд Вы взяли 2 потенциально проблемных вещи.
besogon вне форума   Ответить с цитированием
Старый 30.07.2019, 14:15   #23
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,866
Вес репутации: 5553/169
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Цитата:
Сообщение от Abivan Посмотреть сообщение
ЗЫ: а от i2c еепромов я отказался еще 15 лет назад, только spi, но это к делу не относится.
а чем вызвана такая неприязнь?
Greg вне форума   Ответить с цитированием
Старый 30.07.2019, 15:18   #24
besogon
Senior Member
 
Регистрация: 12.07.2012
Возраст: 32
Сообщений: 2,140
Вес репутации: 4017/87
besogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond reputebesogon has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Greg
хоть и вопрос не ко мне, но я поделюсь своим опытом работы с i2c и опишу то, что у меня вызывало вопросы.

1. в некоторых реализациях устройств с i2c клинит автомат - в каких-то случаях перевести узел в нормальное состояние можно с помощью 9 clk, в некоторых узлах есть rst.
2. скорости передачи по шине i2c ниже, чем допустим по spi.
3. буферизация передачи по шине i2c во многих МК затруднена, в силу того, что шина сама по себе определяет канальный уровень.
besogon вне форума   Ответить с цитированием
Старый 30.07.2019, 17:01   #25
ampersant
Senior Member
 
Аватар для ampersant
 
Регистрация: 26.02.2008
Адрес: IgorV
Сообщений: 2,505
Вес репутации: 4829/115
ampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond reputeampersant has a reputation beyond repute
По умолчанию Re: Работа в Гармошке с внешним EEPROM

Цитата:
Сообщение от besogon Посмотреть сообщение
Greg
хоть и вопрос не ко мне, но я поделюсь своим опытом работы с i2c и опишу то, что у меня вызывало вопросы.

1. в некоторых реализациях устройств с i2c клинит автомат - в каких-то случаях перевести узел в нормальное состояние можно с помощью 9 clk, в некоторых узлах есть rst.
2. скорости передачи по шине i2c ниже, чем допустим по spi.
3. буферизация передачи по шине i2c во многих МК затруднена, в силу того, что шина сама по себе определяет канальный уровень.

C помощью I2C я собрал матрицей из SDA и SCL 30 микросхем с одинаковым адресом. понадобилось 11 выводов (5*6) МК. Какая пара SDA и SCL замахалась - та микруха и ответила.
Все делается по месту применения.
ampersant на форуме   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
МСС18. Работа с EEPROM 1024 байт Vovka Продукция MICROCHIP 12 27.03.2013 06:09
PIC18F87J60 работа с EEPROM??? trancer1019 Вопросы начинающих 12 13.06.2012 14:15
EEPROM 93LC46 nayabuka Продукция MICROCHIP 16 20.07.2009 08:29
Работа с внешней EEPROM на CCS Yokel Продукция MICROCHIP 6 02.07.2009 13:27
PIC18F452 не пишет в EEPROM tzirulnicov Продукция MICROCHIP 2 03.01.2008 16:10


Часовой пояс GMT +3, время: 13:21.


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