Перейти к содержанию
    

KanKan

Участник
  • Постов

    17
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о KanKan

  • Звание
    Участник
    Участник

Контакты

  • Сайт
    Array
  • ICQ
    Array
  1. Спасибо всем откликнувшимся и написавшим сюда и в личку. Вроде бы подходящий человек нашелся через это объявление. Не ожидал уже, если честно :)
  2. Удаленная временная работа (аутсорсинг). На текущий момент нужна помощь с кодом USB (Audio) в проекте на базе STM32. Примерно часов на 40-60. Примерно $25 в час. Под эту задачу наверное не найду никого до выходных и наймем местных. Но дальше будут (уже есть точнее) другие задачи по программированию STM32 и MSP430. Bare metal без ОС. Драйвера итп. От кандидата требуется адекватность, способность работать самостоятельно. Буду благодарен за советы где лучше искать подходящих людей. Михаил.
  3. Спасибо. Я бегло посмотрел софт доступный на сайте ST под эту плату и на первый взгляд там только Audio Out, причем usb библиотека более старой версии. Нашел пример Audio Speaker. Ничего похожего на микрофон/вход там вроде нет. -- Все сильнее задумываюсь насчет аутсорсинга. Может кто подскажет насколько сложно найти человека знакомого с stm32 и желательно usb, а также вероятно msp430 для удаленной работы part time? И где искать ? Вот на форуме можно хотя бы посты человека почитать и составить некоторое мнение. Я бы сам работал по выходным, но выходных уже нет просто :) Кончится тем что опять наймут кого-нибудь местного в штатах. Будет очень дорого и крайне неэффективно. Дико извиняюсь что пишу здесь а не в разделе "работа" который только недавно увидел.
  4. День добрый. Пытаемся добавить usb audio в устройство. Осваиваю и само USB и конкретные библиотеки от ST под STM32... Не хватает времени, слишком много всего надо успеть :). В примерах STM32 USB FS Lib 3.3.0 и OTG HS Lib 2.0.0 есть проекты Audio Streaming которые нормально работают. Писюк видит usb устройство как headphones и позволяет проигрывать аудио. Мне надо примерно тоже самое но слать аудио из устройства в комп. Тобишь это должен быть USB Audio Class Device видимый компом как источник аудио (микрофон или еще что). 1) Может кто видел такие примеры/проекты на основе STM32 библиотеки ? 2) Может кто подскажет как/где нанять кого-нибудь вменяемого за нормальные деньги кто бы за неделю-две переписал пример из библиотеки под наши нужды? Я бы сам интегрировал в наш проект. Вероятно будут и другие задачи. Мы находимся в штатах, так что работа удаленная. Всем спасибо.
  5. To Klen: Конечно, давайте ссылку! Я тут по исходникам FreeRTOS пытаюсь разбираться сравнивая версии для cortex и AVR :) А по поводу кейла и gnu все-таки... Отладочная информация всегда помещается в elf по некоему стандарту одинаковому для gnu и Кейл? Я тут запустил отладку в Кейл загрузив elf-файл полученный вне кейла и удивился что кейл открыл все нужные C-файлы и позволил пошагово отлаживать c-код через j-link. Я почему-то думал что для отладки в Кейле нужен кейловский файл проекта. Оказывается вся нужная инфа есть в elf-файле? Слегка неудобно эти глупые вопросы задавать... Я конечно видел что у компиляторов есть разные опции касающиеся генерирования отладочной информации, но тем не менее эти возможные варианты стандартизированны и одинаково понимаются что кейлом что gnu?
  6. Спасибо! То что нужно. Не хочется темы плодить... А может кто подскажет по поводу использования Keil uVision с GNU ARM toolchain... Как я понял в uVision нет возможности задать любые опции GNU компилятору/линкеру... кое какая свобода есть, но не полная. Или есть какие-то пути обхода? По идее я могу использовать мэйкфайл для сборки, но отлаживать в uVision с кейловским дебагером? Есть какие-то известные подводные камни при таком методе? Проекты естественно не под линукс. Просто gdb пока пугает слегка и не знаю как к нему jlink прикручивать.
  7. Ну да, вроде оно! Народ на других форумах правда упоминает некотрые странности/баги gcc-шного кода для VFP, но это уже баги gcc а не конкретной сборки, да и к томуже старых версий. Спасибо. Я сам пока разбираюсь с армами на примере ARM7 и Cortex-M3, до 9-го и сопроцессора еще не добрался, но уже давно лежит плата на lpc3180 которую надо запустить с поддержкой vfp для одного хобби-проекта.
  8. Ну вообще меня интересовало будет ли gcc генерить hardware VFP/FPU код для LPC3180 при использовании -mfpu=vfp. Как я понял, в LPC3180 есть "стандартный" армовский сопроцессор VFP9-S (VFPv2). Я вроде-бы где-то читал что халявная Codesourcery Lite не генерит hardware vfp код. Мол только платные версии это могут. Хотя теперь уже сомневаюсь... Может имелись ввиду старые версии codesourcery с GCC до 4.0 которые не поддерживали VFP вообще. А может писали про то что библиотеки в Lite версиях собраны без поддержки VFP а а новые Pro версии включают newlib которая"optimized for vfp". Меня интересует возможность использования сопроцессора в своем (не библиотечном) C-коде. Извиняюсь за непонятность вопроса :) Для меня это все несколько в новинку - что ARM что GNU toolchain. PS: задавая вопрос случайно зашел под старым (забытым) ником mikel.
  9. Последняя что мне присылали была Pro LP4.3418, надо новую попросить. Думал на std перейти, но вроде теперь и так (на Про) работает. Да и как-то неудобно начальству говорить... контора за Про лицензию уже заплатила, а выбирал компилятор я :)
  10. Вот, разбираюсь с ARM и GNU toolchain... В наличии имеется плата с STM32F103RB от Olimex и сеггеровский J-Link. С выбором тулчейна более менее понятно - Codesourcery и KGP от Klen'а прикрученные к Keil IDE для удобства. Большинство найденных в сети примеров под Cortex-M3 были для Keil или IAR. Может кто поделится не особо навороченными проектами под STM32 на GNU C? С прерываниями и чем-нибудь из перефирии. Желательно с использованием библиотечки от ST. Мне скорее для изучения GNU чем самого кортекса. С камнем вроде как по даташиту разобраться не проблема. Оно понятно что и для GNU документации много, но с примерами обучение как-то живее протекает :) А может бывают какие-то доки или FAQ по основным различиям при написании С-кода для Keil, IAR и GCC?
  11. Ошибки компилятора Hi-Tech C Pro

    Делал тут проект на PIC16F724 и Hi-Tech C Pro 9.60PL3 for Pic 10/12/16... Это фактически первый опыт с PIC и Hi-Tech. Форум почитать не успел и по незнанию взял эту Pro версию компилятора а не Std. Думал если Pro то лучше :) В результате вместно недели провозился две или три. Вот решил поделиться: Версия C Pro PL3 for PIC 10/12/16 доступная с htsoft.com совсем старая и глюкавая. Для PIC16F72x например, были неправильно заданы биты в регистрах TXSTA и OSCCON и куча других проблем. На их форуме в разделе "PICmicro & dsPIC >> Known Issues and Support Patches" (нужна регистрация) раздают 9.60PL3 build 3206 в котором многоее исправлено, но даже в нем за неделю нашлось порядка пяти ошибок: 1) Не работает вычитание двух переменных long с присвоением члену структуры st.X = A - B; // A,B,X - объявлены long 2) Не всегда генерится правильный bank select при доступе к битфилду в структуре (MyStruct.bit1=0). 3) При использовании более сложных/вложеных комбинаций struct и union, получившаяся структура некорректно отображается в окне Watch при отладке в MPLAB. Остальные баги сейчас не помню, но возникло стойкое ощущение что структуры поддерживаются очень плохо и есть проблемы с переключением банков памяти. То отсутствует нужное переключение, то вдруг зачем-то генерит три одинаковых инструции на переключение банка. При выключенной оптимизации код выходит сильно раздутый. Техподдержка у них конечно на высоте. При наличии лицензии, отправишь баг-репорт и в течение суток присылают исправление (на форум не выкладывают). Но уж слишком много в этом Pro проблем.
  12. Сегодня-таки руки дошли и я запустил генератор SPORT'a в режиме делителя частоты внешнего clock (SOC) для АЦП :) Жалко конечно такой навороченный модуль, но ведь всеравно не используется.
  13. Я понимаю, но мне надо именно от внешнего запускать ибо использую undersampling - частота дискретизации равна 1/8 несущей. В результате сразу выделяю модулирующий (AM) сигнал. Но надо синхронизировать частоту дискретизации с несущей. Требования по джиттеру высокие. В любом случае, спасибо за ответ! Ааааа... Спасибо вам за разъяснение и fontp за идею! Я не сообразил что он выдается наружу, никогда не использовал frame sync. Возьму на заметку. В жизни бы не догадался... :)
  14. Ну в готовом девайсе все что нужно делать аппаратно будет аппаратно. Горбатого леплю ибо это фактически стадия R&D и я занимаюсь только прошивкой DSP. Если ставить внешний делитель то это придется делать другому инженеру с которым у меня странные отношения и я не хочу его трогать. Не знаком с аббревиатурой SPORT. Это просто Serial Port или что-то особенное? Имеется ввиду один из свободных встроенных серийных портов? Так я бы с удовольствием воспользовался этим вариантом для ленивых, но серийный порт тоже не умеет аппаратно запускать встроенное ADC в TMS320F28335. Clock то он поделит, но всеравно ADC придется запускать через прерывание и Software SOC в обработчике. Не соображу что я выигрываю... Сейчас у меня на каждый пульс clock'a генерится внешнее прерывание и делитель в ISR. В случае SPORT будет одно прерывание на каждые 8 пульсов. Но как я понимаю, джиттер зависит только от времени реакции на последний из 8 пульсов (того который должен запускать ADC). Задержки прерываний для первых 7 пульсов вроде ничего не меняют. Тогда наверное нет смысла?
  15. Спасибо, но либо я что-то не понял либо все-таки нет возможности аппаратно делить _внешний_ тактовый сигнал (800kHz) на 8 и запускать от него (деленного, 100KHz) ADC не требуя процессорного времени. Обычные таймеры не умеют выдавать SOC, только через прерывание и программный SOC. ADC может запускаться от внешнего сигнала, но не может его делить. Модуль ePWM умеет запускать ADC и в нем есть таймеры которые наверняка могут делить, но они не могут работать от внешнего тактового сигнала. Вообщем уже не важно наверное. ADC будет запускаться от внешнего тактового 800 kHz без деления на 8. Все это через DMA в буфер, но при обработке 7 из каждых 8 отсчетов просто выброшу. Может даже выйдет настроить DMA сразу отбрасывать 7 отсчетов и не занимать память. Даже если не выйдет, то фиг с ним, пускай передает все 8, всеравно аппаратно и процессор не загружает абсолютно. Как я понимаю, если буффер куда пишет DMA разместить в отдельном блоке памяти, то даже коллизий DMA-CPU при доступе к памяти не должно быть.
×
×
  • Создать...