Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: 3xSPI в небольшом корпусе
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Страницы: 1, 2
koyodza
Цитата
нет епром, а надо изредка перезаписывать несколько десятков байт конфигурации.
Что посоветуете - поставить внешнюю мелкую епромку, или использовать одну страницу (1 килобайт) программной памяти контроллера?

Этот вопрос довольно оригинально решен у ST в AN2594 и подобных.
sonycman
Цитата(koyodza @ Jan 1 2009, 00:07) *
Этот вопрос довольно оригинально решен у ST в AN2594 и подобных.

Да, спасибо за ссылку. Но я тут подумал, и что-то париться не хочется, воткну лучше микроскопическую внешнюю епромку smile.gif
Что удивило - пишут, что епром на контроллерах класса STM32 и LM3S отсутствует из соображений снижения цены... а как-же копеечные AVR?

Не, атмеловцы и правда молодцы. Сейчас вот убил свой "опытный образец" LM3S601, путём случайного переназначения ножки TRST (JTAG) на GPIO... и всё - чип работает, но его больше невозможно перепрограммировать!
Разрабы пол-даташита исписали предупреждениями на этот счёт (не помогло, м-да!), но сделать дельную защиту/восстановление не захотели...
Тут сразу вспомнился "неубиваемый" SAM7. Атмелу - a14.gif


Эх, блин, подарочек себе устроил на новый год... crying.gif
Теперь ждать, пока другой камень пришлют 05.gif
defunct
Цитата(sonycman @ Jan 1 2009, 01:18) *
Сейчас вот убил свой "опытный образец" LM3S601, путём случайного переназначения ножки TRST (JTAG) на GPIO... и всё - чип работает, но его больше невозможно перепрограммировать!
Разрабы пол-даташита исписали предупреждениями на этот счёт (не помогло, м-да!), но сделать дельную защиту/восстановление не захотели...

Луминаровцы "перестарались" с секурностью, через чур много всего "одноразового" sad.gif
Хотя в остальном чипы очень привлекательные.
sonycman
Цитата(defunct @ Jan 1 2009, 08:09) *
Луминаровцы "перестарались" с секурностью, через чур много всего "одноразового" sad.gif
Хотя в остальном чипы очень привлекательные.

Пишут, что это бага ядра - при назначении пина PB7 (альтернативная - И ГЛАВНАЯ - его функция - TRST пин JTAG) как пина GPIO житаг висит на "вечном" сбросе, и его уже нет возможности включить... по крайней мере, на ревизии B5... crying.gif

Жать, что не предусмотрен пин для стирания памяти, как на сэмах.
А так этот кортекс хорош - особенно маленьким 48 пиновым корпусом smile.gif
И однотактовой флеш во всём диапазоне частот.

Ладно, пока не приедет новый LM, поюзаю STM32, посмотрим, что за рыбка smile.gif
sonycman
Хм, SPI в STM32 поддерживает всего два формата передачи - 8 бит и 16 бит.
А моему ЖКИ на это плевать, ему подавай 9 бит sad.gif

Мда, стыдно, ARM и такой примитивный SPI, придётся как на AVR изголяться с девятым битом... smile.gif
defunct
Цитата(sonycman @ Jan 1 2009, 12:14) *
Пишут, что это бага ядра - при назначении пина PB7 (альтернативная - И ГЛАВНАЯ - его функция - TRST пин JTAG) как пина GPIO житаг висит на "вечном" сбросе, и его уже нет возможности включить... по крайней мере, на ревизии B5... crying.gif

Там помимо этого есть еще "одноразовое" отключение JTAG DAP, "одноразовая" защита страницы флеш sad.gif
sonycman
Цитата(defunct @ Jan 1 2009, 23:45) *
Там помимо этого есть еще "одноразовое" отключение JTAG DAP, "одноразовая" защита страницы флеш sad.gif

Короче, есть проблемы, это да... причём довольно серьёзные - приходится чипы выкидывать twak.gif

С STM32 тоже весело - вот я не хочу пользоваться громоздкими и неудобными библиотеками для выполнения простейших действий по записи/чтению периферийных/конфигурационных регистров контроллера.
Почему производитель не предоставил обычных хидеров с определениями регистров и их битов?
Например, нет определений битов готовности PLL и внешнего генератора в регистре Clock control register (RCC_CR).
Точнее, они есть, но в форме, пригодной только для библиотечной функции...
Вот урюки! sad.gif

Теперь надо самому определять некоторые значения...

У Luminance с этим всё в порядке smile.gif
sonycman
Попробовал STM32 на макс. быстрое переключение портов - как делал выше со Стелларисом.
Получилось не менее быстро, частота под ~9МГц (несмотря на 1 wait state при чтении флэш), но форма сигнала далека от идеальной (в отличие от LM3S):
Нажмите для просмотра прикрепленного файла
Код одинаковый в обоих случаях:
Код
    22:                 ClrPin(TEST);
0x080001D6 6148      STR      r0,[r1,#0x14]
    23:                 SetPin(TEST);
0x080001D8 6108      STR      r0,[r1,#0x10]
    18:         while (1)
0x080001DA E7FC      B        0x080001D6

STM32F103RBT6 работает на 48 МГц, от HSE через PLL, выводы GPIO настроены на макс. частоту.
Полупериоды с логической единицей идут различной ширины - видимо, сказывается наличие перехода после команды установки пина. Но как-то через раз smile.gif

ЗЫ: чёрт, форма импульсов просто ужасная, вольтовые выбросы - и это на олимексовской плате!
Стелларис на самопальной плате смотрится гораздо симпатичнее.
koyodza
Цитата(sonycman @ Jan 2 2009, 10:49) *
форма импульсов просто ужасная, вольтовые выбросы - и это на олимексовской плате!

Нет там таких выбросов. Это у Вас осциллограф какой-то неправильный. Или земля подключена через ж... USB-кабель.
sonycman
Цитата(koyodza @ Jan 3 2009, 01:19) *
Нет там таких выбросов. Это у Вас осциллограф какой-то неправильный. Или земля подключена через ж... USB-кабель.

Не исключаю. Однако условия одинаковые - один и тот же осциллограф и одни и те-же кабели.
Разные только платы и чипы.
Разница - налицо smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.