ilkz 0 22 февраля, 2018 Опубликовано 22 февраля, 2018 (изменено) · Жалоба Хочу использовать HPS'ные пины в качестве обычных для i2c контроллера. Для этого настроил в QSys'е нужные мне ноги как LOAN IO и подцепился к ним: inout I2C_1_SDA, inout I2C_1_SCL, assign {loan_out[52], loan_out[51]} = {2'b00}; i2c i2c_inst ( ... .scl_pad_i (loan_in[52]), .scl_padoen_o (~loan_oe[52]), .sda_pad_i (loan_in[51]), .sda_padoen_o (~loan_oe[51]), ) hps hps_inst ( ... .hps_0_h2f_loan_io_in (loan_in), .hps_0_h2f_loan_io_out (loan_out), .hps_0_h2f_loan_io_oe (loan_oe), .hps_io_hps_io_gpio_inst_LOANIO51 (I2C_1_SDA), .hps_io_hps_io_gpio_inst_LOANIO52 (I2C_1_SCL), ) Завел контроллер (который от opencores), но столкнулся со следующей проблемой: при попытке отправить по i2c байт - на выходе плиски ничего нет. Причем, сигналтап показывает что сигналы sda_padoen и scl_padoen формируются нормально, но осциллографом на ногах ничего не вижу. Прелоадер пересобирать обновлять не забывал. Кусок схемы (DD17, DD18 что стоят, что нет - SCL и SDA всегда висят в единице): Самое обидное что если использовать HPS-ный I2C, то всё работает - можно из-под Линукса читать-управлять слейвами. Куда копать? Почему ноги плис могут молчать? Изменено 22 февраля, 2018 пользователем ilkz Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ilkz 0 26 февраля, 2018 Опубликовано 26 февраля, 2018 · Жалоба Решено: была ошибка в коде. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться