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

esaulenka

Свой
  • Постов

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

  • Посещение

  • Победитель дней

    2

Сообщения, опубликованные esaulenka


  1. Я не зря упомянул, что работаю с карточкой работаю по одному сектору.

    Основные проблемы, как мне кажется (подробного исследования не делал) - большая задержка между командой "считать сектор" и началом выдачи данных.

    Эти измерения наверняка проводились на команде "считать несколько секторов, пока не остановим", оно должно работать заметно шустрее.

    И на запись значения тоже будут другие.

     

     

    Надо срочно задуматься, нужно ли писать за раз мегабайты в одно место, или нужно писать разные кусочки по 512 байт. Скорость будет принципиально разная.

  2. Дурацкий вопрос: а кто-то гарантирует, что на SD можно записывать 5 мегабайт в секунду?

     

    У меня (правда, контроллер другой, и работаю я только на чтение) процесс весьма неспешен. Точно не мерял, но получается заметно меньше 5 Мбайт/сек. Впрочем, можно списать на мои кривые руки, старый контроллер SD в моём камне, на работу с карточкой по одному сектору, ...

    Впрочем, функция эта в моём устройстве используется больше в технологических целях, юзер может и потерпеть :)

  3. А что происходит между 3,0 и 2,65 ? "Работает, но мы ничего не обещаем" ? :)

     

     

    Александр, и ещё вопрос:

     

    какая точность у встроенного RC-генератора?

    в одном месте обещают 1%, но при каких условиях, непонятно (любые разрешённые напряжения питания, любая разрешённая температура?)

  4. При такой постановке задачи, как в 1 сообщении, можно получить разрешенные прерывания внутри обработчика прерывания, что плохо (когда не нужно :) )

    И чего же плохого, если я буду записывать в VICIntEnable / VICintEnClr в произвольные моменты времени?

     

    Вложенных прерываний так получить не удастся (ибо бит в CPSR будет сброшен), и всё работает даже в user mode.

  5. Установите MDK-3.40 в нем появилась нативная поддержка J-Link/J-Trace, его и ставьте в качестве отладчика и флешера вместо RDI.

     

    Спасибо!

    Только вот почему-то не работает...

     

    Нажимаю Options - Utilites - J-Link/J-Trace - Settings - Programming Algorithm - Add

     

    Выбираю LPC2000 IAP2 256kB Flash, жму OK. Окошко алгоритмов программирования по-прежнему пустое.

    Несколько первых позиций в списке добавить можно, причём появляется не то, что я добавлял.

     

    При попытке записать во флеш кейл ругается, что не знает алгоритм.

     

    Не сталкивался никто, случаем? Подозреваю, будет универсальный совет "обновись" - сейчас 3.62c.

  6. Расскажите, пожалуйста, как устроены порты на современных контроллерах.

     

    Особенно интересно, как работает 5V Tolerant у LPC-шек. Там между выводом и VCC вместо защитных диодов ставят стабилитроны, что-ли?

     

    Даташит на AVR'ы видел, а больше никто эту информацию разглашать не желает? :)

     

     

    И ещё. Pull-Up'ы на портах у LPC23xx в момент резета остаются? По идее, должны...

  7. 90% вероятности, что я знаю этот привод :) Бауманка, да? СМ7 ? :)

     

    Предлагаю подумать на тему непрерывной отправки данных от ГМК в сторону ПК.

    Быть может, удасться пропихнуть побольше данных...

     

    Вариант "ПК высылает запрос, контроллер привода (в нынешней терминологии - СМК) его пережёвывает и отвечает" два года назад... ну, не то, чтобы тормозил, но данных передавал крайне мало.

     

     

    PS стукнись, пожалуйста, в почту мой-ник@gmail.com. Интересно, что вы там понаделали. Ну и я могу быть полезен ;)

  8. Итак, по пунктам.

     

    Драйвер сразу 16 интерфейсов... Ну, я думал на эту тему. Вроде б получается страшный монстр. Запись-то ещё ничего, а вот как ЭТО будет читать...

     

    Книжку про scmRTOS листаю. Интересно, но пока не всё понятно.

     

    RTX-RL. Почему безальтернативно? Ну кейл, ну и что? :)

    Хотя... пришлите, пожалуйста, на мой-ник@gmail.com. Интересно.

     

    Данные процессы вполне можно ускорить. Ибо большую часть времени мы стоим и ждём.

  9. дано:

    Железяка с процессором LPC2366

    16 внешних устройств с I2C-подобным протоколом. На каждое устройство - по своей шине.

    Кучка светодиодов.

     

    LPC-шка обменивается с внешними устройствами (протокол реализован софтово, дрыганьем GPIO), зажигает для пользователя нужный светодиод.

     

    Проблема в следующем: на данный момент обмен осуществляется последовательно, и идёт достаточно долго. Хочется ускорить процесс раз этак в 5 :)

     

    Решение, скорее всего - операционка, 16 потоков обмена с устройствами и один - мигания лампочками.

     

    Алгоритм обмена - дернули ногой, подождали 10 мкс (можно больше, т.к. у нас мастер), опять дернули ногой... Ожидание ответа от внешнего устройства - 1..5 мс. Соответственно, есть периоды, когда возможно отдать управление (меня устроит и вытесняющая многозадачность? она ведь проще?).

     

     

    С операционными системами никогда не работал, поэтому требуется что-то очень простое в работе и освоении. Желательно наличие порта под Keil и LPC.

    Также желательно чистое Си - на Си++ ничего серьезного я не делал.

    Ресурсоемкость... Побыстрей да поменьше, конечно, хочется, но сейчас используется 10% камня.

  10. Так сказано ж - в гугле "SD card specification", "SD card SPI interface" и т.д.

     

    Не надо спрашивать в яндексе "как мне купить SD карту". Оно ж и скажет "протокол недоступен обычным пользователям"...

     

    Что карточка microSD, ничего не значит - команды она поддерживает те же самые, что и обычная.

  11. отправляю пакет длиной в десяток байт из терминалки Terminal v1.9b by Br@y++ то LMX9838 выдает этот пакет побайтно с паузой между байтами в несколько десятков миллисекунд.

     

    У меня сильные подозрения, что товарищ Br@y работает с портом побайтно. Желающие могут проверить PortMon'ом :)

    Хорошая терминалка, вот только из-за этой "фичи" подтормаживает... :(

     

     

    Кстати, Iezuit, а можно вопрос про 9820 ? Какую вы антенну использовали?

    Я недавно занимался LMX'ами (увы, проект остановлен...), остановился на 9838.

    2.4 ГГц - это слишком непонятно :)

  12. Вариант на рисунке не нравится.

    Просто потому, что я не знаю, как обеспечить постоянный клок. И как обеспечить старт приёма с определённого момента, тоже не знаю.

     

    Разве что внешний клок, SSP в режиме SPI slave, и запускать его, когда потребуется. Но как не пропустить начало, непонятно.

     

    Мой вариант проще :)

  13. Остаётся тока узнать что такое SSP, и можно ли его юзать по рисунку 42, страница 22 (только в моём случае это 2 АЦП, а не три).

    Не могу сообразить, как покрасивее сбрасывать busy indicator. SPI не предназначен для однократного дерганья ноги Clk.

     

    Вариант на рис.39 попроще.

    И скорость (1280 / 32) с чуть большим запасом :)

     

    смотри:

    запускаем таймер, запускаем преобразование.

    -через 720 наносекунд - прерывание от таймера, запускаем чтение 2 слов из АЦП

    -через 2000 наносекунд - прерывание от таймера. настроить сброс таймера в этом прерывании

    запускаем преобразование

    разбираем данные

  14. минимальное значение делителя SPCCR для мастер мода =2.

    Странно. А вот тут написано другое...

    In Master mode, this register must be an even number greater than or equal to 8.

    Итого: SPI у филипсов небыстрый. Весьма небыстрый...

    У меня под рукой нету даташитов на 2194 - там есть пара SSP ? Тот же SPI, но в 4 раза быстрее и с небольшим FIFO.

     

     

    надо внешний кварцевый резонатор иметь 30мГц

    Или надо научиться пользоваться PLL'ем.

×
×
  • Создать...