Доброго времени суток,столкнулся со странным поведением I2C. На шине два устройства PCF8574AT(одно устройство дисплей,второе размножитель портов) и мастер pic16f690. Проблема с инициализацией шины, она иногда виснет.Вот код который использую: void I2C_Start(){ I2C_Wait(); SEN=1; while(!SEN); }
Проблема в циклах while(!SEN);while(!R_W), тут и зависает программа.Если их убрать проблем не возникает все работает как надо. Но в документации CN_00735a от микрочипа они есть.
Поищите на сайте микрочипа, может там есть эррата насчет i2c... В циклы надо добавить переменную-счетчик и по ее обнулению вылет из цикла. Насколько мне известно, с железным i2c мало кто работает: намучившись, переходят на программный...
Если есть аппаратная поддержка, то думаю не стоит городить велосипед. Еще разобрал программу нашел 2 причины зависания:в первом случае неправильно выставил для одной из микрух ACK/NACK, вторая это проблема с подключеным PIc2Kit в режиме DEBUG без него все работает. Спасибо за совет, добавил счетчик при опросе флагов.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Вопросы только со слейвом. Аппаратный мастер работает без проблем. В теме, по моему, никто вопрос про слейв не ставил. К слову, в PIC24FJ256GA702 мастер I2C вообще отлично работает через DMA.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения