Мигать светодиодом. ARM или не-ARM?
- SIM31
- Это не хвост, это антенна
- Сообщения: 1363
- Зарегистрирован: Чт апр 04, 2013 22:22:57
- Откуда: Белгород, РФ
Re: ARM или не-ARM?
Нет не такой и не ARM. Там другая архитектура в принципе:
Native fixed point DSP support, dual port SRAM, multi layer data bus, peripheral DMA controller, peripheral event system and intelligent peripherals move performance and power consumption to the next step. ...
Порты работают на своей частоте, везде свои кэш память, эти "микроконтроллеры" мощнее первых пентиумов.
А в моем случае остается полная совместимость с предыдущими микроконтроллерами, плюс дополнительные плюшки, что "бесплатно" предоставляет новый технологический процесс.
Частично что-то подобное и делают, но новые ревизии микроконтроллеров только снижают потребление (типа Atmel picoPower). Наверное лучше разгоняются, чем предыдущие модели, в жидком азоте пишут под 70 МГц тактовая частота вместо 16. На ARM частоты выше, но тут нет фрагментации микроконтроллера на ядро, шину данных, даже порты на своей частоте работают, а у 8-битников всё едино и работает синхронно "по честному".
Как не разрушить совместимость с 8-битными микроконтроллерами можно подумать. Вон x86 процессоры (когда они были слабее микроконтроллеров еще) тянут команды еще со времен DOS, чтобы не терять совместимость. В микроконтроллерах же с совместимостью не заморачиваются. Оно оправдано, но так как некоторые микроконтроллеры стали долгожителями и стандартом по сути (легендарные Atmega 8 и прочие), можно озадачится и улучшенными версиями с полной совместимостью. Добавить только несколько команд для обработки 32-битной математики...
Правда на месте финансистов, если бы предложили вложить в это дело 1 млн $, с малой вероятностью на коммерческий успех, я бы отказался. На 99% не пойдет в продажу, вряд ли будет спрос. Ну сотню - другую купят экспериментаторы и всё на этом. Аналогично, как гиковский Paralax Propeller 8-ядерный микроконтроллер, прикольно, оригинально, но промышленностью не встребован.
Native fixed point DSP support, dual port SRAM, multi layer data bus, peripheral DMA controller, peripheral event system and intelligent peripherals move performance and power consumption to the next step. ...
Порты работают на своей частоте, везде свои кэш память, эти "микроконтроллеры" мощнее первых пентиумов.
А в моем случае остается полная совместимость с предыдущими микроконтроллерами, плюс дополнительные плюшки, что "бесплатно" предоставляет новый технологический процесс.
Частично что-то подобное и делают, но новые ревизии микроконтроллеров только снижают потребление (типа Atmel picoPower). Наверное лучше разгоняются, чем предыдущие модели, в жидком азоте пишут под 70 МГц тактовая частота вместо 16. На ARM частоты выше, но тут нет фрагментации микроконтроллера на ядро, шину данных, даже порты на своей частоте работают, а у 8-битников всё едино и работает синхронно "по честному".
Как не разрушить совместимость с 8-битными микроконтроллерами можно подумать. Вон x86 процессоры (когда они были слабее микроконтроллеров еще) тянут команды еще со времен DOS, чтобы не терять совместимость. В микроконтроллерах же с совместимостью не заморачиваются. Оно оправдано, но так как некоторые микроконтроллеры стали долгожителями и стандартом по сути (легендарные Atmega 8 и прочие), можно озадачится и улучшенными версиями с полной совместимостью. Добавить только несколько команд для обработки 32-битной математики...
Правда на месте финансистов, если бы предложили вложить в это дело 1 млн $, с малой вероятностью на коммерческий успех, я бы отказался. На 99% не пойдет в продажу, вряд ли будет спрос. Ну сотню - другую купят экспериментаторы и всё на этом. Аналогично, как гиковский Paralax Propeller 8-ядерный микроконтроллер, прикольно, оригинально, но промышленностью не встребован.
Re: ARM или не-ARM?
Чем STM32 не подошли? Работают на частотах выше 70 МГц без охлаждения в жидком азоте.
Парочка статей для начала http://purebasic.mybb.ru/viewtopic.php?id=575
http://purebasic.mybb.ru/viewtopic.php?id=564
А вот про разгон (без жидкого азота
) http://purebasic.mybb.ru/viewtopic.php?id=583
Парочка статей для начала http://purebasic.mybb.ru/viewtopic.php?id=575
http://purebasic.mybb.ru/viewtopic.php?id=564
А вот про разгон (без жидкого азота
- SIM31
- Это не хвост, это антенна
- Сообщения: 1363
- Зарегистрирован: Чт апр 04, 2013 22:22:57
- Откуда: Белгород, РФ
Re: ARM или не-ARM?
[uquote="Мурик",url="/forum/viewtopic.php?p=3141232#p3141232"]Чем STM32 не подошли? Работают на частотах выше 70 МГц без охлаждения в жидком азоте.
А вот про разгон (без жидкого азота
)[/uquote]
STM32 совсем другая архитектура. Если взять STM32F4 они мощнее первых пентиумов
Соответственно весь набор прибанбасов от обычных процессоров. Так же вариант еще мощнее системы:
И что там? Бездушные молотилки цифровых данных. Atmega как-то душевнее, хочешь во фрейворке ардуиновском программируй, хочешь вручную любой бит меняй любого регистра, красота
Скорее всего поэтому в сообществе радиолюбителей STM32 как-то долго приживаются, хотя могли еще лет 5 назад стать стандартом. Кому нужна мощность выберут Raspberry Pi, а помигать лампочкой хватает и Atmega. Тем более там пины по 40 мА, для лампочки хватит с запасом ))
А вот про разгон (без жидкого азота
STM32 совсем другая архитектура. Если взять STM32F4 они мощнее первых пентиумов
Raspberry Pi 3
SoC: Broadcom BCM2837
Процессор: ARM Cortex-A53 (4 ядра)
Графический процессор: Broadcom VideoCore IV
Оперативная память: 1Гб LDDR2
И что там? Бездушные молотилки цифровых данных. Atmega как-то душевнее, хочешь во фрейворке ардуиновском программируй, хочешь вручную любой бит меняй любого регистра, красота
Скорее всего поэтому в сообществе радиолюбителей STM32 как-то долго приживаются, хотя могли еще лет 5 назад стать стандартом. Кому нужна мощность выберут Raspberry Pi, а помигать лампочкой хватает и Atmega. Тем более там пины по 40 мА, для лампочки хватит с запасом ))
Re: ARM или не-ARM?
STM32 это не только мощное вычислительное ядро, но и развитая периферия. Вот к примеру возможности таймеров одной из младших моделей M3.
А это младшая модель. Про возможности старших уже молчу.
Остальная периферия также более функциональная чем у ATmega.
ATmega не поддерживает многое из перечисленного.16-битный счётчик с автоперезагрузкой.
16-битный программируемый делитель частоты: с 1 по 65535.
Схема синхронизации для запуска ЦАП.
Генерация прерывания и/или запроса DMA по переполнению счётчика.
До 4-х каналов для:
Захвата сигнала (input capture).
Сравнения вывода (output compare).
Генерации сигнала ШИМ (выровненного по границе или по центру).
Генерации одиночных импульсов.
Схемы синхронизации для управления таймерами при помощи внешних сигналов и для соединения нескольких таймеров друг с другом.
Комплементарные выходы с программируемым dead-time.
Счётчик повторений.
Вход BRK для сброса выходов таймера или выставления их в известное состояние.
Поддерживают инкрементальные (квадратурные) энкодеры и датчики Холла.
Генерация прерывания или запроса DMA по следующим событиям:
Обновление: переполнение счётчика.
Событие-триггер: старт, остановка, инициализация счётчика или его обновление внутренним или внешним триггером.
Захват сигнала.
Сравнение (output compare).
Включение BRK.
А это младшая модель. Про возможности старших уже молчу.
Остальная периферия также более функциональная чем у ATmega.
- Zhuk72
- Сверлит текстолит когтями
- Сообщения: 1231
- Зарегистрирован: Ср янв 29, 2014 08:41:31
- Откуда: Баку
- Контактная информация:
Re: ARM или не-ARM?
Кувалдой забить сапожный гвоздь можно, но неудобно.
Такая избыточная функциональность нужна не всем и не всегда.
Я сейчас осваиваюсь с М3, понимаю, что это очень насыщенная вещь, но для мелочи я точно достану 8-битный ПИК, а не STM32 и уж точно не STM8.
Такая избыточная функциональность нужна не всем и не всегда.
Я сейчас осваиваюсь с М3, понимаю, что это очень насыщенная вещь, но для мелочи я точно достану 8-битный ПИК, а не STM32 и уж точно не STM8.
Каждый имеет право на свое личное ошибочное мнение.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
- SIM31
- Это не хвост, это антенна
- Сообщения: 1363
- Зарегистрирован: Чт апр 04, 2013 22:22:57
- Откуда: Белгород, РФ
Re: ARM или не-ARM?
[uquote="Мурик",url="/forum/viewtopic.php?p=3141465#p3141465"]ATmega не поддерживает многое из перечисленного.
А это младшая модель. Про возможности старших уже молчу.
Остальная периферия также более функциональная чем у ATmega.[/uquote]
Во всем этом есть и минус - очень сложно. Если на ATmega несколько команд на Си или ассемблере и уже мигаешь лампочкой, с кристальной ясностью происходящего. То в STM32 можно пол жизни вникать, целая вселенная, с оборудованием, регистрами и компиляторами. Смотрим код чтобы байтик в UART отправить
Для ATmega8 низкоуровневый код:
Для Ардуины вообще Serial.begin(38400) и всё.
Таймеры у STM32 вообще могут быть сложнее, чем 8-битный контроллер целиком.
Возможности микроконтроллера типа STM32F4 нужны, но для узко специализированных профессионалов. А на ATmega можно собрать проект выходного для в качестве хобби. От мигалки до 3D принтера. У меня принтер и лазерный гравер собраны на ATmega, китайцам проще было взять открытую прошивку из сообщества, чем писать свое что-то. Железо справляется, больше там не нужно.
Ну и из моей практики, у меня нет задач под STM32. Если нужно опросить какой-то датчик, там нет такого потока данных, ATmega на частоте 0.1 МГц справится. Если нужно сформировать картинку для монитора, нужна FPGA или Raspbery Pi плата. Нужно распознавать номера машин, вообще ставим стандартный комп. Автоматика котельной, насосной станции или какого-то агрегата - хватает 8-битного микроконтроллера, там просто всё. Сложная задача - не хватает никакого микроконтроллера, а на плате типа Raspbery Pi уже появляется Linux и работать проще (правда и real time теряется).
Есть области конечно, типа DSP + Realtime где мощные МК незаменимы, модемы, частотные приводы с векторным управлением (просто частотник можно на 8-битном собрать). Но это очень узкоспециализированная ниша. Мы тут в контексте радиолюбительства все же общаемся.
Думаю для большинства переход на ARM усложнит программирование в 4 раза, а возможностей это даст на 1% больше, именно для решения текущих бытовых задач. Поэтому и нет массового перехода на 32-битные микроконтроллеры.
А это младшая модель. Про возможности старших уже молчу.
Остальная периферия также более функциональная чем у ATmega.[/uquote]
Во всем этом есть и минус - очень сложно. Если на ATmega несколько команд на Си или ассемблере и уже мигаешь лампочкой, с кристальной ясностью происходящего. То в STM32 можно пол жизни вникать, целая вселенная, с оборудованием, регистрами и компиляторами. Смотрим код чтобы байтик в UART отправить
Код: Выделить всё
void USART_Configuration(void){
// sort out clocks
RCC_AHB1PeriphClockCmd( RCC_AHB1Periph_GPIOA, ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE);
/* Configure USART2 Tx (PA.02) as alternate function push-pull */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_Init(GPIOA, &GPIO_InitStructure);
// Map USART2 to A.02
GPIO_PinAFConfig(GPIOA, GPIO_PinSource2, GPIO_AF_USART2);
// Initialize USART
USART_InitStructure.USART_BaudRate = 9600;
USART_InitStructure.USART_WordLength = USART_WordLength_8b;
USART_InitStructure.USART_StopBits = USART_StopBits_1;
USART_InitStructure.USART_Parity = USART_Parity_No;
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
USART_InitStructure.USART_Mode = USART_Mode_Tx;
/* Configure USART */
USART_Init(USART2, &USART_InitStructure);
/* Enable the USART */
USART_Cmd(USART2, ENABLE);
}Для ATmega8 низкоуровневый код:
Код: Выделить всё
void initUART()
{
UCSRB|=(1<<3)|(1<<4);
UBRRH=0x00;
UBRRL=0x33;
}Для Ардуины вообще Serial.begin(38400) и всё.
Таймеры у STM32 вообще могут быть сложнее, чем 8-битный контроллер целиком.
Возможности микроконтроллера типа STM32F4 нужны, но для узко специализированных профессионалов. А на ATmega можно собрать проект выходного для в качестве хобби. От мигалки до 3D принтера. У меня принтер и лазерный гравер собраны на ATmega, китайцам проще было взять открытую прошивку из сообщества, чем писать свое что-то. Железо справляется, больше там не нужно.
Ну и из моей практики, у меня нет задач под STM32. Если нужно опросить какой-то датчик, там нет такого потока данных, ATmega на частоте 0.1 МГц справится. Если нужно сформировать картинку для монитора, нужна FPGA или Raspbery Pi плата. Нужно распознавать номера машин, вообще ставим стандартный комп. Автоматика котельной, насосной станции или какого-то агрегата - хватает 8-битного микроконтроллера, там просто всё. Сложная задача - не хватает никакого микроконтроллера, а на плате типа Raspbery Pi уже появляется Linux и работать проще (правда и real time теряется).
Есть области конечно, типа DSP + Realtime где мощные МК незаменимы, модемы, частотные приводы с векторным управлением (просто частотник можно на 8-битном собрать). Но это очень узкоспециализированная ниша. Мы тут в контексте радиолюбительства все же общаемся.
Думаю для большинства переход на ARM усложнит программирование в 4 раза, а возможностей это даст на 1% больше, именно для решения текущих бытовых задач. Поэтому и нет массового перехода на 32-битные микроконтроллеры.
Re: ARM или не-ARM?
[uquote="SIM31",url="/forum/viewtopic.php?p=3141454#p3141454"]Если взять STM32F4 они мощнее первых пентиумов[/quote]
Нет, не мощнее. Пентиум - это процессор, а СТМ - микроконтроллер. Разница очень большая.
И что там? Бездушные молотилки цифровых данных.[/uquote]
Ну не скажите, не скажите! У Broadcom-а тоже нехилая периферия накручена, да еще при таком мощном ядре.
Добавлено after 7 minutes 7 seconds:
[uquote="SIM31",url="/forum/viewtopic.php?p=3141539#p3141539"]. Смотрим код чтобы байтик в UART отправить
.[/uquote]
Так это вы используете "прокладку" в виде SPL между вами и регистрами.
Смотрим другой код, чтобы отправить байтик в UART:
....Черт, до чего же неудобное тут на форуме цитирование! Эт вааще капец, нет ни мультицитирования, ни цитирования по выделению текста... пока удаляешь лишнее, пока вручную прописываешь теги quote, пальцы отваливаются...
Добавлено after 8 minutes 12 seconds:
[uquote="SIM31",url="/forum/viewtopic.php?p=3141539#p3141539"][
Думаю для большинства переход на ARM усложнит программирование в 4 раза, а возможностей это даст на 1% больше, именно для решения текущих бытовых задач. Поэтому и нет массового перехода на 32-битные микроконтроллеры.[/uquote]
Для вас - да - прирост возможностей не более 1%. Потому что ваши хотелки ограничиваются показомером и мигалкой. А как быть тем, кому надоели свистоперделки и хочется чего-то большего? Вот то-то и оно!
Массовый переход есть, и он давно уже массово идет, и даже дальше СТМа ушел, только вы этого не заметили.
Нынче раскручивает популярность "интернет вещей", и куда уж там с мелким 8-битником то?
Добавлено after 15 minutes 10 seconds:
[uquote="SIM31",url="/forum/viewtopic.php?p=3141539#p3141539"]Для Ардуины вообще Serial.begin(38400) и всё..[/uquote]
А это потому, что вы не заглядывали вовнутрь той функции! Ради любопытства загляните, расковыряйте. И листинг у вас получится в семь раз длиннее того, что вы на SPL выкладывали. Серьезно.
Нет, не мощнее. Пентиум - это процессор, а СТМ - микроконтроллер. Разница очень большая.
Raspberry Pi 3
И что там? Бездушные молотилки цифровых данных.[/uquote]
Ну не скажите, не скажите! У Broadcom-а тоже нехилая периферия накручена, да еще при таком мощном ядре.
Добавлено after 7 minutes 7 seconds:
[uquote="SIM31",url="/forum/viewtopic.php?p=3141539#p3141539"]. Смотрим код чтобы байтик в UART отправить
.[/uquote]
Так это вы используете "прокладку" в виде SPL между вами и регистрами.
Смотрим другой код, чтобы отправить байтик в UART:
Код: Выделить всё
RCC->APB2ENR |= RCC_APB2ENR_USART1EN;
USART1->CR1 = USART_CR1_UE ;
USART1->BRR = ((8000000 / 9600)/16)<<4 | 1; // baudrate, 9600
USART1->CR1 |= USART_CR1_TE ; // Передача разрешена
while (!(USART1->SR & USART_SR_TXE)) ;
USART1->DR = 'U';
....Черт, до чего же неудобное тут на форуме цитирование! Эт вааще капец, нет ни мультицитирования, ни цитирования по выделению текста... пока удаляешь лишнее, пока вручную прописываешь теги quote, пальцы отваливаются...
Добавлено after 8 minutes 12 seconds:
[uquote="SIM31",url="/forum/viewtopic.php?p=3141539#p3141539"][
Думаю для большинства переход на ARM усложнит программирование в 4 раза, а возможностей это даст на 1% больше, именно для решения текущих бытовых задач. Поэтому и нет массового перехода на 32-битные микроконтроллеры.[/uquote]
Для вас - да - прирост возможностей не более 1%. Потому что ваши хотелки ограничиваются показомером и мигалкой. А как быть тем, кому надоели свистоперделки и хочется чего-то большего? Вот то-то и оно!
Массовый переход есть, и он давно уже массово идет, и даже дальше СТМа ушел, только вы этого не заметили.
Нынче раскручивает популярность "интернет вещей", и куда уж там с мелким 8-битником то?
Добавлено after 15 minutes 10 seconds:
[uquote="SIM31",url="/forum/viewtopic.php?p=3141539#p3141539"]Для Ардуины вообще Serial.begin(38400) и всё..[/uquote]
А это потому, что вы не заглядывали вовнутрь той функции! Ради любопытства загляните, расковыряйте. И листинг у вас получится в семь раз длиннее того, что вы на SPL выкладывали. Серьезно.
Ёшкин кот обормот
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: ARM или не-ARM?
[uquote="SIM31",url="/forum/viewtopic.php?p=3141539#p3141539"]Для ATmega8 низкоуровневый код:
[/uquote]
для STM32F0 (причем для всей линейки) низкоуровневый код:
избыточная функциональность если не нужна - не пользуемся, потом может пригодиться. STM32 можно использовать абсолютно точно так же как и PIC и AVR:
настройка порта:
настройка таймера с прерыванием:
по умолчанию у STM32 будет включен для тактирования внутренний генератор 8МГц, у некоторых AVR фузы надо еще выставлять или в программе переключать, а у PIC config прописывать.
Зачем "для мелочи я точно достану 8-битный ПИК", этож для мелочи надо другой компилятор, другой программатор и голова способная резво скакать по архитектурам, STM32F0 будет выполнять мелочи точно также, а неиспользованная периферия пусть себе лежит, потом, как говорил, может пригодится.
Код: Выделить всё
void initUART()
{
UCSRB|=(1<<3)|(1<<4);
UBRRH=0x00;
UBRRL=0x33;
}для STM32F0 (причем для всей линейки) низкоуровневый код:
Код: Выделить всё
/* (1) oversampling by 16, 19200 baud */
/* (2) 8 data bit, 1 start bit, 1 stop bit, no parity */
USART2->BRR = 80000 / 192; /* (1) */
USART2->CR1 = USART_CR1_RXNEIE | USART_CR1_RE | USART_CR1_TE | USART_CR1_UE; /* (2) */
избыточная функциональность если не нужна - не пользуемся, потом может пригодиться. STM32 можно использовать абсолютно точно так же как и PIC и AVR:
настройка порта:
Код: Выделить всё
GPIOA->MODER |= GPIO_MODER_MODER12_0; /* Configure output mode */настройка таймера с прерыванием:
Код: Выделить всё
TIM3->PSC = 8000 - 1; // Set prescaler to 8 000 000Hz/8000 = 1000 Hz = 1 mS
TIM3->DIER |= TIM_DIER_UIE; // Enable update interrupt
TIM3->CR1 |= TIM_CR1_CEN; // Enable timerпо умолчанию у STM32 будет включен для тактирования внутренний генератор 8МГц, у некоторых AVR фузы надо еще выставлять или в программе переключать, а у PIC config прописывать.
Зачем "для мелочи я точно достану 8-битный ПИК", этож для мелочи надо другой компилятор, другой программатор и голова способная резво скакать по архитектурам, STM32F0 будет выполнять мелочи точно также, а неиспользованная периферия пусть себе лежит, потом, как говорил, может пригодится.
- КРАМ
- Друг Кота
- Сообщения: 25124
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: ARM или не-ARM?
[uquote="oleg110592",url="/forum/viewtopic.php?p=3141629#p3141629"]избыточная функциональность если не нужна - не пользуемся, потом может пригодиться.[/uquote]
Во первых, приведенный код работать не будет. Ну хотя бы потому, что не включено тактирование.
Во вторых, любая избыточная функциональность создает СЛОЖНЫЙ ФОН, который и генерирует ошибки и вопросы.
Как традиционно настраивают периферию? Открывают даташит, смотрят один-два регистра управления этой периферией и расставляют их содержимое. Все.
А мало того, что в 32-разрядной архитектуре сами регистры длиннее в 4 раза, так еще присутствуют какие то непонятные (новичку незнакомому с архитектурой) биты, а самих регистров в разы больше. И с какого перепуга новичок сможет отделить традиционные настройки от необязательных? В этом и есть проблема.
А кроме того, для АРМов требуется достаточно объемный код стандартных библиотек. То есть без этого дополнительного слоя абстракций ПРИНЦИПИАЛЬНО не обойтись. И это так же затрудняет понимание функционирования довольно сложной архитектуры.
Для программиста сие даже достоинство, но для схемотехника - очевидный недостаток. Но программист не способен создать приличное устройство, а значит и легкость в коде становится никчемной.
Все это не фатально, естественно. Но является причиной, по которой любители отказываются от того, что дешевле и мощнее, в пользу дороже и слабее.
В общем то они по своему правы, поскольку время на разработку стоит дороже железа и в совокупности затрат дорогая Мега оказывается дешевле дешевого СТМ...

Во первых, приведенный код работать не будет. Ну хотя бы потому, что не включено тактирование.
Во вторых, любая избыточная функциональность создает СЛОЖНЫЙ ФОН, который и генерирует ошибки и вопросы.
Как традиционно настраивают периферию? Открывают даташит, смотрят один-два регистра управления этой периферией и расставляют их содержимое. Все.
А мало того, что в 32-разрядной архитектуре сами регистры длиннее в 4 раза, так еще присутствуют какие то непонятные (новичку незнакомому с архитектурой) биты, а самих регистров в разы больше. И с какого перепуга новичок сможет отделить традиционные настройки от необязательных? В этом и есть проблема.
А кроме того, для АРМов требуется достаточно объемный код стандартных библиотек. То есть без этого дополнительного слоя абстракций ПРИНЦИПИАЛЬНО не обойтись. И это так же затрудняет понимание функционирования довольно сложной архитектуры.
Для программиста сие даже достоинство, но для схемотехника - очевидный недостаток. Но программист не способен создать приличное устройство, а значит и легкость в коде становится никчемной.
Все это не фатально, естественно. Но является причиной, по которой любители отказываются от того, что дешевле и мощнее, в пользу дороже и слабее.
В общем то они по своему правы, поскольку время на разработку стоит дороже железа и в совокупности затрат дорогая Мега оказывается дешевле дешевого СТМ...

Re: ARM или не-ARM?
Ну и из моей практики, у меня нет задач под STM32.
Задач под мегу вообще в природе не существует, априори, не выдумывайте. Для самых мелких и примитивных задач СТМ8 хватит с головой, для чего-то серьёзнее - СТМ32. И куда ваши убогие и дорогущие меги совать? Вам деньги и время девать некуда?
- Zhuk72
- Сверлит текстолит когтями
- Сообщения: 1231
- Зарегистрирован: Ср янв 29, 2014 08:41:31
- Откуда: Баку
- Контактная информация:
Re: ARM или не-ARM?
Разница в том, что ПИКов, к тому же новых серий и это не считая старых, в удобных, и не очень, корпусах, у меня достаточно для поиграться (чем я обычно и занимаюсь). А АРМ только один, "народный", на пробу взял. Планирую еще 030 взять, и из 8051 кое-что. Так что на одной платформе я не зацикливаюсь., мне интересно щупать разные.
А те, кто ведет "священные войны", на все смотрят с одной, своей точки зрения, не понимая, что люди разные, задачи и интересы у них разные и не все воплощают свои микроконтроллерные познания на производстве.
Что касается "этож для мелочи надо другой компилятор, другой программатор" - так это вообще не довод
У меня PIC2/3, понятно для чего, USB-UART для 8051 и ST-Link. Все это набрано за последние года 3, финансово не затратно. Среды 2: МПЛаб и Кайл. Сейчас не времена маленьких хардов, чтобы считать гигабайты, занимаемые программами.
А те, кто ведет "священные войны", на все смотрят с одной, своей точки зрения, не понимая, что люди разные, задачи и интересы у них разные и не все воплощают свои микроконтроллерные познания на производстве.
Что касается "этож для мелочи надо другой компилятор, другой программатор" - так это вообще не довод
Каждый имеет право на свое личное ошибочное мнение.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Re: ARM или не-ARM?
Код: Выделить всё
Во первых, приведенный код работать не будет. Ну хотя бы потому, что не включено тактирование.Ну ещё одна строчка... Ы шо? Всё это уже обсуждалось и не раз. в новых ПИКах-мегах тоже тактирование можно-включать-выключать. Если же это уж настолько напрягает - СТМ8С! Там тактирование включено по умолчанию.
Во вторых, любая избыточная функциональность создает СЛОЖНЫЙ ФОН, который и генерирует ошибки и вопросы.
Не бывает избыточной функциональности, да ещё и за малые деньги. Да и ныне все производители стараются напичкать МК по не хочу. Сам не юзаешь примитивы, юзаешь дсПИК. Ну снизойди до ПИК16Ф54! Не?
Как традиционно настраивают периферию? Открывают даташит, смотрят один-два регистра управления этой периферией и расставляют их содержимое. Все.
Ардуинщики вообще её не настраивают... и что теперь? Да и что было настраивать, если она отсутствовала напрочь как таковая?
А мало того, что в 32-разрядной архитектуре сами регистры длиннее в 4 раза, так еще присутствуют какие то непонятные (новичку незнакомому с архитектурой) биты, а самих регистров в разы больше. И с какого перепуга новичок сможет отделить традиционные настройки от необязательных? В этом и есть проблема.
Какая проблема? Новичков? Пусть учатся! Или идут подметать дворы или красить заборы.
А кроме того, для АРМов требуется достаточно объемный код стандартных библиотек. То есть без этого дополнительного слоя абстракций ПРИНЦИПИАЛЬНО не обойтись. И это так же затрудняет понимание функционирования довольно сложной архитектуры.
Сколько уже народу свалило с ПИК-АВР и ничего, живые. И как-то пофигу им вся эта кажущаяся сложность.
Код: Выделить всё
Для программиста сие даже достоинство, но для схемотехника - очевидный недостаток. Но программист не способен создать приличное устройство, а значит и легкость в коде становится никчемной.
Все это не фатально, естественно. Но является причиной, по которой любители отказываются от того, что дешевле и мощнее, в пользу дороже и слабее.Любителям пофигу! Они либо тупо копирут, либо тратят кучу времени на то, что и выеденного яйца не стОит. Их никто в расчёт и не берёт, никогда.
В общем то они по своему правы, поскольку время на разработку стоит дороже железа и в совокупности затрат дорогая Мега оказывается дешевле дешевого СТМ...
Чушь! На богатом железе время разработки всегда меньше и беспроблемнее чем на убогом.
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: ARM или не-ARM?
[uquote="КРАМ",url="/forum/viewtopic.php?p=3141645#p3141645"]Во первых, приведенный код работать не будет. Ну хотя бы потому, что не включено тактирование[/uquote]
будет, будет - тактирование обычно включаю только после пробуждения МК или после сброса, сразу ВСЕЙ нужной периферии в отдельной функции или в одной строчке в main, точно так же делал и для меги48, там сложнее, надо еще и выключить ВСЮ ненужную периферию.
Для F0 существуют прекрасные примеры для работы практически со всей периферией, без всяких библиотек, легко разборчивые с мануалом.
Осталось только попробовать вкус устриц и не важно, что устрицы 32-х разрядные - они просто вкусные.
будет, будет - тактирование обычно включаю только после пробуждения МК или после сброса, сразу ВСЕЙ нужной периферии в отдельной функции или в одной строчке в main, точно так же делал и для меги48, там сложнее, надо еще и выключить ВСЮ ненужную периферию.
Для F0 существуют прекрасные примеры для работы практически со всей периферией, без всяких библиотек, легко разборчивые с мануалом.
Осталось только попробовать вкус устриц и не важно, что устрицы 32-х разрядные - они просто вкусные.
Re: ARM или не-ARM?
А те, кто ведет "священные войны", на все смотрят с одной, своей точки зрения, не понимая, что люди разные, задачи и интересы у них разные и не все воплощают свои микроконтроллерные познания на производстве.
Да посмотри как мегу и ардуину на элхе опустили ниже дна. Всё! Время меги вышло! Нравится мести музейную пыль? Да не вопрос!
Что касается "этож для мелочи надо другой компилятор, другой программатор" - так это вообще не доводУ меня PIC2/3, понятно для чего, USB-UART для 8051 и ST-Link. Все это набрано за последние года 3, финансово не затратно. Среды 2: МПЛаб и Кайл. Сейчас не времена маленьких хардов, чтобы считать гигабайты, занимаемые программами.
Да у всех это есть! Вопрос - а нужно ли оно сегодня? Ну ладно вчера, кроме ПИК и меги ничего и не было, а сегодня? Посмотри на разницу первых ПИКов и последних, первых мег и последних, не видишь разницы? Нахрен забивать голову всяким этим калом, когда можно обойтись СТМ8 и СТМ32, у которых периферия схожа? Нафига мне все эти ПИКи и меги, если 98% всех хотелок перекрываются СТМом, которые ещё и по цене гораздо ниже?
- Zhuk72
- Сверлит текстолит когтями
- Сообщения: 1231
- Зарегистрирован: Ср янв 29, 2014 08:41:31
- Откуда: Баку
- Контактная информация:
Re: ARM или не-ARM?
[uquote="scorpi_0n",url="/forum/viewtopic.php?p=3141666#p3141666"]Нафига мне все эти... ?[/uquote]
Больше ничего не комментирую, ибо выделенное (без продолжения) - основное. Все люди РАЗНЫЕ! Каждый может продолжить фразу по-своему.
Все эти споры - пустое, ни к чему они не приводят и ни кого ни в чем не убеждают. Это как спорить о том, чьи отпечатки пальцев красивее ))
Больше ничего не комментирую, ибо выделенное (без продолжения) - основное. Все люди РАЗНЫЕ! Каждый может продолжить фразу по-своему.
Все эти споры - пустое, ни к чему они не приводят и ни кого ни в чем не убеждают. Это как спорить о том, чьи отпечатки пальцев красивее ))
Каждый имеет право на свое личное ошибочное мнение.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Re: ARM или не-ARM?
Все эти споры - пустое, ни к чему они не приводят и ни кого ни в чем не убеждают.
Заглянул в ларь через дорогу. PIC16F1789-I/PT по цене СТМ32Ф3 или СТМ32Ф4. А оно мне такое никакое нужно? Пусть его негры и дауны и покупают, я не против и спорить даже не буду.
- Zhuk72
- Сверлит текстолит когтями
- Сообщения: 1231
- Зарегистрирован: Ср янв 29, 2014 08:41:31
- Откуда: Баку
- Контактная информация:
Re: ARM или не-ARM?
[uquote="scorpi_0n",url="/forum/viewtopic.php?p=3141680#p3141680"]PIC16F1789-I/PT по цене СТМ32Ф3 или СТМ32Ф4. А оно мне такое никакое нужно?[/uquote]
Ваше право.
Свою "лавку" в пример привести не могу, нет такого.
PIC16F1789-I/PT
STM32F401RCT6
Совсем равноценно по корпусам не получается, да и вообще никак не получается.
[uquote="scorpi_0n",url="/forum/viewtopic.php?p=3141680#p3141680"]Пусть его негры и дауны и покупают.[/uquote]
А вот это уже очень нехорошее оскорбление. Сдержанность в высказываниях еще никому не вредила.
Советую тщательнее производить растаможку выражений перед публикацией.
Ваше право.
Свою "лавку" в пример привести не могу, нет такого.
PIC16F1789-I/PT
STM32F401RCT6
Совсем равноценно по корпусам не получается, да и вообще никак не получается.
[uquote="scorpi_0n",url="/forum/viewtopic.php?p=3141680#p3141680"]Пусть его негры и дауны и покупают.[/uquote]
А вот это уже очень нехорошее оскорбление. Сдержанность в высказываниях еще никому не вредила.
Советую тщательнее производить растаможку выражений перед публикацией.
Каждый имеет право на свое личное ошибочное мнение.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Re: ARM или не-ARM?
Вы корпуса по мелкости сравниваете? У первого шаг выводов 0,65, у второго - 0,5 мм. Одинаково мелко. И одинаково нужно иметь некоторый опыт пайки такой мелкоты.
По остальным показателям сравнение малость некорректное. Тогда уж сравнивайте хотябы PIC18Fxxxx и STM32F030хх.
По остальным показателям сравнение малость некорректное. Тогда уж сравнивайте хотябы PIC18Fxxxx и STM32F030хх.
Ёшкин кот обормот
Re: ARM или не-ARM?
Вы правы. Нельзя велосипед сравнивать с самолетом. Тем более что стоят они почти одинаково.Zhuk72 писал(а):PIC16F1789-I/PT
STM32F401RCT6
Совсем равноценно по корпусам не получается, да и вообще никак не получается.
Сравните технические характеристики этих МК и поймете о чем я.
