Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:0
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:4
Форум » starterkit.ru » Отладочные платы » SK-AT91SAM9260-SIMXXX
подключение SK-VideoADC-Plug
Pavel Ivanchenko
Добавлено 08.08.2010 16:05 Сообщение: 51
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Начинает доходить ...
Кадровый синхросигнал, по умолчанию, генерируется на оба полукадра, т.е. ISI (с набором синхров HS, VS) не сможет распознать полукадры ...
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 08.08.2010 16:39 Сообщение: 52
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Вобщем, так пока не понял, какие регистры ADV7180 перестроить, чтобы он генерировал кадровый через одно поле ...
Ну не FIELD же подавать вместо кадрового :) ...
Спуститься к концу Подняться к началу
Персональная информация
rw9uao
Добавлено 08.08.2010 16:55 Сообщение: 53
rw9uao
Ранг
5

Группа: Клиенты
Пункты: 6973
Регистрация: 26.03.2009
а если сграбить два подряд и сложить в общий буфер через-строчно?
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 08.08.2010 17:33 Сообщение: 54
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Дык с такой синхрой полный разнобой получится, т.к. ISI не различит четный от нечетного ...
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 08.08.2010 18:08 Сообщение: 55
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Вобщем, не знаю, как ребята умудрялись полноценные через-строчные кадры получать (если вобще этим озадачивались).
Мне видится только одно решение:
1) перед началом оцифровки, по прерыванию кадрового синхроимпулься, анализируем состояние FIELD сигнала и дожидаемся требуемого (пусть нечетного)
2) по приходу нужного полу-кадра запускаем работу ISI, по прерыванию следующего кадрового, продолжаем оцифровку
3) по прерыванию следующего кадрового завершаем процесс
4) приложение пользователя должно учитывать, что полукадры лежат в памяти последовательно

Думаю, первые два пункта можно опустить, если вместо VS подать FIELD (с палга ADV7180).
Спуститься к концу Подняться к началу
Персональная информация
rw9uao
Добавлено 08.08.2010 18:28 Сообщение: 56
rw9uao
Ранг
5

Группа: Клиенты
Пункты: 6973
Регистрация: 26.03.2009
на электрониксе кто-то занимался. и как раз ругались, что кадр пополам бьется по вертикали =)
Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 08.08.2010 20:31 Редактировалось 08.08.2010 20:32 Сообщение: 57
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Бъет по вертикали, если включить у V4L2 INTERLACED ...
Вобщем, махнул VS с FIELD, теперь ISI читает оба полукадра, составлял их потом в capture (правда как то криво получилось):

Спуститься к концу Подняться к началу
Персональная информация
Slavian
Добавлено 09.08.2010 09:37 Сообщение: 58
Slavian
0

Пункты: 1888
Регистрация: 21.05.2010
У меня все также проблема, не видеться плата АЦП по I2c, после того как я изменил на
Код

static void __init isi_set_clk(void)
{
struct clk *pck1 = 0;
struct clk *pllb = 0;

pck1 = clk_get(NULL, "pck1");
pllb = clk_get(NULL, "plla");
/* Sensor MCK Clock */
at91_set_A_periph(AT91_PIN_PB31, 0); /* ISI_MCK */

clk_set_parent(pck1, pllb);
clk_set_rate(pck1, 12000000);
clk_enable(pck1);
}


прерывания от ISI стали приходить. А после добавления в ek_i2c_devices
Код

{
I2C_BOARD_INFO("adv7180", 0x42 >> 1),
.irq = AT91_PIN_PB6,


},

и at91_set_gpio_input(AT91_PIN_PB6, 1);



Драйвер ADC7180 поднялся, но функция probe завершилась с ошибкой, вот кусок лога
Цитата

adv7180 0-0021: chip found @ 0x42 (i2c-gpio-1)
adv7180: Failed to probe: -6

свалилось на

Код

ret = i2c_smbus_write_byte_data(client, ADV7180_INPUT_CONTROL_REG, ADV7180_INPUT_CONTROL_AD_PAL_BG_NTSC_J_SECAM);


утилита i2cdetect также не видеть плату.
Вот мой конфиг ядра, все что касается i2c может где ни будь здесь собака зарыта ?
Цитата

CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_HELPER_AUTO=y
CONFIG_I2C_ALGOBIT=y

I2C system bus drivers (mostly embedded / system-on-chip)
#
# CONFIG_I2C_DESIGNWARE is not set
CONFIG_I2C_GPIO=y
# CONFIG_I2C_OCORES is not set
# CONFIG_I2C_SIMTEC is not set
# CONFIG_I2C_XILINX is not set

#
# External I2C/SMBus adapter drivers
#
# CONFIG_I2C_PARPORT_LIGHT is not set
# CONFIG_I2C_TAOS_EVM is not set
# CONFIG_I2C_TINY_USB is not set

#
# Other I2C/SMBus bus drivers
#
# CONFIG_I2C_PCA_PLATFORM is not set
# CONFIG_I2C_STUB is not set
CONFIG_I2C_DEBUG_CORE=y
CONFIG_I2C_DEBUG_ALGO=y
CONFIG_I2C_DEBUG_BUS=y
CONFIG_SPI=y
CONFIG_SPI_DEBUG=y
CONFIG_SPI_MASTER=y

Спуститься к концу Подняться к началу
Персональная информация
Pavel Ivanchenko
Добавлено 09.08.2010 10:03 Сообщение: 59
Pavel Ivanchenko
Admin
4.39

Пункты: 91534
Регистрация: 24.03.2009
Пол: Мужчина
Цитата
static void __init isi_set_clk(void)
{
struct clk *pck1 = 0;
struct clk *pllb = 0;

pck1 = clk_get(NULL, "pck1");
pllb = clk_get(NULL, "plla");
/* Sensor MCK Clock */
at91_set_A_periph(AT91_PIN_PB31, 0); /* ISI_MCK */

clk_set_parent(pck1, pllb);
clk_set_rate(pck1, 12000000);
clk_enable(pck1);
}
Этот кусок можно убрать, т.к. на плаге свой кварцевый резонатор и внешняя тактовая не требуется.

Драйвер ADV7180 в связке с ISI правильно работать не будет, уберите его из объявлений I2C устройств, иначе I2C-tools с ним работать не сможет.
Спуститься к концу Подняться к началу
Персональная информация
Slavian
Добавлено 09.08.2010 13:14 Сообщение: 60
Slavian
0

Пункты: 1888
Регистрация: 21.05.2010
Цитата

Драйвер ADV7180 в связке с ISI правильно работать не будет, уберите его из объявлений I2C устройств, иначе I2C-tools с ним работать не сможет.


Это понятно, нужно немного допилить драйвер ADC7180 для работы с ISI, просто в моем случае сам драйвер ADC7180 не может достучаться до плагина i2c_smbus_write_byte_data возвращает отрицательный результат.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » SK-AT91SAM9260-SIMXXX