Доброго времени суток!
Вот уже месяц не могу поднять i2c мастер под ниос. Версия квартуса 10.1. Пробовал опенкоровский вариант, не заводится(. Вот такой вот код:
#include <stdio.h> #include "system.h" #include "opencores_i2c.h"
int main() { printf("Hello from Nios II!\n"); I2C_init(OPENCORES_I2C_0_BASE,ALT_CPU_FREQ,400000);
// now right to the leds I2C_start(OPENCORES_I2C_0_BASE,0xE0,0); I2C_write(OPENCORES_I2C_0_BASE,0x0,0); I2C_write(OPENCORES_I2C_0_BASE,0x51,1); return 0; }
Дает ответ NOACK постоянно. То есть не отвечает слейв устройство, хотя его адрес (0xE0) и адрес нужного порта (0x0) я ввожу правильно. Есть у кого-нибудь гарантированно рабочий i2c под nios (т.е. с tcl-скриптом для SOPC) ? А то я уже отчаялся почти... Как можно проверить работоспособность i2c без внешнего устройства? Может какие еще полезные советы? SDA и SCL завожу на двунаправленные пины правильно ли это?
|