Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:1
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » ARM
не получается тактировать STM32F107
A-Soft
Добавлено 25.07.2013 22:40
0
Сообщение: 1
A-Soft
0

Пункты: 1458
Регистрация: 17.02.2013
Пол: Мужчина
Из: Заринск
Хочу разогнать F107 до максимальных 72МГц.
программа:
Цитата

char PLL_MUL=3; // Коэффициент умножения PLL
RCC->CFGR2 &=~(RCC_CFGR2_PREDIV1); // Предочистка делителя HSE
RCC->CFGR2|= RCC_CFGR2_PREDIV1_DIV1; // Делить частоту HSE на 1
RCC->CFGR &=~((RCC_CFGR_PLLSRC|RCC_CFGR_PLLXTPRE|RCC_CFGR_PLLMULL)); // Предочистка
RCC->CFGR |= RCC_CFGR_PLLSRC_PREDIV1; // Тактировать PLL от HSE/PREDIV1
RCC->CFGR|=((PLL_MUL - 2)<<18); // Умножать частоту на PLL_MUL
RCC->CR |= RCC_CR_PLLON; // Запустить PLL
while ((RCC->CR & RCC_CR_PLLRDY)==0) {} // Ожидание готовности PLL
RCC->CFGR &=~RCC_CFGR_SW; // Очистить биты SW0, SW1
RCC->CFGR |= RCC_CFGR_SW_PLL; // Тактирование с выхода PLL
while ((RCC->CFGR&RCC_CFGR_SWS)!=0x08) {} // Ожидание переключения на PLL

// FLASH->ACR |= FLASH_ACR_PRFTBE; //разрешить буфер предварительной выборки для флеш-памяти
// FLASH->ACR &= ~FLASH_ACR_LATENCY; // предочистка и подготовка к
// FLASH->ACR |= FLASH_ACR_LATENCY_2; // работе на 72 МГц - пропуск 2 тактов для флеш.
// здесь почему-то зависает - отключил этот блок для флеш.
while (1)
{
GPIOE->BSRR = GPIO_BSRR_BR6;
GPIOE->BSRR = GPIO_BSRR_BS6;
}


Последним циклом дергаю порт E6 и снимаю с него частоту.
(Е6 настроен на 50Гц - MODE=11b, CNF=00b)
Частота на осциллографе 8МГц - это 3 команды последнего цикла вместе
То есть реальная частота тактирования 24 МГц.
Почему не умножается на коэффициент???
Думаю если бы был сбой и контроллер переключился на HSI, то частота на осциллографе
должна стать 8 / 3 = 2,6 МГц.
Тыкал всяко коэффициенты умножения/деления, а больше 8МГц не могу поднять осциллограф.
Спуститься к концу Подняться к началу
Персональная информация
A-Soft
Добавлено 31.07.2013 23:13 Сообщение: 2
A-Soft
0

Пункты: 1458
Регистрация: 17.02.2013
Пол: Мужчина
Из: Заринск
Блин, на ассемблере 5 команд.
Цитата

main_2:
mov.w R0, #4194304
str.w R0, [R5, #0x80c]
movs R0, #64
str.w R0, [R5, #0x80c]
b.n main_2

Даже 5 команд при 8 МГц на ноге - это 40 млн. команд в секунду. Порт настроен на 50МГц - это ограничивает скорость? Или ассемблеровские команды съедают по 2-3 такта? При скорости в 72 МГц и сигнале на ноге 8 МГц выходит что за цикл процессор отрабатывает 9 тактов. Вроде команды несложные...
Кто-нибудь может разъяснить это?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 01.08.2013 00:54 Сообщение: 3
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
ну вы даете.. имхо, тут stm32xxx не пользуется большой популярностью..

33 страницы вероятно полезной инфы
http://electronix.ru/forum/index.php?showtopic=83144

старик гугль
stm32f107 gpio site:electronix.ru
stm32f107 pll site:electronix.ru
stm32f107 25 мгц site:electronix.ru

зы: 107 можно поменять на 105..

насчет fast gpio mode на том же электрониксе был тред, сошлись на том, что это фуфло.. сути не помню, но 50МГц - это величина подтяжки и якобы будет быстрее работать.. могу наврать - поищите тот тред в разделе АРМы

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
A-Soft
Добавлено 01.08.2013 21:31 Сообщение: 4
A-Soft
0

Пункты: 1458
Регистрация: 17.02.2013
Пол: Мужчина
Из: Заринск
Спасибо, Jury093. Ваш совет как всегда очень дельный.

Цитата
имхо, тут stm32xxx не пользуется большой популярностью..

А что пользуется популярностью?
Просто для решения моих задач один хороший человек сказал "только контроллер", и он же указал на эту плату. Он раньше работал только с ATMega, показал светодиодные примеры на ней, и сказал что веб-камеры атмеги не потянут, а ARM'ы - современные. В Промэлектронике кроме 107-й были GSM и GPS ориентированные модули. Вот уже полгода осваиваю 107-ю и начальную электронику в свободное время. Для изучения, экспериментирования вполне хорошая штука.
Но мне нужен контроллер, принимающий фотографии с 2-х веб-камер (стандартные USB 2.0) с частотой 1-2 снимка в секунду (с одной камеры), 4 входа АЦП, 2 выхода ЦАП, 4 выхода ШИМ и экранчик с тачскрином.
Только не хочется связываться с ОСями (Windows, Android). В крайнем случае - Linux с текстами исходных кодов.
Сейчас вижу что 107-я не тянет эти запросы. Может посоветуете что-нибудь подходящее?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 01.08.2013 22:41 Сообщение: 5
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Вот уже полгода осваиваю 107-ю и начальную электронику в свободное время. Для изучения, экспериментирования вполне хорошая штука.

во-во, у меня эта плата валяется 2+ года, иногда посматриваю и обратно в коробку складываю - ибо там писанины немеряно, а результат будет минимальным..


Цитата
Но мне нужен контроллер, принимающий фотографии с 2-х веб-камер (стандартные USB 2.0) с частотой 1-2 снимка в секунду (с одной камеры), 4 входа АЦП, 2 выхода ЦАП, 4 выхода ШИМ и экранчик с тачскрином.

не знаю насколько подойдут параметры АЦП, но под вашу задачу неплохо ложится например mat91sam9g45, стоимость 4000 против 2000 за хх107
в два разъема USB вставили две камеры, АЦП - 4 канала выведены в виде входа touchscreen -есть готовый драйвер для АЦП, каналов ШИМ как минимум 3 (подключал rgb led - работает), экран либо свой либо тут что-то типа mio480x272+touch, ЦАП внешний чип на SPI канал - т.о. по железу примитивно просто, в качестве ОС линукс с готовой поддержкой железа..
софтово поддержать тоже несложно.. либо скрипты и внешние софтины либо самописная сишная прога..
в качестве бонуса полная сетевая поддержка..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
A-Soft
Добавлено 02.08.2013 23:12 Редактировалось 03.08.2013 23:55 Сообщение: 6
A-Soft
0

Пункты: 1458
Регистрация: 17.02.2013
Пол: Мужчина
Из: Заринск
Jury093, очень интересное предложение. Поверхностно все просмотрел, есть несколько вопросов:
1.У рекомендованных экранов (SK-MI0430FT-Plug или SK-ATM0700D4-Plug) на борту ADS7843. Выход SPI от ADS7843 включен в шлейф (SK-MI0430FT-Plug)-Х3? Или его надо отдельно лепить?
2.К плате SK-MAT91SAM9G45 может быть подключена SK-VideoADC-Plug для оцифровки видеоизображения. В заголовке указано что 6 входных каналов. Это можно с 6 аналоговых камер одновременно принимать изображения?
3.SK-AT91SAM9G45-XC6SLX - там разъемов для самоделок 6 штук против 2 у SK-MAT91SAM9G45 (не считая JTAG). Большая ли разница у них по части освоения новичком?
4.Для заливки софта JTAG-программатор, как я понял, не является необходимым? Но все же как подобрать (для IAR)? Имеется ST-Link/V2 (от STM32F107) - подойдет?
5.Софт пишу на IAR. Там прописан данный камень. Вот с Linux'ом вообще не сталкивался. Они же как-то сращиваются? В смысле IAR может рожать проги под Linux? И где можно нарыть подробную настройку IAR'а для AT91SAM9G45? типа вот этой?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 03.08.2013 12:44 Сообщение: 7
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
мнэ.. я не предлагал, а всего лишь высказал свое мнение..
по пунктам
1. в исходной комплектации железо состегивается и у АРМа используются пины в режиме spi-gpio - программная эммуляция интерфейса spi - этим достигается универсальность подключения практически к любой плате, в качестве жертвы легкое снижение производительности..
в теории чуть порезав провода, можно подключиться на нативный SPI АРМа, с т.з. логики ничего не изменится..
2. у меня есть такая плата (вроде из первых поставок), из многих попыток одна оказалась почти успешной.. тут на форуме народ ее успешно запускал, но в режиме переключения даже между 2 камерами были недовольства..
полистайте даташит - там входной коммутатор и 1 видеоАЦП.. исхо, для slowTV подойдет, но не более..
3. гора разъемов - это от ФПГА, если хочется их задействовать, то надо писать прошивку для ФПГА и организовывать мост между АРМом и ФПГА - направление интересное, но надо внимательно смотреть схему и понимать, как и чего достичь..
4. проще Павлу написать на почту и спросить, он проектирует эти платы и лучше знает, что использовать.. я как-то исторически не люблю jtag, хотя успешно подключался к альтере, ксайлинксу и латтису. ну и к АРМам в режиме ознакомления..
5. по JAR ничего не скажу, ибо даже не знаю что это.. смотрите в доках или по форумам.. в системах под линукс я пишу прямо в линуксе на обычном Си..

перед тем, как покупать кит под вашу задачу, прикиньте требования к АЦП, возможно характеристики набортного вас не устроят, аналогично с ЦАП - тип интерфейса, скорость трансфера.. почитайте о шиме.. etc
с камерами тоже бывает засада - желательно иметь или купить такие, которые поддержаны в ядре и не сильно глючные.. как вариант искать камеру с поддержкой на выходе jpeg - будет меньше нагрузка на основной процессор - на форуме это обсуждалось..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
A-Soft
Добавлено 03.08.2013 23:47 Редактировалось 04.08.2013 00:12 Сообщение: 8
A-Soft
0

Пункты: 1458
Регистрация: 17.02.2013
Пол: Мужчина
Из: Заринск
Цитата
мнэ.. я не предлагал, а всего лишь высказал свое мнение..

авторитетное мнение. Я действительно неправильно выразился. Виноват.
Павла спросить не получится в отпуске
И заказать плату оперативно - тоже.
IAR (JAR - очепятка) - среда программирования для STM32F107 и других камней, позволяет сразу прошивать корневую прогу через JTAG-программатор и выполнять отладку в процессе работы МК. Для SK-AT91SAM9G45-XC6SLX на сайте уже рекомендован Xerxes. читать надо было внимательней чтобы не задавать лишних вопросов.
Требования к АЦП не великие - периодически опрашивать показания приборов (вольтметры). Анализировать всю кривую в реальном времени пока не вижу необходимости. В случае чего можно будет FPGA озадачить этим. (может глупость сморозил - только сегодня узнал о его существовании, почитал шапки, рекламы... )
Так-то видно что это уже совсем другой уровень по сравнению с STM32F107 и тем более с ATMega32...
Очень понравился SK-AT91SAM9G45-XC6SLX, но смущает еще SK-iMX6Q, SK-iMX53, SK-DM8148. Сильно подкупает High Speed USB-Host'ами и годом выпуска... Но пугает неизвестностью в плане освоения - скорее всего мало что еще о них написали. Скажите плз свое мнение по этому поводу, а то "лезу в воду не зная брода".
Для меня очень важный параметр выбора - осваяемость. Программировать люблю, но Си начал осваивать только в этом году по причине МК. Еще даже рефлексы нужные не наработались - не часто пишу, язык нравится - более вёрткий чем Delphi, Basic или Assembler. Стал изучать USB-протокол для написания своего хост-драйвера и драйвера для веб-камеры ... Современные веб-камеры на USB 2.0 (480 Мбит/с) - этим обоснован интерес к SK-IMX.
Могу ли рассчитывать на Вашу поддержку в процессе освоения?
Ну или хотя бы ссылок толковых накидайте...
Аглицкий даташит вряд ли осилю. Про STM32-то всю информацию брал отсюда.
Главное - запустить экранчик с тачскрином и помигать светодиодами. А дальше эмпирическим путем.


С Уважением, A-Soft.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 05.08.2013 01:41 Сообщение: 9
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Так-то видно что это уже совсем другой уровень по сравнению с STM32F107 и тем более с ATMega32...

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

Цитата
Очень понравился SK-AT91SAM9G45-XC6SLX, но смущает еще SK-iMX6Q, SK-iMX53, SK-DM8148. Сильно подкупает High Speed USB-Host'ами и годом выпуска... Но пугает неизвестностью в плане освоения - скорее всего мало что еще о них написали. Скажите плз свое мнение по этому поводу, а то "лезу в воду не зная брода"

ну.. на вкус и цвет фломастеры разные.. я беру киты для хобби, мне нравится к ним подпаивать железячки или просто реализовывать свои интересы..
какой кит вам подойдет, решать вам (запросы и деньги ваши).. на мой взгляд семейство atmel будет попроще в изучение и освоение - архитектура попроще, доки получше, ядра хорошо поддерживают (3.6, что новее не смотрел)..
freescale и Sitara(ti) - _очень_ запутанные исходники, очень навороченные процы.. это цена за мощь медийной и периферийной части..

Цитата
Для меня очень важный параметр выбора - осваяемость

имхо, тут примерно как с языками.. поймешь принципы построение софтовой системы, на новые потребуется в разы меньше усилий..

Цитата
Могу ли рассчитывать на Вашу поддержку в процессе освоения?

на полноценную врядли - работа, дом съедают массу времени и сил.. спрашивайте тут или в почту, что знаю - посоветую, ну и форум еще существует - там много полезного написано..

Цитата
Ну или хотя бы ссылок толковых накидайте...

ссылка одна и главная - www.google.com и это без шуток
ещё есть масса полезной информации на форуме electronix.ru, там пасется большое число stm32-водов..

Цитата
Аглицкий даташит вряд ли осилю

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

Цитата
Главное - запустить экранчик с тачскрином и помигать светодиодами. А дальше эмпирическим путем.

путь правильный по направлению, но быстро надоедает.. потом хочется функционала - прикручиваем шрифты, выводим первый текст, потом графику, пишем либы и пытаемся пристегнуть чужие - как гимнастика - безумно интересно, но с т.з. КПД совершенно неэффективно.. (пройдено и не раз)..

как-то так..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
A-Soft
Добавлено 05.08.2013 22:50 Сообщение: 10
A-Soft
0

Пункты: 1458
Регистрация: 17.02.2013
Пол: Мужчина
Из: Заринск
Цитата
я беру киты для хобби, мне нравится к ним подпаивать железячки или просто реализовывать свои интересы..

Цитата
работа, дом съедают массу времени и сил..

У меня все так же. Однажды даже пытался поработать программистом. Не то пальто! Хочется делать что хочется, а не то что надо.
Сейчас реализую идею в области своей работы. Может и прибыль какую принесет. Поэтому средств и сил не жалею. Только надо чтобы все сам, своей головой.
Цитата
freescale и Sitara(ti) - _очень_ запутанные исходники

Возможно так сделано чтобы программный код хорошо делился на параллельные потоки в процессе работы? Чтобы многоядерный процессор мог ускорить? На что может повлиять путаница в исходниках?
Цитата
английский технический достаточно прост, сложные абзацы вполне можно скармливать гугл-переводчику..

Переводил паспорт осциллографа гугл-переводчиком. Были бракозябры. Например что ACQUIRE означает "выборка" - всю голову изломал. Если бы не читал про осциллографы - половина паспорта была бы непонятной. А то что абзацы переводит - огромный плюс. Только даташит даже на STM32 ну очень не маленький. А на более мощные чипы по-любому еще больше. Хотя сначала придется ОСь осваивать, а уж потом непосредственно железо.
Цитата
...но быстро надоедает.. потом хочется функционала...

Это и есть эмпирический путь. Написал прогу, которая работает, потом на ее базе экспериментируешь в том направлении где больше нравится.
У меня на STM32 светодиоды-ШИМ трехцветные светодиоды-энкодеры-экранчик-прерывания-таймеры-ШИМ сервопривода-тактирование... В пень въехал на USB. 1,5 Мбита/с как-то вообще тухло.
Цитата
прикручиваем шрифты, выводим первый текст, потом графику, пишем либы и пытаемся пристегнуть чужие - как гимнастика - безумно интересно, но с т.з. КПД совершенно неэффективно.. (пройдено и не раз)..

А как по-другому изучать? Литературы мало, надо экспериментировать.
label1: Загрузил голову, ухватил что-то, освоился, покачался в стороны, понял пределы, поставил следующую цель, goto label1
А КПД какого процесса имелось ввиду?
Все таки USB 2.0 думаю перевесят. Трудностей в электронике и программировании как-то не боюсь. Хотя очень хочется побыстрее освоить...
Цитата
ну и форум еще существует - там много полезного написано..

Так-то оно так, но именно у Ваших ответов и советов гораздо больше попаданий в яблочко.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » ARM