У меня есть четкая ассоциация компании Atmel и супер-успешных контроллеров Atmega. Когда речь идет о чем-то немного более мощном, о следующей ступени, я сразу думаю о stm32. Но совсем недавно мне удалось проверить на деле микроконтроллеры от Atmel SAM4S на базе ARM Cortex-M4. Это отличный вариант для перехода с Arduino, подумал я. У меня оказался не просто голый микроконтроллер, а отладочная плата Sam4S EK rev8. Для прошивки я использовал программатор SAM-ICE. Мой вариант «Hello world!» или «Blink» под катом.



Компания Atmel, на мой взгляд, запоздала с входом в сегмент ARM-микроконтроллеров, здесь уже достаточно прочно обосновалась ST с контроллерами STM32. Я решил сравнить продукты от Atmel и ST.

Общие характеристики отладочной платы:


В плату впаян микроконтроллер ATSAM4S16C:
  • ядро Cortex-M4, 120МГц, с поддержкой DSP-инструкций
  • 1Мб Flash-памяти
  • 128Кб SRAM

периферия:
  • 4хUART
  • 3xSPI
  • 2xI2C
  • 1xUSB 2.0
  • 1хI2S
  • 1 интерфейс для карт памяти SDIO/SD/MMC
  • PWM: 4 канала, 16 бит
  • АЦП: 16 каналов, 12 бит
  • аналоговый компаратор
  • ЦАП: 2 канала, 12 бит
  • DMA: 24 канала




Datasheet. На самой отладочной плате видим следующее:

на штырьковые разъёмы (с шагом 2.54) выведены все выводы микроконтроллера (что не может не радовать). Кроме этого на плате:
  • 2 порта RS232
  • разъём RS485
  • разъём microSD карты памяти
  • порт для подключения ZigBee-модуля
  • 2.8" LCD 320x240 на контроллере ILI9325 с резистивным сенсором
  • два BNC разъёма, один из них подключён к АЦП, второй к ЦАП.
  • встроенный микрофон
  • microUSB разъём (USB FS Device)
  • впаяна память NAND Flash 29F2G08ABAEA (256Мб)
  • сенсорные кнопки (Atmel QTouch), со слайдером
  • две пользовательские кнопки+кнопка сброса
  • энкодер, подключённый к АЦП микроконтрллера
  • JTAG-порт для подключения к SAM-ICE
  • mini jack для наушников + вывод для подключения динамика


Сравнение Atmel ARM с STM32



Цены в рублях STM32-691 и Atmel ARM-848 рублей.

IDE


Радует присутствие бесплатного IDE, которое можно скачать с сайта Atmel. Да, это переработанная Visual Studio, со всеми вытекающими, но отлично подходит для быстрого старта. Скачиваем, устанавливаем, подключаем программатор к компьютеру и к плате. В установке и работе IDE скоростью не отличается, но в этом есть ряд плюсов для начинающих, дает время подумать.



Вместе со средой разработки будут доступны порядка 1600 примеров, среди которых примеры для рассматриваемой платы SAM4S-EK (работа с периферией, использование DSP, FatFS, FreeRTOS и т.д.).

Попробуем загрузить один из скриптов из примеров. New -> Project ->Example projects



Итак, после редактирования кода

Build > Build Solution, если нет ошибок все соберется, затем Debug > Start Without Debugging



Все ожидаемо работает.

Вывод


Сама плата, как ни странно, оправдала мои ожидания. Это хороший вариант для перехода с Arduino, так как позволяет быстро импортировать скетчи из Arduino IDE в полноценные C++ проекты. Без пайки можно продумать устройство и написать скрипт, затем развести плату и на нее разместить микроконтроллер, это компактнее и производительнее. Соглашусь, что отладочная плата дорогая, но платить за нее нужно один раз, плюс есть альтернатива за 450 руб. SAM D10 Xplained Mini.

Вопрос в тему


Почему ARM от Atmel так редко встречаются в готовых устройствах или в DIY поделках? В основном же идут разные NEC, STM, SIEMENS, FS и подобное?

Зачем это нужно?


Совместно с другими пользователями GeekTimes мы разрабатываем фитнес-трекер для ударных видов спорта и пытаемся разработать все возможные варианты, чтобы потом в конечном устройстве учесть все наработки.
Будете ли Вы использовать ARM от Atmel?

Проголосовало 152 человека. Воздержалось 37 человек.

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

Поделиться с друзьями
-->

Комментарии (65)


  1. proton17
    20.09.2016 13:50
    +2

    На мой взгляд главная беда Atmel в том, что SAM-ICE стоит 12,000 рублей, а ST-Link 2,300. На этом я свой выбор для домашних поделок давно закончил)


    1. dernuss
      20.09.2016 14:00
      -1

      китайские программаторы очень дешёвые есть, по 100-200 рублей.


      1. proton17
        20.09.2016 14:04
        +2

        Не программатор, а отладчик который нормально поддерживается актуальной фирменной IDE, из китая за 100р???


        1. dernuss
          20.09.2016 14:17
          -1

          st-link для Stm32 и stm8 от 135 на aliexpress
          для Atmel AVR JTAG ICE от 392 на aliexpress


          1. proton17
            20.09.2016 14:22
            +2

            для Atmel AVR JTAG ICE от 392 на aliexpress>

            Работает только с AVR Studio 4 и не работает с ARM от AVR. О чем я и говорю.


            1. dernuss
              20.09.2016 14:26

              Ок, я не знал. Вообщем то я использую в основном stm32, реже stm8 и silabs ;)
              Теперь понятно почему народ использует в основном arduino на avr или stm32.


              1. proton17
                20.09.2016 14:32

                У самого дома валяются два похожих свистка для AVR. Брал для интереса, не один с новым Студио подружить не удалось. Самое нормально, что было у Atmel это AVR Dragon. Особенно как только появился. Функционально и не дорого) Теперь только STM32 и Altera...


                1. dernuss
                  20.09.2016 14:35

                  А мне xilinx больше нравится) Но да, программатор под xilinx дороже около 1800р у китайцев, против 230р альтеровского.


                  1. proton17
                    20.09.2016 14:40

                    Xilinx хорошо, спору нет. На работе много пришлось работать с Virtex-4 PowerPC 405. Но для дома немного дороговат комплект...


                1. svitoglad
                  21.09.2016 09:47

                  AVR Dragon кажись имел ограничение до 32кБ.


                  1. Bluewolf
                    21.09.2016 10:31

                    В самом начале — да, но оно давно снято официально.


    1. den1s1
      20.09.2016 19:46
      +1

      да кому нужен SAM-ICE? Клон j-link прекрасно работает со обоими.
      Кстати, слыхал, что в ST-Link не залочена возможность работы с чужими камнями. Но сам не проверял, к сожалению.


  1. IronHead
    20.09.2016 14:02
    +1

    Почему ARM от Atmel так редко встречаются в готовых устройствах или в DIY поделках? В основном же идут разные NEC, STM, SIEMENS, FS и подобное?

    STM32F405VGT6 стоит 691,00р
    ATSAM4CP16B стоит 1064,50р
    Это не говоря о том, что Atmel в свое время сильно буксанули, когда STM снизила ценник.
    Ну и конечно не стоит забывать про отладочные платы, мне вот так же как и вам подарили такую отладку, а как быть остальным? Покупать за 12000р отладку атмела или за 3000р отладку STM? Думаю выбор очевиден.


    1. webzuweb
      20.09.2016 14:05

      Согласен, но для многих возможность прямого портирования кода с Arduino покажется важнее. Гики-хипстеры, знаете таких?


      1. IronHead
        20.09.2016 14:09

        Дак они используют esp или maple. Тем более покупать камень за 1к руб чтобы портировать на него что то из ардуино — ИМХО — это бред, В общем я таких не знаю. А тех кого знаю — выбирают STM32 или Analog Device, но они не хипстеры и вообще на ардуину смотрят больше как на конструктор для детей.


      1. KonstantinSoloviov
        20.09.2016 15:21

        Три раза просмотрел статью, но вот именно «прямого портирования кода с Arduino» как раз и не увидел.
        Поставили среду, подключили плату, запустили пример. Причем здесь Arduino?


        1. webzuweb
          20.09.2016 15:23

          В данном случае был показан именно пример Hello World. Портирование осуществляется в IDE несколькими кликами.


          1. KonstantinSoloviov
            20.09.2016 15:29

            Ну, раз уж столько раз упоминаете о такой возможности, неплохо было бы и кликнуть.


          1. roller
            21.09.2016 00:21
            +2

            Можете попробовать портировать MarlinFirmware например в пару кликов? Или речь только про Arduino-проекты в вакууме без залезания в потроха avr?


        1. Costic
          21.09.2016 15:37
          +1

          Если бы автор написал про Arduino Due (Cortex-M3) или хотя бы упоминал где-то, то много вопросов отпало бы. Цена 850р., поддержка среды, скриптов и шилдов Arduino + вся мощь ARM Cortex-M3 (32 бита, частота, куча портов и интерфейсов). Увы, не толерантно к 5В, прошивается дольше чем Uno (флэша много). Но когда для прототипа не достаточно Uno, то выручает Due или Discovery / Nucleo.
          А если сравнивать, то микроконтроллеры ARM от NXP на голову выше всех (кроме цены).


      1. olartamonov
        20.09.2016 16:27
        +3

        Согласен, но для многих возможность прямого портирования кода с Arduino покажется важнее


        В готовых устройствах?..

        Очень хотелось бы надеяться, что нет, не для многих.


      1. olartamonov
        20.09.2016 16:34
        +2

        Почему ARM от Atmel так редко встречаются в готовых устройствах или в DIY поделках?


        Вот я смотрю на вашу табличку — практически по всем пунктам Atmel хуже, при этом он дороже, а доступность у дистрибьюторов ниже (у вас этого в табличке нет, но я у банального Компэла посмотрел, сколько того и другого на складах есть).

        Как вы сами думаете, почему так редко?..


  1. proton17
    20.09.2016 14:03

    Ну и собственно цены на сами камни, вы сравниваете в статье по параметрам STM32 и Atmel. В этой табличке не хватает российских цен, а именно 691 и 848 рублей.


    1. webzuweb
      20.09.2016 14:05

      Добавил


      1. nafikovr
        20.09.2016 16:52

        так же stm32f40x ограничиваться не стоит. как минимум F427 будет еще на на пол головы выше при сравнимой цене.


  1. Ostrovv
    20.09.2016 15:22
    +1

    доки на камни у Atmel более перевариваемые…


    1. nafikovr
      20.09.2016 16:49

      дело привычки на самом деле.


  1. golf2109
    20.09.2016 17:50

    А какая «крутая» вещь есть в данной ARM from Atmel? Такая что заставит пользователя побежать покупать Atmega, плюнув на STM32 и на материальные убытки.


  1. Bluewolf
    20.09.2016 19:26

    Плюсы Atmel:


    1. Полностью бесплатная студия без каких-либо ограничений, сделанная на основе удобной и современной Visual Studio.
    2. Библиотека драйверов-HAL ASF, интегрированная в студию, создающая красивую организованную заготовку, где потроха не торчат наружу, можно добавлять-удалять драйверы, заменять МК и прочее (против STMCubeMX, с ее односторонним порождением заготовок с жуткой простыней вместо main.c)
    3. Широкая линейка устройств, tiny\mega\xmega\avr32\arm, причем большинство поддерживается ASF.
    4. Хорошая документация.
    5. Таки да, ардуино, если говорить про 8-битные контроллеры, для которой можно как минимум посмотреть решения-куски кода для кучи задач.

    Минусы:


    1. Контроллеры в целом дороже аналогичных STM32.
    2. Программаторы и официальные отладочные платы еще дороже.
    3. Официальный тулчейн ориентирован на Windows.

    Так что, мне например, очень нравится STM32, хотелось бы шире его использовать, прямо шикарное железо за копейки, на смотреть на программную поддержку без слез после Atmel я не могу, увы.


    1. den1s1
      20.09.2016 19:52

      1. Контроллеры в целом дороже аналогичных STM32.
      2. Программаторы и официальные отладочные платы еще дороже

      в последнее время не всегда.


    1. nafikovr
      20.09.2016 23:15
      +1

      1 — это cortex. а для cortex есть gcc, так что никакие avr studio не нужны.
      2 — не умеете вы cube готовить.
      3 — зачем? линейки stm32 охватывает практически любые задачи и при этом портирование на много проще. (буквально только что портировал проект с f103 на f030 за полтора часа)
      4 — на любителя.
      5 — вы программист или как? смотрим примеры для ардуино у портируем на нужную платформу.


      1. Bluewolf
        21.09.2016 10:46

        Вы, кажется, хотите сказать, что STM32 тоже можно использовать. Так я же не спорю. Только писал-то я о другом немного.


        1. Тем не менее, для Atmel ARM есть бесплатная официальная IDE с компилятором\ASF\отладкой из коробки, а для STM32 — нет.
        2. Тем не менее, в Atmel Studio я создаю проект, допустим, HID Keyboard прямо внутри студии и у которого конфиги отдельно, библиотеки отдельно, в main.c только void main () и который сразу работает, а в Cube у меня простыня в main, в которой комметариями выделены места, где надо писать код, чтобы при регенерации заготовки от сохранился (!). Ну и дескрипторы для клавиатуры надо где-то отдельно создать.
        3. Восьмибитные контроллеры имеют свои преимущества, у Atmel это единая студия и программаторы.
        4. Причем тут я? Я писал про плюсы Atmel. Не всем легко перенести код на совсем другой контроллер.


        1. nafikovr
          21.09.2016 13:59

          1 — coide и sw4stm32 есть на страничке продукта stm32
          2 — честно не знаю как работает atmel studio, но не представляю как можно реализовать автоматическую генерацию, если не задавать областей которые можно править руками, и которые нельзя. если совсем честно — я cubemx пользуюсь только для генерации стартового проекта с минимумом возможностей и дальше пишу руками. на данном этапе простыни не вижу. все раскидано по модулям.
          3 — какие?


          1. Bluewolf
            21.09.2016 20:07

            1. Есть, как и ссылки на другие доступные средства разработки. Это не делает эти IDE официальными.
            2. Меньшее потребление, компактные корпуса вплоть до SOT-23, предсказуемое и фиксированное время выполнения кода (у AVR для каждой инструкции строго известно время выполнения в тактах).
            3. У Atmel main.c выглядит так:

            #include <asf.h>
            
            int main (void)
            {
                /* Insert system clock initialization code here (sysclk_init()). */
                board_init();
                /* Insert application code here, after the board has been initialized. */
            }

            Код библиотек лежит лежит внутри папки ASF, которую править не надо, а конфиги разных модулей — в папке config, и там они не перезаписываются студией. Например, конфиг ADC выглядит так:


            #ifndef CONF_ADC_H
            #define CONF_ADC_H
            
            /* Refer to the ADC driver for detailed documentation. */
            #define CONFIG_ADC_CALLBACK_ENABLE
            
            // #define CONFIG_ADC_CALLBACK_TYPE uint16_t
            
            // #define CONFIG_ADC_INTLVL        ADC_CH_INTLVL_LO_gc
            
            #endif /* CONF_ADC_H */

            При этом настроек мышью заметно меньше, но зато всё четко разделено — вот тут ASF, вот тут конфиги, вот тут пользовательская логика и код. Нет этой необходимости держать где-то проект от куба, чтобы перегенерировать заготовку, если вдруг это нужно. Лично мне такой подход кажется заметно более "чистым" и красивым.


            Да, можно и куб использовать как генератор заготовки, которую затем прибрать, отрефакторить и дальше править только руками...


            1. dernuss
              23.09.2016 11:52

              2) По корпусу, SOT-23 — 3x2.5 мм, а stm8 qfpn — 3x3mm.
              3) Конечно main.c у куба выглядит хуже, но не критично.

              Скрытый текст
              /**
                ******************************************************************************
                * File Name          : main.c
                * Date               : 26/02/2015 15:56:16
                * Description        : Main program body
                ******************************************************************************
                *
                * COPYRIGHT(c) 2015 STMicroelectronics
                *
                * Redistribution and use in source and binary forms, with or without modification,
                * are permitted provided that the following conditions are met:
                *   1. Redistributions of source code must retain the above copyright notice,
                *      this list of conditions and the following disclaimer.
                *   2. Redistributions in binary form must reproduce the above copyright notice,
                *      this list of conditions and the following disclaimer in the documentation
                *      and/or other materials provided with the distribution.
                *   3. Neither the name of STMicroelectronics nor the names of its contributors
                *      may be used to endorse or promote products derived from this software
                *      without specific prior written permission.
                *
                * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
                * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
                * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
                * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
                * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
                * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
                * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
                * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                *
                ******************************************************************************
                */
              
              /* Includes ------------------------------------------------------------------*/
              #include "stm32f4xx_hal.h"
              #include "usb_host.h"
              
              /* USER CODE BEGIN Includes */
              
              /* USER CODE END Includes */
              
              /* Private variables ---------------------------------------------------------*/
              
              /* USER CODE BEGIN PV */
              
              /* USER CODE END PV */
              
              /* Private function prototypes -----------------------------------------------*/
              void SystemClock_Config(void);
              static void MX_GPIO_Init(void);
              void MX_USB_HOST_Process(void);
              
              /* USER CODE BEGIN PFP */
              
              /* USER CODE END PFP */
              
              /* USER CODE BEGIN 0 */
              
              /* USER CODE END 0 */
              
              int main(void)
              {
              
                /* USER CODE BEGIN 1 */
              
                /* USER CODE END 1 */
              
                /* MCU Configuration----------------------------------------------------------*/
              
                /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
                HAL_Init();
              
                /* Configure the system clock */
                SystemClock_Config();
              
                /* Initialize all configured peripherals */
                MX_GPIO_Init();
                MX_USB_HOST_Init();
              
                /* USER CODE BEGIN 2 */
              
                /* USER CODE END 2 */
              
                /* USER CODE BEGIN 3 */
                /* Infinite loop */
                while (1)
                {
              
                }
                /* USER CODE END 3 */
              
              }
              
              /** System Clock Configuration
              */
              void SystemClock_Config(void)
              {
              
                RCC_OscInitTypeDef RCC_OscInitStruct;
              
                __PWR_CLK_ENABLE();
              
                __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE2);
              
                RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
                RCC_OscInitStruct.HSIState = RCC_HSI_ON;
                RCC_OscInitStruct.HSICalibrationValue = 6;
                RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
                RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;
                RCC_OscInitStruct.PLL.PLLM = 16;
                RCC_OscInitStruct.PLL.PLLN = 192;
                RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
                RCC_OscInitStruct.PLL.PLLQ = 4;
                HAL_RCC_OscConfig(&RCC_OscInitStruct);
              
              }
              
              /** Pinout Configuration
              */
              void MX_GPIO_Init(void)
              {
              
                /* GPIO Ports Clock Enable */
                __GPIOA_CLK_ENABLE();
              
              }
              
              /* USER CODE BEGIN 4 */
              
              /* USER CODE END 4 */
              
              #ifdef USE_FULL_ASSERT
              
              /**
                 * @brief Reports the name of the source file and the source line number
                 * where the assert_param error has occurred.
                 * @param file: pointer to the source file name
                 * @param line: assert_param error line source number
                 * @retval None
                 */
              void assert_failed(uint8_t* file, uint32_t line)
              {
                /* USER CODE BEGIN 6 */
                /* User can add his own implementation to report the file name and line number,
                  ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
                /* USER CODE END 6 */
              
              }
              
              #endif
              
              /**
                * @}
                */ 
              
              /**
                * @}
              */ 
              
              /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
              


              1. Bluewolf
                24.09.2016 00:25

                STM8 — это как раз восьмибитка, о чем и был изначально разговор. А еще есть tiny10 в UDFN8 — 2х2 мм :)


                А main.c у куба имеет тенденцию распухать, если включить побольше периферии...


                1. dernuss
                  24.09.2016 17:44

                  STM8 да, 8 битка. Очень дешёвая.
                  Надо 32 битную маленькую stm? Вот одна из них STM32F031E в корпусе wlcsp25 2.1x2.1мм.


                  1. nafikovr
                    26.09.2016 08:00

                    сейчас скажут, что этот корпус не годен для сборки на коленке, и отчасти будут правы. однако я не думаю что на этапе прототипа или в домашнем баловстве будет нужен такой корпус.


    1. wigneddoom
      21.09.2016 00:32

      Плюсы 1 и 2 это скорее для новичков желающих освоить новый микроконтроллер. С ростом опыта и накопления наработок появляются красивые заготовки, а студии выкидываются.


      1. Bluewolf
        21.09.2016 10:47

        Заготовки появляются, да, только это никак не мешает использовать удобную IDE с интерактивной отладкой вместо блокнота :)


        1. wigneddoom
          21.09.2016 11:05
          +1

          Конечно, поэтому никто и не отменял универсальные IAR, KEIL, туже VS + gcc + gdb. А привязанные к производителю IDE я предпочитаю выкидывать на мороз сразу после ознакомления с примерами.


          1. BigW
            21.09.2016 17:13

            справедливости ради что у кейла что у IAR редактор кода мне откровенно не нравится, как я не настраивал подсветку через 6 часов тупления в код, все это сливается в неразличимую кашу, да и функционал редактора не сказать, чтоб сильно радовал… Но общий функционал, конечно вне конкуренции и с этим небольшим неудобством редактора можно смириться.
            Кстати, появились ли бесплатные версии продуктов?


          1. Bluewolf
            21.09.2016 17:40

            Keil\IAR так-то денег стоят :) А зачем мне выкидывать хорошую IDE от производителя, если 95% разработки под МК идет под Atmel?


  1. den1s1
    20.09.2016 19:39

    При текущей доступности армовских чипов на российских складах, в DIY у Атмела шансов просто нет. Да и описанный в статье камень — довольно старый, с технической точки зрения Атмел сильно уступает ST в категориях М3 и М4.
    Но на самом, деле эти чипы при большой партии дешевле чем аналогичный STM32 (именно аналогичный, а не тот с которым идет сравнение в статье:) ). Дело в том, что на больших партиях Атмел даёт гораздо бОльшую скидку, нежели ST. Повторюсь, в делах DIY это ему никак не помогает.


    1. Bluewolf
      20.09.2016 20:17
      +1

      При текущей стоимости отладочных плат тех и других — особенно. Почем Атмел не сделал так же, как ST, выпустив платы по себестоимости и со встроенным программатором, непонятно, ведь мог бы подсадить на свои чипы кучу любителей, из которых часть бы стала профессионалами-разработчиками. У STM32 же на момент старта не было почти ничего, ни бесплатных IDE, ни нормального HAL, и тем не менее, взлетело.


      1. den1s1
        20.09.2016 20:41

        могу предположить, что сочли этот рынок не стоящим внимания (считаю огромной ошибкой).
        справедливости ради, цены на отладки были снижены (пример), но до уровня СТ они не дотягивают. И в новых отладках (дешевых) отладчик всегда встроен.


        1. Bluewolf
          20.09.2016 22:26

          До Компела еще не доехало, увы. Зато есть несколько дешевых неродных отладочных плат, хоть какой-то прогресс. С программаторами сложнее, нормальных клонов нет, сам Атмел вроде бы и начал предлагать дешевый ICE за $50 (http://www.digikey.com/product-detail/en/atmel/ATATMEL-ICE-PCBA/ATATMEL-ICE-PCBA-ND/4753383), но всё никак не может отказаться от желания пощипать разработчиков и тут, за $50 — только голая плата, еще кабеля к ней — $20, хочешь с корпусом и коробкой — $120...


        1. DIHALT
          21.09.2016 23:54

          СТ первые год-два свои отладки просто тупо слала нахаляву всем желающим. Вот так просто. Заходишь на сайт, заполняешь заявление из десятка пунктов и опа — получите по почте стм дискавери. Хоть для стм8, хоть для стм32. С камнем и отладчиком. Немного затрат и огромная DIY армия ваша.


  1. BigW
    20.09.2016 20:09

    Многое уже написали, немного добавлю. Выше сказано было, что Атмел пропустил выход СТМ на рынок, одна из причин текущей популярности стм еще и в этом. Камни stm8 и stm32 стоили в 3-5 раз дешевле Атмела при превосходящих в разы параметрах. Потом, конечно, цены подняли (где-то через полгода-год) но народ уже успел крепко подсесть. Еще плюсы у stm -меньшее энергопотребление, что очень актуально для портативных устройств. несмотря на то, что у вас в таблице «минимальное потребление» Атмел выигрывает, надо очень внимательно смотреть в спецификацию, что он может при этом минимальном потреблении.
    Дальше все мое имхо:
    Пытался перейти с avr (8-бит) на stm8, но как верно заметили выше, софтовая поддержка просто на нуле. ни одной нормальной IDE (лицензионной, а не взломанной) под стм8 на текущий момент нет. Писать можно во многом, но это извращение, уж простите. Под stm32 дела лучше. Потому и сижу пока на avr, а там где реально необходимо 32 бита, пытаюсь использовать СТМ, но вот, честно говоря, в моем домашнем DIY таких задач крайне мало…


    1. dernuss
      20.09.2016 21:32

      По мне так stm8 отличный камень по отличной цене (я о stm8s003, ~215 за 10 штук на ali).


      1. BigW
        20.09.2016 21:43

        Про железо никто не спорит, камин очень вкусные, и по энергопотреблению точно в лидерах. Но я не могу себя заставить писать под него в, утрированно, блокноте:(:( IDE от атмел крутая… но народ и в 4 студии до сих пор работает, и ничего. Дело привычки, видимо. И да, платили бы мне за это деньги — писал бы в блокноте и отлаживал в уме, ну а для хобби — увы, нет.
        В чем пишете, если не секрет?


        1. dernuss
          20.09.2016 22:01

          Iar для stm8, да и для stm32 тоже iar.
          По энергопотреблению всё относительно, 8 битные silabs лучше чем stm8.


          1. nafikovr
            20.09.2016 23:19

            iar и есть блокнот


            1. dernuss
              21.09.2016 07:35

              Нравится iar, быстрый, ни чего лишнего.


              1. nafikovr
                21.09.2016 07:45

                да, ничего лишнего, и ничго нужного. куча лишних телодвижений для получения результата. заставляет вести проект параллельно в двух IDE. точнее в IDE и в IAR (который все же блокнот)


                1. dernuss
                  21.09.2016 07:53

                  Всё, что нужно мне, там есть. Видимо у нас разные требования к ide. Однако я ещё иногда пишу gui программы в msvc и я бы не сказал что она (для меня) лучше.
                  Пользуюсь iar уже лет 7.


        1. nafikovr
          20.09.2016 23:20

          за ~450р можно получить десяток stm32f030. там уже имеется gcc+eclipse


          1. dernuss
            21.09.2016 07:34

            Мне не нравится эклипс, тормозной жуть.


    1. Bluewolf
      20.09.2016 22:13

      Есть смысл попробовать ATSAM в вашем случае, они сейчас не в разы дороже, периферия и возможности в целом сопоставимы, при этом доступны привычные инструменты Atmel. Но да, в наличии на складах их поменьше, даже не все семейства (а их довольно много) есть.


  1. BigW
    20.09.2016 20:22
    +1

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


    1. Bluewolf
      20.09.2016 22:17

      Обычно под некоторое семейство накапливается довольно много всего, опыт, типовые решения и куски схем, собственные библиотеки, свой загрузчик, не всегда дешевые программаторы-отладчики, отладочные платы… А некоторая экономия на стоимости контроллера имеет значение далеко не всегда, часто стоимость устройства многократно выше стоимости контроллера, и не особенно важно, $2 он стоит или $3.5.


  1. avf1906
    20.09.2016 20:22
    +2

    А еще не все забыли головняк с внезапным снятием с производства или несовместимым обновлением ревизий от атмела.


  1. den1s1
    21.09.2016 10:06

    Что такое ARM от Atmel?

    статья на хабре Интересные семейства микроконтроллеров Cortex от Atmel


  1. madf
    21.09.2016 15:30

    1. «с поддержкой DSP-инструкций» — это как? Если в чипе есть DSP и вообще такой функционал, то почему он не освещен в таблице сравнений?
    2. «Соглашусь, что отладочная плата дорогая, но платить за нее нужно один раз», не понял, зачем её покупать? К ней в комплекте идет дебайгер/программатор? Оно выходит дешевле, чем его брать отдельно?


  1. nafikovr
    21.09.2016 16:16

    Если в чипе есть DSP и вообще такой функционал, то почему он не освещен в таблице сравнений?
    это особенность ядра. а ядро у обоих контроллеров одно.
    PS. пардоньте, это ответ к комменту выше.