Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/256: Рейтинг темы: голосов - 256, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268

Контроллеры ARM по 80р (100 ног, USB 2.0 и пр) - где засада?

25.03.2010, 12:39. Показов 47443. Ответов 63
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток всем :)
Был вчера на конференции National Semiconductor - разговорился с человеком из промэлектроники. Он меня заинтриговал по полной программе - только я проникся ATmegaми, он мне расписал во всех деталях "волшебные" мк фирмы ST - ARM Sortix 3.

Если коротко - то от 36 до 144 ног, производительность по вычистению примерно в 150-200 раз выше меги (хотя конечно тут 72МГц), USB 2.0 /I2C/USORT, IRDA, SPI до 18Mbit, CAN 2.0B. И всё это счастье (например STM32F103V8T6 стоит порядка 80р). Энергопотребление конечно выше, но в стационарных системах это IMHO не принципиально.

Вот я и думаю - раз всё так замечательно - в чём же подвох ?

P.S. Пока что-то не могу въехать - как подстуупиться к разработке :( С ATMELом примерно понятно было, а тут не понятно есть ли недорогие программаторы или прошивка через UART/USB сразу "из коробки".
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.03.2010, 12:39
Ответы с готовыми решениями:

В одной банке 80 ног тараканьих и паучьих. Выведите варианты сочетаний количество пауков и тараканов. Паук 6 ног, таракан 8 ног
В одной банке 80 ног тараканьих и паучьих. Выведите варианты сочетаний количество пауков и тараканов. Паук 6 ног, таракан 8 ног

Контроллеры USB
После переподключения всех кабелей появилась ошибка драйвера:

Не работают контроллеры usb
Каждый раз при включении ноутбука (acer aspire 5552g) не работают usb контроллеры, стоят восклицательные значки, пишет код ошибки 10....

63
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 10:43
Студворк — интернет-сервис помощи студентам
Помогите мне с конкретной задачей - инициализацией таймера.
Куда я не обращался - все меня тыкают в даташит.
0
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268
07.07.2011, 10:45
Простой пример настройки таймеров в STM32:

Берём таймер 3:
Используем внутренним источником для тактирования, разрешаем в модуле RCC прохождение тактового сигнала до соответствующего таймера
RCC->APB2ENR |= RCC_APB2ENR_TIM3EN;

далее необходимо установить предварительный делитель на необходимый коэффициент деления, пусть будет 1000:
TIM3->PSC = 1000 - 1;

максимальное значение до которого будет считать таймер установим равным 255:
TIM3->ARR = 255 - 1;

Разрешим генерацию событий по окончанию счёта таймера:
TIM3->DIER |= TIM_DIER_UIE;

Разрешаем работу таймера и сброс по достижении максимального значения:
TIM3->CR1 = TIM_CR1_CEN | TIM_CR1_ARPE;
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 10:46
В то время как по AVR достаточно попросить - буквально на пальцах обьяснят(я сам могу помочь если надо)
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 10:47
Цитата Сообщение от shum_yms
Простой пример настройки таймеров в STM32:

Берём таймер 3:
Используем внутренним источником для тактирования, разрешаем в модуле RCC прохождение тактового сигнала до соответствующего таймера
RCC->APB2ENR |= RCC_APB2ENR_TIM3EN;

далее необходимо установить предварительный делитель на необходимый коэффициент деления, пусть будет 1000:
TIM3->PSC = 1000 - 1;

максимальное значение до которого будет считать таймер установим равным 255:
TIM3->ARR = 255 - 1;

Разрешим генерацию событий по окончанию счёта таймера:
TIM3->DIER |= TIM_DIER_UIE;

Разрешаем работу таймера и сброс по достижении максимального значения:
TIM3->CR1 = TIM_CR1_CEN | TIM_CR1_ARPE;
Мне нужен таймер Т3 а он помоему на другой шине сидит.
К тому же нужен подсчет внешних импульсов
0
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268
07.07.2011, 10:49
Цитата Сообщение от komtrottir
Настройка всех этих каскадов так же разжована в родной документации (раздел TIMERS) и в куче статей, в том числе опять же на русском.
Ткните меня туда где это на русском разжовано. Буду вам благодарен.
Может быть есть какое-то подобие справочника Евстифеева для STM32?

Доки на русском тупо ищутся яндексом - например базовый курс
http://yomdex.ru/yomdseorsh?text=STM32+ ... 0%BC&lr=56
(смотрим первые 4 ссылки)

Таймеры:
http://yomdex.ru/yomdseorsh?text=STM32+ ... 1%8F&lr=56
опять же первые 4 ссылки

В общем простой поиск в гугле/яндексе даст ответы на все ваши вопросы.
0
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268
07.07.2011, 10:53
Цитата Сообщение от komtrottir
Мне нужен таймер Т3 а он помоему на другой шине сидит.
К тому же нужен подсчет внешних импульсов
Я не совсем точно понял вашу задачу, но сути это не меняет - настраивайте таймер на тактирование от внешнего генератора, ставьте делители и прерывания - всё.
Вот вам наиподробнейший разбор работы таймера на русском http://iosyitistromyss.ru/arm-uchebnyj- ... stm32.html
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 10:56
Читал я многие из этих ссылок.
То что там приводится - это только первые шаги. А STM32 очень сложное у-во.
Я собс-но не против этого контроллера.
Он обладает очень важными ф-ями. Например, в таймерах мне очень нравится предделитель, т.к. его можно настроить 1...65536 с точностью до 1.
Но для каждой работы нужен свой инструмент.
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 11:01
Я не совсем точно понял вашу задачу, но сути это не меняет - настраивайте таймер на тактирование от внешнего генератора, ставьте делители и прерывания - всё.Вот вам наиподробнейший разбор работы таймера на русском http://iosyitistromyss.ru/arm-uchebnyj- ... stm32.html
Мне нужно считать внешние импульсы - к контроллеру подключен датчик расхода расхода жидкости.
Что касается STM32 все обьясняют как вы : все это где-то расписано.
Как говорится "а ты не умничай, пальцем покажи".
Т.е. обьясните на пальцах, как можно решить эту задачу.
Я конечно разберусь в этом сам, но меня очень сроки поджимают. Поэтому прошу других о помощи. А меня отсылают то туда то сюда.
Тем более, что это такая элементарная вещь - инициализация таймера.
А что будет, если копнуть DMA???
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 11:08
...
0
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268
07.07.2011, 11:17
При всём уважении к вам, komtrottir - вы перекладываете с больной головы на здоровую. Выше приведена куча ссылок где разжована раборта таймеров - что вам ещё нужно ? Разумеется готового кода специально для вас прямо сейчас и тут - никто не выложит. Фразы "я не ничего не понимаю" и "у меня ничего не получается" не конструктивны.
Нужно вам включить внешнее тактирование для таймера - пожалуйста, смотрим раздел "Внешний генератор (HSE)", общий алгоритм настройки таймера я уже привёл - измените настройку RCC, подключите нужный вам внешний порт и всё. На вопрос "почему у меня не проходит инициализация RCC при таком-то коде" можно что-то ответить. А отвечать на "вы меня не отсылайте к разжованым статьям на руссокм и документации - вы напишите код за меня" - тут уж извините :-\
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 11:20
Вот обычно на этом и заканчивается - все пузырятся, что кортекс это круто, а когда доходит до конкретного примера, то не многие готовы объяснить. Или сложно, а может быть проффесиональную тайну открывать не хотят.
Мне кажется чаще всего первое.
А что касается AVR, то достаточно зайти на соответствующий раздел, и можно в большинстве случаев получить помощь. Да и сам я могу кое в чем помочь.
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 11:22
Цитата Сообщение от shum_yms
При всём уважении к вам, komtrottir - вы перекладываете с больной головы на здоровую. Выше приведена куча ссылок где разжована раборта таймеров - что вам ещё нужно ? Разумеется готового кода специально для вас прямо сейчас и тут - никто не выложит. Фразы "я не ничего не понимаю" и "у меня ничего не получается" не конструктивны.
Нужно вам включить внешнее тактирование для таймера - пожалуйста, смотрим раздел "Внешний генератор (HSE)", общий алгоритм настройки таймера я уже привёл - измените настройку RCC, подключите нужный вам внешний порт и всё. На вопрос "почему у меня не проходит инициализация RCC при таком-то коде" можно что-то ответить. А отвечать на "вы меня не отсылайте к разжованым статьям на руссокм и документации - вы напишите код за меня" - тут уж извините :-\
Я обычно не прошу разжовывать мне. Можете зайти на указнную мной ссылку и убедиться в этом.
Просто прошу продемонстрировать, что решать задачи на армах лучше.
И не просто на словах, а на конкретном примере.
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 11:26
К тому же, если вы не покажете, я сам решу эту задачу и выложу по указанной ссылке решение с пояснением, что я и намеревался сделать. Чтобы другим было легче. Поднимаю вопрос, если никто ничего не посоветует, сам решаю, и выкладываю решение, насколько это возможно. Может кто посмотрит и посоветует как лучше это сделать. А кому-то может быть пригодится.
Я хотел показать, что армы - это не очень просто. И решать задачи нужно теми средствами, которые лучше всего подходят для конкретной задачи.
Короче, SWK прав.
SWK++
0
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268
07.07.2011, 11:35
Цитата Сообщение от komtrottir
Просто прошу продемонстрировать, что решать задачи на армах лучше.
И не просто на словах, а на конкретном примере.
Бред какой-то :-\ Кто вам сказал что "решать задачи на армах лучше" ? Это флуд и холивар из любой серии "XXX ЛУЧШЕ!". Не бывает "лучше" вообще - бывает лучше в конкретных случаях/обстоятельствах. Я привёл конкретно СВОЙ пример - и я обосновал СВОЙ выбор - наличие нужных мне аппаратных реализаций шин и wireless стало ключевым в моём случае. Хотите дрыгать ножкой и считать импульсы - наверняка тут и attiny хватит, и ARM не нужен - я тут никому ничего не навязываю, только наоборот - все пытаются меня убедить что нагородить кучу всего вместо одночипового решения для меня лучше :)
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 11:41
А пример решить можете?
0
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268
07.07.2011, 11:45
Цитата Сообщение от komtrottir
Я хотел показать, что армы - это не очень просто.
Простота - вещь сугубо индивидуальная и субъективная. Один говорит что XXX это просто, другому это кажется сложным и непонятным - о чём тут вообще можно спорить ?

Цитата Сообщение от komtrottir
И решать задачи нужно теми средствами, которые лучше всего подходят для конкретной задачи.
Короче, SWK прав.
SWK++
Никто и не утверждал обратного, и глупо отрицать очевидные вещи.
А вот с завидным упорством повторять "да любую из этих задач можно сделать на XXX, и ваш YYY никому не нужен" - это уже не конструктивный флуд.
0
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268
07.07.2011, 11:54
Цитата Сообщение от komtrottir
А пример решить можете?
Нет, писать для вас готовый код я не буду - не располагаю ни временем, ни желанием делать чужую работу. Подсказать направление и конкретные места для чтения - могу по мере возможности, ответить на конкретный вопрос - постараюсь, решать ваши задачи за вас - нет.
0
0 / 0 / 0
Регистрация: 02.11.2010
Сообщений: 499
07.07.2011, 12:05
Цитата Сообщение от shum_yms
Цитата Сообщение от komtrottir
А пример решить можете?
Нет, писать для вас готовый код я не буду - не располагаю ни временем, ни желанием делать чужую работу. Подсказать направление и конкретные места для чтения - могу по мере возможности, ответить на конкретный вопрос - постараюсь, решать ваши задачи за вас - нет.
Учитывая цель сайта, название раздела, в котором расположена тема, нет ничего страшного чтобы обьяснить новичку на пальцах как решить конкретную задачу. Тем более, что это всего лишь инициализация таймера.
Попросите об этом в разделе АВР и в большенстве своем вам помогут.
А на любой вопрос отсылать человека на даташит не сложно.
Так можно ответить на 99% вопросов.
А зачем тогда нужны форумы? Чтобы отсылать подальше?
0
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 268
07.07.2011, 16:56
Помогают, и здесь помогают - если задан конкретный вопрос. Как вам могут дать ГОТОВЫЙ РАБОЧИЙ КОД, если вы не сообщаете - какой язык, какой компилятор, какие библиотеки вы используете, какой режим вам нужен - с фильтрацией/без, какие диапазоны входных частот и прочее прочее. Вам уже кучу статей и документаций дали, где КОНКРЕТНО описана инициализация таймеров - вам нужно лишь выбрать нужное. В толстом мануале (RM0008 Reference manual) со страницы 366 (fikure 121) и далее приведены диаграммы работы таймеров, работающих от внешних источников - несколько вариантов - выбирайте любой ! С ТОЧНЫМ указанием пинов, функций и прочего прочего - КУДА ПОДРОБНЕЕ ТО ?
0
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
07.07.2011, 22:40
shum_yms, не кормите толстых троллей:) им все никак невдомек, что удобнее делать на том, что лучше знаешь. человек знает авр и ему куда легче на авр решать СВОИ задачки, это же очевидно. мне вот, когда я более плотно занимался армами, было НАМНОГО проще писать для них по многим причинам (больше памяти, память программ и данных одна, есть вменяемая отлаженная ртос, полноценные 32битные таймеры и т.п.). и вдруг мне надо писать под авр или пик. ага, начинаешь ковырять, пока раскуришь доку, пока помигаешь... и на все это уходит время, а вот на "сложный" арм оно бы не уходило! потом начинаешь писать софт и... блин, а вот здесь бы было здорово использовать ртос, а не городить автоматы... и т.д., и т.д... о чем спор-то? о том, что кто-то не может асилить что-то "посложнее" меги?

еще весело слышать про мегу8 и усб. это не усб, товарищи, это ОГРЫЗОК. для более-менее серьезной задачи он не подходит в принципе, не говоря о надежности этого решения вообще. SD-карты, к вашему сведению, по честному-то работают не через SPI. и если нужна скорость работы с ними - SPI в пролете, в то время как у взрослых контроллеров есть правильный интерфейс для SD;)

а еще весело, когда заводят разговор про "старшие пики" :))))) а чем, блин, они отличаются сильно от армов-то? или там много железа как в арме, но его настройка все так же проста?;) не подменяйте понятия.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.07.2011, 22:40

Найти количество ног N у K-главого дракона, если у всех вместе A голов и B ног
добрый день. проблема с задачей. У каждой S-ножки 1 голова. Найти количество ног N у K-главого дракона, если у всех вместе A голов и B...

стандартные usb хост-контроллеры определяются как неизвестные устройства
Такая проблема: в диспетчере оборудования стандартные usb хост-контроллеры определяются как неизвестные устройства, при попытке обновить...

Управление процессом газоочистки: где расставить датчики и контроллеры?
Здравствуйте,помогите пожалуйста, я пишу реферат про "Управление процессом очистки газовых выбросов",нам сказали что взять можно из...

Как настроить Eclipse и ARM-USB-OCD-H
Приветствую, для программирования микроконтроллера AT91SAM7S256 купил ARM-USB-OCD-H(посоветовали на сайте электр..щик), при попытке...

Laravel 5: где находится папка, в которой должны быть все мои контроллеры
Приветствую всех форумчан! Подскажите кто работал с таким фреймворком как laravel 5. Не могу понять где находится папка где должны быть все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru