Jump to content

    

vladimir_orl

Участник
  • Content Count

    196
  • Joined

  • Last visited

Posts posted by vladimir_orl


  1. Большое спасибо.

    Вновь возвращаюсь к данной теме.

    После некоторого поиска думаем, что проблема в уровне напряжения питания модуля MIPI у чипа Cypress CX3.

    То есть, при уровне питания 3.3 В всё работает, а при 1.8 В блок перестаёт работать.

    Проверить пока не можем... В даташитах подтверждения или опровержения не нашли...

    Может быть, кому доводилось на других чипах с поддержкой MIPI с таким явлением сталкиваться?

  2. Здравствуйте.

    Подключаем оптический сенсор OV5640 по линиям MIPI.

     

    На линиях данных всё хорошо, есть и высокочастотная и низкочастотная составляющие.

    На линии CLOCK LANE присутствует только LOW SPEED составляющая сигнала, HI SPEED часть отсутствует.

    Подскажите, в чём может быть дело?

     

    img_MIPI.jpg

  3. На гугле много информации по OV5640. Даже есть "левые" даташиты.

    Но это не хорошо.

    Когда подключили сенсор, выяснили также одну вещь.

    В параллельном режиме запускается хорошо.

    А в последовательной - просто никак.

    И уже официальный код попросили.

    Не хочет выдавать сигнал по МИПИ, и всё тут.

    Никто не сталкивался?

     

  4. Здравствуйте.

    Пишу софт для кастомной видеокамеры (используя USV Video Class - UVC)

    В процессе работы ей необходимо посылать сообщение хосту о том что "сейчас требуется сделать снимок".

    Сообщение посылается по нажатию кнопки, которая на камере расположена.

     

    Посмотрел описание UVC, там написано, что это всё делается через GET_INFO.

     

    Если кто знает, какие соображения есть? Подскажите что где внятное почитать можно?

     

    Надо ли создавать канал типа INTERRUPT ?

  5. post-73591-1523624471_thumb.jpg

     

     

    Позвольте продолжить тему.

     

    Сейчас только начинаю осваивать и верилог и подключение таких дисплеев.

     

    OSD057VA01CT_V0.4__With_Touch_.pdf

     

    Имею плату DE2-115 от альтеры (точнее терасик). Пишу на верилоге.

     

    Имею дисплей OSD057VA (даташит во вложении)

     

    Подскажите, сигналы vsync и hsync когда в 1, а когда в 0 ?

     

    И то же самое про сигнал DE.

     

    Как я понял, лучше перевести дисплей в режим sync ( не de-оnly). Правильно?

     

     

     

    Код модуля на верилоге:

     

    module osdDisplaySimple (input clkPin, input adjVal, output reg pixPin, output reg HYNC_PIN, output reg VSYNC_PIN, output reg dePin, output reg ledAdjPin, output refOutPin);
    
    
    integer pixCnt;
    integer lineCnt;
    integer frameCnt;
    integer ledAdjCnt;
    integer deLogic;
    
    
    
    assign refOutPin = clkPin;
    
    
    initial
    begin
        ledAdjCnt = 0;
        pixCnt = 0;
        lineCnt = 0;
        frameCnt = 0;
    
        HYNC_PIN = 0;
        VSYNC_PIN = 0;
        dePin = 0;
        ledAdjPin = 0;
    end
    
    
    always @(posedge clkPin)
    begin
    
        ledAdjCnt = ledAdjCnt + 1;
        if(ledAdjCnt > 1250)
        begin
            ledAdjCnt = 0;
            ledAdjPin =  ~ledAdjPin;
        end
        
    
    
            
        pixPin = ~pixPin;
    
        //    Pixels block    
        pixCnt = pixCnt + 1;
        if(pixCnt < 640*2)
            HYNC_PIN = 1;
        else if(pixCnt < 800*2)
            HYNC_PIN = 0;
        else
        begin
            HYNC_PIN = 0;
            pixCnt = 0;
    
            lineCnt = lineCnt + 1;
    
            if (lineCnt < 480)
                VSYNC_PIN = 1;
            else if(lineCnt < 525)
                VSYNC_PIN = 0;
            else
            begin
                VSYNC_PIN = 0;
                lineCnt = 0;
            end
        end
        
            
        dePin = HYNC_PIN & VSYNC_PIN;
    
    
    end
    
    endmodule

     

     

    топ-модуль:

     

    module top(
        input wire [17:0] SW,
        input wire [3:0] KEY,
        input wire OSC_50,
        output wire [7:0] LED_GREEN,
        output wire [6:0] HEX0,
        output wire [6:0] HEX1,
        output wire [6:0] HEX2,
        output wire [6:0] HEX3,
        output wire [35:0] GPIO,
        output wire UART_TXD,
        output wire [17:0] LED_RED
    );
        
       
        integer samples[1024];
        integer sampCnt1;
        integer sampCnt2;
        integer cnt;
        integer cntClk;
        integer trig;
        integer unitCnt;
       
    //module osdDisplaySimple (clkPin, adjVal, pixPin, HYNC_PIN, VSYNC_PIN, dePin, ledAdjPin, refOutPin);
    osdDisplaySimple Simple   (OSC_50, SW[3], GPIO[33],    GPIO[1],GPIO[2],    GPIO[3], GPIO[4], GPIO[11]);
    
    
    //    RED color
    assign GPIO[32] = SW[0];
    
    //    GREEN color
    assign GPIO[6] = SW[1];
    
    //    BLUE color
    assign GPIO[5] = SW[2];
    
    //    DMS
    assign GPIO[0] = SW[4];
    
    endmodule

     

     

    всё равно не работает....

     

     

    В какой полярности д.б. сигналы, подскажите пожалуйста.

  6. Здравствуйте.

    Делаю попытки разобраться с дизайнером GPIF II от Cypress для чипа FX3

    Кто-нибудь делал подобное?

     

    Так и не понял, как подсоединять к автомату состояний регистры, как добавлять полученный файл в проект.

    Подскажите, если кто знает...

     

    Для начала хотя бы меандр средствами гпифа научиться выводить...

  7. Здравствуйте.

    Подскажите, в чём лучше разрабатывать софт для tiny417/817

    В атмел студии 7 их не нашёл (может не самая свежая версия)

     

     

    Да, и скажите, есть ли у кого реальный опыт их использования?

  8. Здравствуйте.

     

    Имею Atmel Studio 7.

    Сейчас сижу в нём достаточно плотно, приходится постоянно перепрошивать плату.

     

    Всё хорошо, но имеется нюанс - окно прошивки является модальным и его приходится постоянно закрывать/вызывать.

     

    post-73591-1516887565_thumb.png

     

    В avr studio, к примеру, это окно можно "переставить" на задний план.

    Можно ли такое настроить в Atmel Studio 7 ?

     

    Или скажите, может в Atmel Studio 7 появилась кнопка "прошить", чтобы один раз настроить, а не подключаться постоянно каждый новый раз?

  9. Подскажите, есть ли общедоступные библиотеки USB-serial мостов на верилоге, с функциональностью ftdi?

    Какие драйвера надо ставить на ПК для их работы?

    Если можно подробнее, а то я совсем новичок в данном вопросе.

  10. Сам себе отвечаю.

     

    В микросхеме ftdi ft2232h есть два канала А и В. Их можно открывать по штвексу (по номеру). Т.е. А - это первый, В - это второй.

    В винде 10 почему-то когда открываешь первый, то открывается канал В.

    Пришлось открывать по дескриптору. Что кстати правильнее. Всем спасибо.

  11. Переадресуйте, если тема не в этой ветке.

     

    Был написан софт, который управлял видеоустройством через ft2232h

     

    Под вин хр и 7-ку работает отлично, под 10-ку не открывается микросхема ftdi (режим FT_BIT_MODE_SYNC_FIFO)

     

    Где-то натыкался, что у 10-ки с этим проблема, если можно, киньте ссылку или так объясните, что можно сделать.

     

    Посмотрел код ftdi.

     

    Там есть параметр InterfaceIdentifier (символьный)

     

    В хр, 7-ке, 8-ке он равен "А"

    В 10-ке он равен "B"

     

    Надо будет письмо на сайт ftdi отослать.

     

  12. Здравствуйте.

    Пытаюсь использовать систему команд Neon.

    Кто-нибудь пробовал?

     

    Интересуют вопросы:

    Есть массив данных 16-бит. Как к нему обращаться, используя команды неон?

    В цикле, захватывая за раз по 8 чисел?

     

    Надо ли выравнивать массив по границе 16 байт или это уже не надо?

     

  13. Вообще, у нее, кажется, достаточно мозгов, чтобы компилять прямо на ней)

     

    Это иногда очень долго. С учётом того что вместо винта сд-карта.

     

    Натыкался в инете, люди quemu ставили, на ней собирали и отлаживали.

    Скажите, пробовал кто?

     

    Есть у кого опыт?

     

    С месяц назад перешел на Visual Studio Linux support стало удобнее.

     

    Это конечно круто.

    vim и gdb отдыхают

  14. Здравствуйте.

     

    Имеется встраиваемая система с линуксом.

    Сетевых средств она не имеет, имеется только СОМ-порт.

     

    Общаюсь с ней с помощью путти по СОМ порту.

     

    Скажите, можно ли так передавать файлы?

     

    А то сейчас приходится сд-картой перекидывать, что достаточно долго.

  15. Спасибо, Xenia!

     

    Разобрался. Оказалось такой глюк (даже слов нет, одни эмоции) из-за разницы в напряжениях. То есть сейчас взял STK-500 с mega128 (то есть эмулировал свою плату) и подсоединил её к ардуине. В STK-500 есть возможность регулирования рабочего напряжения. Когда напряжение = 5 В, всё хорошо. Когда переводим на 3.3 В (а напряжение на ардуине так и равно 5 В), появляется вышеописанная особенность. Хотя проверял осциллографом, на 3.3 вольтах рабочая частота вроде остаётся прежней (8 МГц).

     

    Теперь либо ардуину на 3.3 В переделывать, либо софт с вайринга на си переписывать.

  16. Здравствуйте. Собственно проблема. Имеется плата с установленной на ней atmega128 (3.3 В, 8 МГц). Эта плата через SPI общается с другой платой (ардуино 328, 5 В, 16 МГц).

    Ардуино выступает мастером. Шлётся один байт, в ответ тоже байт. И вот, иногда моя плата вместо ответа возращает принятый байт. Первый раз вообще с таким столкнулся.

    Думал, может мега не успевает принять, поставил и задержку побольше и частоту снизил - всё равно то же самое. Может, кто сталкивался с таким?

  17. Здравствуйте. Разбираюсь с микросхемой контроля заряда BQ34Z100. Она общается с МК по I2C.

     

    В даташите на неё написано следующее:

     

    STANDARD DATA COMMANDS

    The bq34z100 uses a series of 2-byte standard commands to enable host reading and writing of battery

    information. Each standard command has an associated command-code pair, as indicated in Table 2. Because

    each command consists of two bytes of data, two consecutive HDQ/I

    2

    C transmissions must be executed both to

    initiate the command function and to read or write the corresponding two bytes of data. Standard commands are

    accessible in NORMAL operation. Also, two block commands are available to read Manufacturer Name and

    Device Chemistry. Read/Write permissions depend on the active access mode.

     

     

    Пока что смог посмотреть только текущее напряжение. И то командой 0х0809 выдаётся напряжение в сотнях мВ. Командой 0х0707 выдаются милливольты (младший байт).

    Если кто работал с ней, подскажите. На инофорумах как-то всё расплывчато.

     

    STANDARD DATA COMMANDS

    The bq34z100 uses a series of 2-byte standard commands to enable host reading and writing of battery information. Each standard command has an associated command-code pair,

    as indicated in Table 2. Because each command consists of two bytes of data, two consecutive HDQ/I2C transmissions must be executed both to

    initiate the command function and to read or write the corresponding two bytes of data. Standard commands are accessible in NORMAL operation. Also,

    two block commands are available to read Manufacturer Name and Device Chemistry. Read/Write permissions depend on the active access mode.