Jump to content

    

вопрос по использованию HPS loan io

Хочу использовать 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 формируются нормально, но осциллографом на ногах ничего не вижу. Прелоадер пересобирать обновлять не забывал.

 

post-67084-1519286179_thumb.png

 

Кусок схемы (DD17, DD18 что стоят, что нет - SCL и SDA всегда висят в единице):

post-67084-1519286375_thumb.png

 

 

Самое обидное что если использовать HPS-ный I2C, то всё работает - можно из-под Линукса читать-управлять слейвами.

Куда копать? Почему ноги плис могут молчать?

Edited by ilkz

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this