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

logelectronix

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

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

  • Посещение

Репутация

0 Обычный

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

  • Звание
    Участник
    Участник
  1. Слыхал про RTT, но как-то не придал значения. Однако... Даже за 60 баксов можно получить колоссальную скорость.
  2. Понятно, что не для каждой задачи нужна максимальная скорость обмена. Даже 160 кбайт/с неплохой результат, а значит вывод отладочной информации через ST-Link/V2 тоже имеет право на жизнь. За вывод отладочной информации отвечает модуль ITM. Вот только не пойму -начиная с адреса 0xE0000000 расположены 32 32-х разрядных регистра (Stimulus port). Т.е. в любой из них кладем данные для передачи. И есть в регистре "ITM trace control" 23 бит - Busy. Как я понял - бит сигнализирует о занятости передатчика. Один на всех что ли? Тогда получается все как в UART - буфер передатчика и флаг занятости. В общем, надо как-то это дело попробовать. esaulenka, верно в 99% случаев достаточно одностороннего обмена.
  3. Воот, я об этом и спрашивал. Спасибо за пояснение. Да, можно так, но в одно движение из Кейла вряд ли получится загрузить. Во-во и не говорите. Хотя питание от программатора беру :rolleyes:
  4. Альтернатива USART

    В настоящее время (впрочем как и многие начинающие) использую для вывода отладочных сообщений USART. Т.е. помимо программатора к плате подключен еще и преобразователь USB-USART - неудобно же. Знаю, что есть такой интерфейс SWD, который поддерживает вывод отладочной информации через вывод SWO. Т.е. имея 1 программатор с интерфейсом SWD такой как ST-link/V2 можно и шить и получать отладочные сообщения. Например при использовании USART на скорости 921600 бод 1 байт можно передать примерно за 11 мкс. Достаточно быстро и погрешность установки скорости 0,16%. Быстрее пробовал, но не пашет почему-то. Использую преобразователь на ft2232. SWO может так же или быстрее? Нигде не найду конкретных значений.
  5. Во как, спасибо за разъяснения. Теперь все понятно.
  6. stm32f10x это CM3, но не суть. Спасибо за наводку. Касательно конкретно CM3 не нашел описания. Думал почитать смежно, но это может оказаться плохой идеей. Вдруг чего там намутили разработчики. Тут наверное замешан т.н. "Prefetch unit". как я понял он выполняет предварительную выборку след. команды, но не выполняет ее. Вот он и увеличивает счетчик на 4 (как раз на размер команды). А затем сама команда увеличивает еще на 36. Итого получится PC+40. Нашел в Cortex-M3 Technical Reference Manual Попробую сделать тестовый проект на ассемблере. (ну дык я на С++ пишу)
  7. Вот, например, запускаю симулятор и смотрю дизассемблер startup_stm32f10x_md.s Строку 133: LDR R0, =SystemInit компилятор разворачивает в строку: 0x0800016C 4809 LDR r0,[pc,#36] ; @0x08000194 Это значит, что будет загружено в R0 значение из памяти по адресу PC+36. И в данный момент PC = 0x0800016C. НО! 0x0800016C+36 = 0x08000190. Хотя компилятор в комментарии указывает другой адрес - на 4 байта больше. И в самом деле обращение идет по адресу 0x08000194. Как получилась такая разница? Сначала инкрементируется счетчик команд на 4 (переход к след. команде), а потом выполняется сложение и пр?
  8. Нет не померял, потому что ВИП-а для МК еще нету. Нечего измерять. А если и проектировать ВИП, то нужны адекватные требования. Я о чем и спрашиваю - можно или нельзя запустить МК в течении 0,5-1 мс. Это не я от фонаря решил, это условия у меня такие. Не получится-буду решать проблему по-другому.
  9. Согласен, камень стартует на внутреннем RC генераторе и он вроде сразу начинает работать без каких-либо задержек. Потом уже запуск внешнего, ожидание и прочее. Но внутренний всего 8 МГц/ Пошустрей хочется. Именно критично. Само собой напряжение нарастает не мгновенно, нужно некоторое время. Не думаю, что 10 мс, но 1 мс может занять. Т.е. уже +1 мс к старту минимум. быть может запуститься от RC и не париться?
  10. От момента появления питания до выполнения первой инструкции. Вот то уже интересно. Т.е. применение внешнего резонатора +10 мс к времени старта? Допустим, стабильность частоты в первые микросекунда не критична, лиши бы за 0,5-1 мс добраться до основной программы. да-да нужно именно гнаться за миллисекундами начала работы. А внтуренний RC генератор - панацея или нет?
  11. Нужен МК способный запуститься не более чем за 1 мс. Это основное требование. В общем случае производитель не особо важен (будь то Atmel, NXP, ST; 8 или 32 битный - особо нет разницы). Для меня сейчас важно выяснить можно ли безопасно и быстро запустить МК без сюрпризов. AVR, например может прошивку поломать если напряжение еще не успело дойти до приемлемого уровня. Тот-же AVR (не знаю во всех или нет) есть настройка, отвечающая за задержку включения. Можно поглядеть вот тут: Avr Fuse Calc. Минимальное время включения, которое можно получить при высокочастотном внешнем резонаторе составит 1K CK + 0 ms, т.е. 1024 периода колебания генератора. Так-то выглядит неплохо - даже при 16 МГц получим 64 мкс задержки. Но вот как это скажется на работе? Может он будет через раз включаться или еще что. Кто-нибудь задавался этим вопросом?
  12. Почитал я тут ответы. Много чего нового узнал. Кипарис = Cypress? Это Вы про CY8CKIT-043 ? Совсем отстал от жизни. Интересная штука, надо как нибудь раздобыть ее поиграться. Не-не мне достаточно. Я понял давно, что передам 3 раза по 8 бит и успокоюсь на этом :-). Правда было интересно почитать про ТАКОЕ многообразие контроллеров.
  13. Угу, звучит логично. А что посоветуете в качестве программатора/отладчика и отладочной платы? Для STM присмотрел STlink и дискавери (хватит или не?). Или есть альтернативы получше? А для AVR - AVRDragon или это ни к чему? Фирма платит, но платит 1 раз. Не хотелось бы нарваться на г. Буду брать что-то одно ессно.
  14. Ага, ну ногодрыганием - это понятно. Медленней, нежели аппаратно, зато полный контроль. Не особо принципиально получить 24-битную посылку разом. Мне казалось, что если сразу заполнять слово, то меньше вероятность накосячить. Верно, мне тоже интересно неужто все 8-битным SPI работают?
  15. Спасибо. Согласен, что старый друг лучше новых двух. Постою послушаю, может кто еще интересного расскажет.
×
×
  • Создать...