Проблема з I2C послідовний інтерфейс для EEPROM

N

nemolee

Guest
Хто-небудь знає? У мене є одне питання про послідовний інтерфейс EEPROM. Якщо вона раптом зупинилася в читанні процес, тому що майстер скидається, але раб не скидається, навіть майстер відправити стан початок, але немає ніякого впливу на раба. Майстер не може контролювати раб більше. Чому? Як я можу змінити господаря? Дякуємо.
 
Спробуйте відправити коротке повідомлення для незначної SLAVE на початку майстер працює після перезавантаження. Ключовим моментом у цьому є СТОП стані. Після отримання STOP SLAVE повинні скинути всі свої внутрішні стани на вихідні значення.
 
Ви можете спробувати додати почати і зупинити стан перед відправленням даних в EEPROM.
 
Я не знаю, Вея і про ваш qustion майстер вже повинні знати, яку адресу відомого його потрібно відправити, так що після загального скидання, необхідно повторно стартовий сигнал потім адресу (інакше, що він раб хочуть контролювати), то все раб буде пекти для початковий стан в вашій державі машини (вона повинна існувати в ваш господар і раб код RTL), раб чекатиме адреси збігаються, то перезапустити State Machine, так чому ж у вас є проблеми після загального скидання? якщо це дійсно станеться [б], навіть майстер відправити START стані, але немає ніякого впливу на невільничих [/B], то я не думаю, що ваш серіал IIC, перевіряти і вимірювати CLK і SDI переконайтеся, що ви дійсно відправити [б] почати [/B] перший сигнал!
 
[Цитата = MediaTek] Я не знаю, Вея і про ваш qustion майстер вже повинні знати, яку адресу відомого його потрібно відправити, так що після загального скидання, необхідно повторно стартовий сигнал потім адресу (інакше, що він раб хочуть контролювати), то всіх підлеглих буде випікати в початковий стан в вашій державі машину (вона повинна існувати в ваш господар і раб код RTL), раб чекатиме адреси збігаються, то перезапустити State Machine, так чому ж у вас є проблеми після загального скидання? якщо це дійсно станеться [б], навіть майстер відправити START стані, але немає ніякого впливу на невільничих [/B], то я не думаю, що ваш серіал IIC, перевіряти і вимірювати CLK і SDI переконайтеся, що ви дійсно відправити [б] почати [/B] перший сигнал! [/ цитата] У процес читання, майстер скидається suddently. Але раб залишається вихід його останніми даними і в цей час немає ні одного вхідного тактового сигналу. Раб може витягнути автобус ПДР на низькому рівні. Навіть якщо господар відправити START стані, SDA завжди низькі.
 
при читанні, раб SDI контактний стати виведення, так немає можливості detecte початку, тому вам відправити почати не працювати, але в цей час, я розумію, чому раб тягнути SCK з низьким, як правило, рабами не готовий до прийому даних (запис), то вона буде низькою годинник, щоб призупинити майстер передачі даних, але після Підлеглий буде готовий до прийому даних, то він поверне CLK контроль в освоєнні. спробуйте відправити не ACK ('1 'в 9-м CLK або ..., слідувати специфікації IIC. Ви використовуєте) після загального скидання, дозволити SDI контактний стати почати введення pin.then .... якщо раб stll нехай годинник низьким і не може detecte початку, я думаю, що деякі помилки дозволяють мазь державної машини нескінченний цикл ===> тільки ви можете зробити, це скинути раб becsuae це раб проблеми, а не господарем.
 
привіт, я думаю, що ви можете спробувати відправити "STOP", "СТОП" Сигнал скидання рабом і, отже, скинути "ПДР" до "високого". Я створив I2C і раніше, це, як це працює для мого дизайну. Удачи ... Розумний
 

Welcome to EDABoard.com

Sponsor

Back
Top