Я использую этот микроконтроллер S32K142 64 контакта.
В справочном руководстве я вижу много контактов, которые, как я полагаю, являются только выходными, упоминаются как входные/выходные. Например, микроконтроллер является ведущим тактовым генератором I2C. Значит, в таком случае часы можно только выводить, верно? Но почему он указан как ввод-вывод?
Большинство устройств I2C допускают растяжение тактовой частоты , благодаря чему ведомое устройство может немного «замедлиться», когда оно не может догнать скорость SCLK, генерируемую ведущим.
Подчиненный делает это, растягивая линию SCLK на низкий уровень после приема/отправки байта (в это время мастер отказывается от управления SCLK). Ведомое устройство возвращает часы на высокий уровень, когда оно готово к обработке следующего байта. Мастер обнаруживает это и снова берет на себя управление SCLK, и связь возобновляется.
В таких устройствах I2C SCLK также должен быть двунаправленной линией (открытый сток/открытый коллектор).
Также являясь выводом SCLK ввода/вывода, он обеспечивает гибкость настройки устройства I2C как ведущего/ведомого.
Воутер ван Оойен
Только я
Воутер ван Оойен