[ВХОД]

Главная | Содержание | Форум | Файлы | Поиск | Помощь |
NAVIG
О форуме
Резонансные генераторы
Магнитные генераторы
Механические центробежные (вихревые) генераторы
Торсионные генераторы
Электростатические генераторы
Водородные генераторы
Ветро- и гидро- и солнечные генераторы
Струйные технологии
Торнадо и смерчи
Экономия топлива
Транспорт
Гравитация и антигравитация
Оружие
Нейтронная физика
Научные идеи, теории, предположения...
Прочие идеи (разные)
Новые технологии
Коммерческие вопросы
Барахолка
Патентный отдел
Сделай сам. Советы.
Конструкторское бюро
Помощь сайту...
Ищу спонсора или рекламодателя. Принимаю пожертвования на
Юmoney 4100135735990
Яндекс 5599 0050 7259 9603
Сберка 4276 1300 1935 2180

Денег нет,
...но вы держитесь там.
Удачи вам! И здоровья!


мобильная версия
Печатать страницу
Форум - Новые технологии - Сделай сам - Микроконтроллеры с архитектурой ARM Cortex-M. STM32 и другие - Стр.1
[ 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 ][>
sw1972 | Post: 507563 - Date: 10.09.16(18:55)
Тема посвящена микроконтроллерам с архитектурой ARM Cortex-M.
Они стали "убийцами" 8-разрядных микроконтроллеров, так как они 32-разрядные, дешёвые, производительные, нафаршированы мощной периферией, например, 16 разрядными таймерами(есть модели с 32-разрядными таймерами), 12-разрядными АЦП (как правило), 12-разрядными ЦАП (как правило), различными приёмо-передатчиками.
Их изготавливают многие производители. Выпускаются множество недорогих ознакомительных плат со встроенными отладчиками и программаторами.
Есть свободные среды разработки, что тоже важно.

_________________
Хорошее - враг лучшего
sw1972 | Post: 507564 - Date: 10.09.16(18:56)
Микроконтроллеры AVR всё ещё популярны, но они 8-разрядные. При той же самой цене можно найти гораздо более навороченные и нафаршированные более крутой периферией (как правило, содержат 12-разрядные АЦП, некоторые модели имеют даже 16-разрядные сигма-дельта АЦП на борту) 32-разрядные микроконтроллеры с архитектурой ARM Cortex M, например STM32 фирмы ST Microelectronics или SAM3 фирмы Atmel или LPC1XXX фирмы NXP. Найболее ходовые сечас STM32. Понятное дело, что конкурировать с 32-разрядными недорогими микроконтроллерами 8-разрядным микроконтроллерам AVR с каждым годом всё сложнее.
Для микроконтроллеров с архитектурой ARM Cortex M есть множество сред разработки, в том числе свободные:
- для микроконтроллеров от разных производителей есть свободная среда разработки CooCoxhttp://www.coocox.org - для микроконтроллеров STM32 есть свободная среда разработки System Workbench for STM32http://www.openstm32.org - есть также несвободная среда разработки IAR
Для начинающих фирма ST Microelectronics предлагает различные недорогие ознакомительные платы, например STM32F4DISCOVERY, которые содержат на борту отладчики ST-LINK, что очень удобно.

В микроконтроллерах с архитектурой ARM Cortex-M4, например STM32F3 и STM32F4 имеют на борту МАТЕМАТИЧЕСКИЙ СОПРОЦЕССОР и с их помощью можно осуществлять цифровую обработку сигналов. Но время не стоит на месте, сейчас самыми новыми считаются микроконтроллеры с архитектурой ARM Cortex-M7, например STM32F7, которые тоже относительно недорогие, но ещё более производительные, чем их предшественники.
Микроконтроллеры ARM Cortex-M потребляют немного и, в то же время, имеют высокую производительность.

_________________
Хорошее - враг лучшего
sw1972 | Post: 507565 - Date: 10.09.16(19:02)
Но имейте также в виду, что микроконтроллеры ARM Cortex-M сложнее, чем те же микроконтроллеры AVR или PIC. Их на порядок сложнее программировать, чем микроконтроллеры AVR или PIC, но они стоят того, чтобы их применяли в новых проектах, так как в большинстве случаев их применение более выгодно, чем применение 8-разрядных микроконтроллеров.

_________________
Хорошее - враг лучшего
dedivan | Post: 507566 - Date: 10.09.16(19:07)
Есть задачи, где определяющим является не числодробилка, а время реакции на прерывание- тут у АРМов пока плохо. Реакция на прерывание занмкает от 13 до 26 тактов и никто заранее не знает сколько точно будет. Все зависит от момента прерывания случайно.
С большинством восьмиразрядников все четко -2 такта строго.




_________________
я плохого не посоветую
sw1972 | Post: 507569 - Date: 10.09.16(19:15)
dedivan Пост: 507566 От 10.Sep.2016 (16:07)
Есть задачи, где определяющим является не числодробилка, а время реакции на прерывание- тут у АРМов пока плохо. Реакция на прерывание занмкает от 13 до 26 тактов и никто заранее не знает сколько точно будет. Все зависит от момента прерывания случайно.
С большинством восьмиразрядников все четко -2 такта строго.


Да, я тоже столкнулся с этой проблемой. Тем более, у тех же AVR обработчик прерывания пишется гораздо проще, чем для STM32. В программах для STM32 приходится вручную сбрасывать флаги, а в AVR это делается автоматически. В итоге обработчик прерывания у AVR короче по числу команд. Но STM32 отыгрываются более высокой тактовой частотой и 32-разрядной архитектурой, что даёт возможность уменьшить количество команд при выполнении математических и логических операций. А в 8-разрядных ЭВМ приходится делать многоходовые операции, перебрасывать данные из регистра в регистр, делать лишние операции с флагами. Преймущество 32-разрядных микроконтроллеров налицо.

_________________
Хорошее - враг лучшего
Maximusua | Post: 507581 - Date: 10.09.16(20:51)
Для первого знакомства такое годится ?
http://www.ebay.com/itm/2016-Raspberry-Pi-3-Model-B-Starter-Kit-With-Black-Case-Cooling-Fan-Heatsinks-/182270456525?hash=item2a702a72cd:g:sfAAAOSwP~tW3pfO
http://www.ebay.com/itm/2016-Original-Raspberry-Pi-3-Model-B-1-2GHz-1GB-RAM-WiFi-Bluetooth-IN-STOCK-/182272835957?hash=item2a704ec175:g:-kYAAOSwoudW6RO2


- Правка 10.09.16(20:53) - Maximusua
dedivan | Post: 507592 - Date: 10.09.16(23:01)
sw1972 Пост: 507569 От 10.Sep.2016 (16:15)
Но STM32 отыгрываются более высокой тактовой частотой

Для того чтобы сравняться тут с атмелами , армы долны иметь частоту выше 600 мгц. Есть такие. но это уже другие требования к монтажу, печатке, это уже не домашние технологии- только готовые заводские модули брать. Благо они уже тоже не такие дорогие бывают.
Старые сотики типа мотороллы можно на это использовать.
А если юэсби не нужен, то и сименсы старенькие пойдут.
Тут уже другой плюс армов вылазит- одинаковая архитектура.

_________________
я плохого не посоветую
sw1972 | Post: 507622 - Date: 11.09.16(08:25)
Maximusua Пост: 507581 От 10.Sep.2016 (17:51)
Для первого знакомства такое годится ?
http://www.ebay.com/itm/2016-Raspberry-Pi-3-Model-B-Starter-Kit-With-Black-Case-Cooling-Fan-Heatsinks-/182270456525?hash=item2a702a72cd:g:sfAAAOSwP~tW3pfO
http://www.ebay.com/itm/2016-Original-Raspberry-Pi-3-Model-B-1-2GHz-1GB-RAM-WiFi-Bluetooth-IN-STOCK-/182272835957?hash=item2a704ec175:g:-kYAAOSwoudW6RO2

Эти платы имеют совсем другое назначение, они по-сути являются полноценными персональными ЭВМ с цифровыми выходами, которыми пользователь может произвольно управлять, кроме того, на них установлены МИКРОПРОЦЕССОРЫ ARM Cortex-A, а это несколько другая архитектура. В ветке речь идёт о МИКРОКОНТРОЛЛЕРАХ с архитектурой ARM Cortex-M.

Можно предложить несколько плат.

STM32VLDISCOVERY, на которой установлен микроконтроллер STM32F100RBT6, ядро ARM Cortex-M3.


STM32F4DISCOVERY, на которой установлен микроконтроллер STM32F407VGT6, ядро ARM Cortex-M4.
Ключевые особенности(на английском):
STM32F407VGT6 microcontroller featuring 32-bit ARM Cortex® -M4 with FPU core, 1-Mbyte Flash memory, 192-Kbyte RAM in an LQFP100 package
On-board ST-LINK/V2 on STM32F4DISCOVERY or ST-LINK/V2-A on STM32F407G-DISC1
ARM® mbed™ -enabled (http://mbed.org) with ST-LINK/V2-A only
USB ST-LINK with re-enumeration capability and three different interfaces:
Virtual com port (with ST-LINK/V2-A only)
Mass storage (with ST-LINK/V2-A only)
Debug port
Board power supply: through USB bus or from an external 5 V supply voltage
External application power supply: 3 V and 5 V
LIS302DL or LIS3DSH ST MEMS 3-axis accelerometer
MP45DT02 ST MEMS audio sensor omni-directional digital microphone
CS43L22 audio DAC with integrated class D speaker driver
Eight LEDs:
LD1 (red/green) for USB communication
LD2 (red) for 3.3 V power on
Four user LEDs, LD3 (orange), LD4 (green), LD5 (red) and LD6 (blue)
2 USB OTG LEDs LD7 (green) VBUS and LD8 (red) over-current
Two push buttons (user and reset)
USB OTG FS with micro-AB connector
Extension header for all LQFP100 I/Os for quick connection to prototyping board and easy probing
Comprehensive free software including a variety of examples, part of STM32CubeF4 package or STSW-STM32068 for legacy standard libraries usage


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

Для любителей Ардуины выпускаются платы STM32 Nucleo.

_________________
Хорошее - враг лучшего
- Правка 11.09.16(08:39) - sw1972
sw1972 | Post: 507623 - Date: 11.09.16(08:34)
dedivan Пост: 507592 От 10.Sep.2016 (20:01)
sw1972 Пост: 507569 От 10.Sep.2016 (16:15)
Но STM32 отыгрываются более высокой тактовой частотой

Для того чтобы сравняться тут с атмелами , армы долны иметь частоту выше 600 мгц. Есть такие. но это уже другие требования к монтажу, печатке, это уже не домашние технологии- только готовые заводские модули брать. Благо они уже тоже не такие дорогие бывают.
Старые сотики типа мотороллы можно на это использовать.
А если юэсби не нужен, то и сименсы старенькие пойдут.
Тут уже другой плюс армов вылазит- одинаковая архитектура.

Не спорю, проблемы с прерываниями есть. Компиляторы генерируют очень длинный машинный код в обработчиках прерываний, не знаю почему, сам с этим столкнулся. Но не стоит забывать, что Кортексы отыгрывают в другом: в разрядности кода, более высокими тактовыми частотами, навороченной периферией. В большинстве случаев это перевешивает недостаток обработчиков прерываний.


_________________
Хорошее - враг лучшего
dedivan | Post: 507626 - Date: 11.09.16(09:33)
sw1972 Пост: 507623 От 11.Sep.2016 (05:34)
Компиляторы генерируют очень длинный машинный код в обработчиках прерываний, не знаю почему,

Не- это не компилятор виноват.
Это особенности железа- хитрый контроллер прерываний с приоритетами
и конвейерная архитектура с длинным конвейером- пока он сбросится, новым загрузится....это все время, это еще все не считая пересылок-сохранения рабочих регистров. В общем долго он все это делает.
Бывают задачки где этого времени нет- там атмелы ставят дополнительно к армам.
Посмотри -есть спутниковые рессиверы, смартфоны какие то- там так сделано.

_________________
я плохого не посоветую
Maximusua | Post: 507680 - Date: 11.09.16(16:00)
sw1972 Пост: 507622 От 11.Sep.2016 (05:25)
Эти платы имеют совсем другое назначение,...

Жалко что разговор о АРМах задержался и я поспешил
самостоятельно ...
Рекомендуемые платы не видел , а на глаза попала
вот такая . Еще взял к ней в придачу программатор
ST-LINK V2 .
Генератор понадобился с длительностью импульса
пока 100 нан , а там может и короче маленько.
Пока выкрутился обычным , а воспаленная фантазия
требует двустволку . Да еще и старт второго - от
синхронно , до с задержкой до 200 нан.
Пока тема не открывалась я был спокоен , а сейчас
заволновася ...
Вопрос : реально ли на этой плате (там Cortex M3
STM32F103C8T6 ) сделать такой генератор с несколькими
каналами да с независимой регулировкой параметров
импульса и скважности . Не упрусь ли в прерывания ?
Или еще во что ни будь .

У Вас нет прав скачивать этот файл. Зарегистрируйтесь .
- Правка 11.09.16(16:11) - Maximusua
Maximusua | Post: 507682 - Date: 11.09.16(16:22)
Вот тут виднее
Точная копия тог что у меня .

У Вас нет прав скачивать этот файл. Зарегистрируйтесь .
sw1972 | Post: 507691 - Date: 11.09.16(17:41)
Maximusua Пост: 507680 От 11.Sep.2016 (13:00)
sw1972 Пост: 507622 От 11.Sep.2016 (05:25)
Эти платы имеют совсем другое назначение,...

Жалко что разговор о АРМах задержался и я поспешил
самостоятельно ...
Рекомендуемые платы не видел , а на глаза попала
вот такая . Еще взял к ней в придачу программатор
ST-LINK V2 .
Генератор понадобился с длительностью импульса
пока 100 нан , а там может и короче маленько.
Пока выкрутился обычным , а воспаленная фантазия
требует двустволку . Да еще и старт второго - от
синхронно , до с задержкой до 200 нан.
Пока тема не открывалась я был спокоен , а сейчас
заволновася ...
Вопрос : реально ли на этой плате (там Cortex M3
STM32F103C8T6 ) сделать такой генератор с несколькими
каналами да с независимой регулировкой параметров
импульса и скважности . Не упрусь ли в прерывания ?
Или еще во что ни будь .

Без паники!
Я Вас утешу. Похоже, плата подойдёт для ваших задач.
Вы в прерывание не упрётесь. В таймерах есть функции ШИМ. Таймеры в этих контроллерах могут друг другом управлять согласно записям в управляющие регистры таймеров, не надо даже подпаивать внешние проводники.
Советую почитать даташит CD00161566.pdf и очень большое руководство пользователя на серию микроконтроллеров CD00171190.pdf (RM0008 Reference manual) размер которого 9536281 байт. Причём во втором документе раскрыты все подробности работы как с ядром МК, так и с периферией. Эти документы есть на сайте STMicroelectronics.



_________________
Хорошее - враг лучшего
Maximusua | Post: 507697 - Date: 11.09.16(17:57)
sw1972 Пост: 507691 От 11.Sep.2016 (14:41)
Я Вас утешу.

Большое спасибо !
Рекомендованные документы будут очень кстати !

sw1972 | Post: 507715 - Date: 11.09.16(20:20)
Maximusua Пост: 507697 От 11.Sep.2016 (14:57)
sw1972 Пост: 507691 От 11.Sep.2016 (14:41)
Я Вас утешу.

Большое спасибо !
Рекомендованные документы будут очень кстати !

Ядро микроконтроллера STM32F103C может работать на частоте до 72 МГц, которая формируется путём умножения частоты кварцевого генератора от 4 до 16 МГц или внутреннего RC-генератора 8 МГц с помощью системы ФАПЧ. Коэфициенты умножения задаются при старте программы.
Для длительностей импульсов 100 нс частоты до 72МГц будет маловато, так как точно задать 100 нс не получится. Но для тренировки и отработки программы плата подойдёт.
Потом можно будет перейти на микроконтроллеры STM32 с более продвинутыми ядрами, например STM32F4 или STM32F7.

dedivan Пост: 507626 От 11.Sep.2016 (06:33)
sw1972 Пост: 507623 От 11.Sep.2016 (05:34)
Компиляторы генерируют очень длинный машинный код в обработчиках прерываний, не знаю почему,

Не- это не компилятор виноват.
Это особенности железа- хитрый контроллер прерываний с приоритетами
и конвейерная архитектура с длинным конвейером- пока он сбросится, новым загрузится....это все время, это еще все не считая пересылок-сохранения рабочих регистров. В общем долго он все это делает.
Бывают задачки где этого времени нет- там атмелы ставят дополнительно к армам.
Посмотри -есть спутниковые рессиверы, смартфоны какие то- там так сделано.


В книге Мартин М. Инсайдерское руководство по STM32 на странице 27 сказано, что с момента возникновения прерывания до выполнения первой инструкции его обработки проходит ВСЕГО ЛИШЬ 12 циклов. По времени достаточно много.
И ещё 12 циклов потребуется для возобновления выполнения фоновой программы. По-сути 12+12=24 цикла впустую.

_________________
Хорошее - враг лучшего
- Правка 11.09.16(21:17) - sw1972
[ 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 ][>
У Вас нет прав отвечать в этой теме.
Форум - Новые технологии - Сделай сам - Микроконтроллеры с архитектурой ARM Cortex-M. STM32 и другие - Стр 1

Главная | Содержание | Форум | Файлы | Поиск | Помощь |
Valid XHTML 1.0 Transitional
Генерация страницы: 0.010 сек