- startup-файлы и вопросы по ним: evgeniy1294(1014 знак., 11.09.2020 18:06, ARM, ссылка, ссылка, полностью)
- В стартапе инициализация стека так как не все отладчики автоматом
его выставляют при загрузке как это делает ядро. По хорошему, под
условную компиляцию на дебаг её надо. - VladislavS.(16.09.2020 07:18)
- Забыл что хотел: стартап можно написать на C, на ограниченном его
подмножестве, которое не полагается на библиотеку вообще, не
полагается на инициализацию неавтоматических (статических,
глобальных) переменных. Нужно смотрет дизассемблер когда пишешь,
чтоб не наткнуться на библиотечные функции. Их запросто вызовет
простое деление. С библиотечными функциями проблема потому, что они
могут требовать инициализации чего-либо и при проверке CRC это
будет глупо выглядеть (весь fk0(53 знак., 11.09.2020 18:45)
- Стартап делает гораздо больше вещей. Вообще отчасти это задача
операционной системы: как-то разместить в памяти аргументы
программы, переменные окружения, и передать указатели на них. И
заодно сделать доступной в адресном пространстве программу
(загрузить её, библиотеки, релоцировать...), стек, настроить
регистры... C-стартап должен подготовить "рантайм" к работе и
инициализировать C-библиотеку.... fk0(2374 знак., 11.09.2020 18:42, ссылка, ссылка)
- 1. У GCC для TI TM4C так было уже хз сколько времени как.
Собственно у ARMа нет ничего, что нужно было бы обязательно делать
через асм в инициализации. lloyd(139 знак., 11.09.2020 18:18)
- Выбор ARM платформы под новый проект - посткороновирусная
реальность требует развития и перехода с Microchp AVR :) на что-то
более продвинутое. Хотелки стандартные FPU, Ethernet, CAN + очень
хочется ECC для RAM, а не только для Flash. Сейчас в одной железке
пользуем SOC TI на Cortex-A15 c Linux, но для среднего сегмента это
жестокий оверкилл, да и грузится долго, к тому-же есть вероятность
"санкций". - Chip_n_Go(21.08.2020 16:02, ARM, полностью)MBedder
- Что-то у вас шаг слишком широкий от AVR. Убавьте шаг и оцените
прелеcть ... STM32H743 :). Во-первых, дешевый - у китайцев можно
уже готовую плату на нем купить где-то за 1600-1800 руб. FPU,
Ethernet, CAN и много чего еще у него есть. Тактовая частота 480
МГц, High-Speed тянет самостоятельно. После AVR выглядит чудом. А
все ваши хваленые крутые процессоры годятся только на то, чтобы
поставить на них Linuх и потом работать на нем, как под DOS'ом :).
Кстати, ECC на RAM у Kceния(30 знак., 21.08.2020 16:59 - 23.08.2020 12:53, ссылка)
- Если STM32, то ставится PC/мобильное приложение STM MCU Finder и им
выбирается нужный чип и/или демонстрационная плата. - из утилиты
всё будет ясно. Предварительно можно сказать что ECC на RAM/Flash
обеспечивает серия STM32H7 RxTx(37 знак., 22.08.2020 00:22, ссылка)
- Renesas RA RZ - OlegPowerC(21.08.2020 22:40)
- Возможно с AVR будет роднее SAM E54 - Илья(21.08.2020 18:48, ссылка)
- Переход на другую архитектуру - всегда стресс. Едва ли при этом
родство AVR с SAM будет замечено. Тем более что SAM это тупик:
ожидать от Microchip'а развития линейки ARM не приходится - слишком
уж сильно он зациклился на своих PIC'ах, а продукты от Atmel и
подавно всегда будут у него в пасынках. Тогда как STM32 при всех
своих недостатках легко масштабируем. Достаточно набить руку с
"Blue Pill" :), так и все остальные STM32 окажутся подобными. У них
даже цоколевка снизу Kceния(144 знак., 21.08.2020 21:07)
- Полноте, сударыня. Помнится вы имели мнение что AVR прибьют, так
нет же, вышло уже несколько семейств. Аналогично с Cortex, скоро
будут новые PIC с М4 и др. )) - Илья(10.09.2020 16:23)
- Полноте, сударыня. Отчего бы стресс? Прочесть пару сотен страниц
описалова, и всё. Какой же это стресс. Работа такая :) - Бapбoc(22.08.2020 19:10)
- Требуется работать с STM32F103. Привык к IAR, навороты не нужны.
Можете посоветовать среду/версию? - teap0t(21.08.2020 21:19)
- Можно дальше IAR использовать.Я на нем много писал поскольку для
STM32w не было раньше кейла.Жить можно , но кейл лучше. - PlainUser(22.08.2020 22:05)
- Так я на IAR и работаю, тем паче, что привыкла к нему со времен
AVR. Но не считаю роль компилятора в этом деле определяющей - не в
компилировании кода трудности, а в его сочинительстве :). Ну, а
чтобы рыбу проекта сделать, то не чураюсь CubeMX :). Сперва я к
нему враждебно была настроена, но потом пригляделась и поняла, что
это нечто вроде "пассивной" операционной системы, которая лишь
исполняет волю вызывателя ее функций, а собственная ее активность
близка к нулю. Т.е Kceния(203 знак., 21.08.2020 21:50)
- Т.е. я могу взять любую версию из известного места и она встанет на
WinXP ? Не люблю операционки переустанавливать. Проект тестовый,
разбираться, что такое Cube не охота. Писать буду на ассемблере,
ибо знакомство с ARM и Си одновременно, я не осилю. - teap0t(22.08.2020 09:12)
- Вот годный Jump Starter - Си без Си © Bill --> - MBedder(22.08.2020 22:30, ссылка)
- Для человека знающего ассемблер освоить "С" дело пары часов. - PlainUser(22.08.2020 22:09)
- в помощь - m16(22.08.2020 21:06, ссылка)
- Не любую. На Windows XP, начиная с версии 6.3, EWARM уже не
работает. Ассемблер у ARM очень противный :) по сравнению в AVR и
x86 (последние интуитивно понятны). Kceния(533 знак., 22.08.2020 19:42)
- Это как умение играть в шахматы. Что считать умением - фигуры
двигать или стратегии создавать? Далеко не всякое умение писать на
АСМе приведет к легкому переходу на Си. Но писать на АСМе под АРМ -
тот еще мазохизм, особенно на какой нибудь M4+. - my504(22.08.2020 20:45)
- Т.е. вот эти я поставить смогу? teap0t(1 знак., 22.08.2020 20:28, картинка)
- Полагаю, что сможете. Ставьте лучше вторую, а то со времени выхода
первой могли появиться новые МК, которые она не поддерживает.
Впрочем, если вы на ассемблере собрались программировать, то вам
эта поддержка может оказаться не нужной. - Kceния(22.08.2020 20:38)
- Пасиба. Вторая это 6.21? - teap0t(22.08.2020 20:40)
- После инталляции неиспользуемые файлы из директории EWARM можно (я
бы сказал нужно) удалить. В прошлый раз из 6.3 Gb сделал 1.8Gb и
это далеко не предел. RxTx(187 знак., 22.08.2020 22:06, ссылка)
- Подождите инсталлировать! Я ответила вам с чужих слов, но похоже
это не так. Мне нужно минут 20, чтобы установить истину. - Kceния(22.08.2020 21:08)
- Выяснила: поддержка WinXP(SP3) пропала при переходе от
EWARM-CD-7501-10273.exe к EWARM-CD-7502-10505.exe Kceния(1434 знак., 22.08.2020 21:54 - 23.08.2020 15:44, ссылка)
- Здесь каталог прямых ссылок на IAR-овское фалохранилище. AлeкcaндpBлaдим?(15 знак., 11.09.2020 13:57,
, ссылка)
- Ссылка на 7.50.1: - AлeкcaндpBлaдим?(11.09.2020 13:25,
, ссылка)
- Прошу прощения. А как её вылечить. Компиляция проходит на ура и без
ошибок. При попытке залить прошивку (штатный ST-Link) выскакивает
окошко менеджера лицензий. ( я, правда, как самый умный первый
попавшийся патчер использовал iarpatcher32 ver. 1.12 (Mar 20 2020)
). teap0t(25 знак., 10.09.2020 15:16, ссылка, картинка)
- Отказ от "поддержки" (а тут и не указано даже что WinXP not
supported) зачастую не означает потери работоспособности. Так что
надо пробовать. Например на виртуалке. - RxTx(22.08.2020 21:55)
Конгресс, немцы... WinXP, ассемблер... У тебя появляется прекрасная возможность
изучать Си. А ты все ассемблер, ассемблер... Си изучить проще не сложнее, чем ассемблер ARM. И гораздо полезнее. Знание
ассемблера для ARM на практике АБСОЛЮТНО не нужно. Разве только для
общего развития и в определенных специфических случаях. В любом
случае - изучение ассемблера ARM - это ПОСЛЕДНЯЯ стадия
ознакомления с этой архитектурой. А ГЛАВНОЕ - il-2(90 знак., 22.08.2020 14:07)
- Java 8 JRE ругнется, но встанет на XP. - RxTx(22.08.2020 11:35)
- В Вин ЭксПи проблематично с CubeMX. Там требуется Джава не младше
опр. версии. А эта версия встает только на Вин 7. - Лaгyнoв(22.08.2020 09:52)
- HAL/LL/CMSIS-драйверы операционной системой не называют и они ей не
являются. Это библиотеки. - RxTx(22.08.2020 00:15)
- Если аккуратно программировать, то можно и несколько раз. - VLLV(21.08.2020 22:06)
- Вначале стоит почитать на него errata :) - Evgeny_CD(21.08.2020 19:10)
- Nuvoton. Рекомендую. - Evgeny_CD(21.08.2020 16:11)
- Не могу попасть в будку Это только у меня? - -=John=-(07.09.2020 15:16, ARM, полностью)
- Cortex-R82 -> - argus98(07.09.2020 12:11, ARM, ссылка, полностью)Evgeny_CD
- stm32f1xx, gcc - у него деление uint64_t реализовано? Коллега вон
сидит часа два ругается матом, ничего не работает. - POV_(04.09.2020 16:02,
, ARM, полностью)SciFi
- работает, чеб ему не работать? тож стандарт! klen(139 знак., 05.09.2020 01:23)
- Никак? Обычно такие функции, которые не может выполнить аппаратура,
реализуются в libgcc (см. по ссылке). Но в EABI (application binary
interface) для ARM предусмотрено, что есть функция
__aeabi_uldivmod, которая может быть реализована библиотекой... но
видимо никак не реализована, а gcc вместо __udivdi3 (худо-бедно
реализованной для обобщённого случая) подсовывает __aeabi_uldivmod
(которая якобы именно на ARM должна быть хорошо реализована). В
сущности проблема в не fk0(2970 знак., 05.09.2020 01:05, ссылка, ссылка)
- Ну ты же понимаешь, что если выбирать между "компилятор сломан" и
"снова у тебя говнокод", второй вариант сильно вероятнее :-) - SciFi(04.09.2020 16:42)
- Выбор кристала. Спрошу и я. Сейчас используем atmega8. Cкpипaч(420 знак., 23.08.2020 17:42, ARM, полностью)
- ATSAMC21J18A Кортекс м0 питание от 2.7 до 5.5 В. Всё остальное
много лучше меги8. 32к ОЗУ, 256к флешь. Куча ништяков. - max(02.09.2020 20:20)
- Никто не назвал PIC24. Плохой компилятор у микрочипа и отвратная
IDE, но с этим можно смириться (отлаживать в старом мплабе, писать
код в виме -- как-то так). 12-бит АЦП есть, внутрисхемная отладка
есть, нужно покупать только шайбу (pickit дешевле), оперативки
маловато и больше не будет (32кБайт -- максимум). ИДЕ покупать не
надо, внутренняя структура простая и надёжная (читается общий PDF и
специфичное для перифирии приложение), никаких кубов и т.п. нет.
Что с отдельной fk0(5150 знак., 01.09.2020 23:09, ссылка)
- Про компилятор MSP vs PIC24. В свое время TI выпустил апнот со
«сравнением» разных платформ «Competitive benchmarking”. Сравнение
было весьма специфическое (в выборе компилятора для конкурентных
платформ). Тогда (ок 7 лет назад), перепроверял их результаты для
PIC24 /С30 и результаты по плотности кода были в целом лучше чем
для MSP430 (TI для pic-ов использовал IAR и получал выигрыш для
своей платформы в разы)) - Илья(02.09.2020 18:36)
- Но по блату Микрочип поставляет правильным пацанам ПИК24 с 96
килограммами ОЗУ, ещё и с цветосинтезатором (LUT, если по ихнему) - Kpoк(02.09.2020 10:40)
- Не совсем так про ARM. Если 512КБ флеша достаточно (и 160КБ ОЗУ) и
корпуса QFN32 и LQFP48 подходят, то цена у M481/2/3/4/5/7
(Cortex-M4, Nuvoton) зависит в основном от наличия периферии, а не
от об'ема флеш. M481LIDAE, например, в корпусе LQFP48 стоит всего
2,3$. - Guest(02.09.2020 00:07,
)
- Спасибо, годный обзор. Только забыл упомянуть 70-MIPS dsPIC33E с
52K RAM и 100-MIPS двухъядерные dsPIC33CH с 48K RAM. Есть и
5-вольтовое подсемейство (dsPIC33EV), у всех приличные АЦП (12 бит,
до 3.5 MSPS), а у MC еще и шикарные гигагерцевые PWM - MBedder(01.09.2020 23:39)
- Ну народ STM теперь любит, а конвертор 5 -> 3.3 и в sot23
найти не сложно. Среды бесплатные, ЦАП, АЦП - 12 бит. Куча статей в
Компеле про периферию и другие фичи. Одна беда, что в stm32g4 все
так усложнили, что крышу может сорвать. - Visitor(01.09.2020 20:42)
- Мне нравится PIC18F Q43 Илья(65 знак., 24.08.2020 10:46, ссылка, ссылка)
- Чтобы не зависеть от производителей - переезжай на Cortex-M0 -A23,
сначала придётся потрахаться зато практически швобода - General(24.08.2020 10:44)
- ATMEGA DA Series Илья(523 знак., 24.08.2020 10:40, ссылка)
- Что интересно, никто не предложил PIC. Microchip стоит напрячься. - Evgeny_CD(23.08.2020 23:00)
- Renesas RL78 - Evgeny_CD(23.08.2020 20:35, ссылка, ссылка)
- STM8 - 5В, но 10 бит АЦП. STM8L - 12 бит, но 3В. ИДЕ - бесплатная
от STM. EEPROM есть. ОЗУ в среднем больше. Внутрисхемная отладка
есть. По документации конечно проигрывает Атмелу, но разобраться
можно. А в общем, по моему мнению, STM8L на сегодня выигрывает по
качество/цена среди всех 8-битников. PS Скорость и кол-во входов
АЦП гораздо выше, чем в AVR. Как бонус - есть ЦАП. argus98(85 знак., 23.08.2020 19:39, ссылка)
- TI MSP432P401 lloyd(424 знак., 23.08.2020 18:14)
- Чего сразу лесом? В IAR поддержка этого семейства тоже есть. - AlexG(23.08.2020 20:17)
- Спасибо. Нужно изучить внимательнее. - Cкpипaч(23.08.2020 18:26)
- Общий недостаток изделий от TI - сделали чип и бросили. Т.е.
семейство у них никак не получается. Примерно то же самое было с
TIVA, хотя она выдержала две модификации TM4C123 и TM4C129. А я
такого не люблю, мне нравится, когда происходит постоянное
вылизывание и модернизация ранее выпущенных изделий в духе Atmel и
ST, когда ерраты со временем исправляются (в смысле, что у
следующих девайсов тех же ошибок уже не будет), растут рабочие
частоты, память, совершенствуется Kceния(68 знак., 23.08.2020 19:44)
- >с TIVA lloyd(568 знак., 23.08.2020 20:28)
- А вы верите в то, что можно написать компилятор версии 1.00,
протестировать, работу принять, а потом команду разработчиков
разогнать - мол, свое дело сделали, больше нам не нужны? Так вот
контроллер намного сложнее компилятора, а потому, если он так и
остается навсегда первой версией, то никому такая поделка не нужна.
А со Stellaris'ом вы абсолютно правы - TI купила Luminary Micro,
переписала Stellaris'ы на себя, выпустила одну модификацию
(фактически только FPU добавила) и Kceния(81 знак., 23.08.2020 20:54)
- TI как бы довольно серьезная фирма, просто ARM Cortex-M-ы - не их
основное направление. Родное детище MSP430 довольно долго и
плодотворно развивается. Беспроводные SimpleLink'и (CC2650/2652),
куда, по всей вероятности, перегнали команду из Stellaris, тоже, в
принципе, неплохо поживают. Думаю со временем мы увидим интересные
камушки и от TI. И опять же, я не вижу смысла привязываться только
к ST, только к NXP или еще к кому-то. Указанный выше в ветке проц я
для своих нужд lloyd(250 знак., 23.08.2020 21:01)
- +100500 - когда-то надеялся на развитие этого семейства (432). В
результате получилось не то, не сё и полный застой. Забил... - argus98(23.08.2020 20:10)
- LGT8F328D AlexG(3 знак., 23.08.2020 18:07, ссылка)
- На новую AVR-ку AVR128DA48 взгляните. У нее не только 12-разрядный
АЦП, но есть еще и ЦАП (этот уже 10-рвзрядный). На ней уже
демо-плата есть в продаже (USB-отладчик интегрирован), примерно за
$10 за эту плату, но можно сыскать и дешевле. Она только на рисунке
выглядит такой большой, а на самом деле она очень маленькая. Бывают
еще AVR128DA с большим числом ног, но для них нет демо-плат. Цена
на чип, полагаю, не будет высокой, т.к. в соревновании с STM32
задирать высоко Kceния(95 знак., 23.08.2020 18:06, ссылка, картинка)
- ...preliminary? На самом деле, хочется что-то из мейнстрим. Не факт
что DA им станет. Сами-то вы как к нему дышите? - Cкpипaч(23.08.2020 18:30)
- ...preliminary. Это у Microchip всегда так. Когда запускают MCU в
релиз, то даташиты имеют статус "preliminary". Вычитывают очепятки,
уточнение электрических параметров (типовые/max/min - это же
статистика, набирают статистику, Big-Data )). Примерно через 0.5-1
год статус даташита меняют. Илья(97 знак., 24.08.2020 12:49)
- Preliminary иногда многие годы в даташитах висит, иногда до самого
конца выпуска. - AlexG(23.08.2020 20:41)
- Я считаю, что AVR DA, DB будут жить долго и счастливо. В этих чипа
есть все, что надо 8 битнику, и 16к ОЗУ! - Evgeny_CD(23.08.2020 19:05)
- Я лишь с тем расчетом совет давала, что вы ATMega8 прежде юзали.
Вот и подумала, что AVR128DA48 было бы наиболее близким к тому
решением. Кроме того, это уже собственная разработка Microchip, от
производства которой он вряд ли откажется. Мейнстримом это,
конечно, не станет, по в семействе AVR выглядит солидно. А если вам
мейнстрим нужен, то добро пожаловать на STM32 :). - Kceния(23.08.2020 19:01)
- ну и до кучи раскошелится на программатор , хотя это скорее всего
даже полезно! - Aleksey_75(23.08.2020 18:08)
- atmega328 остается только проблема с ацп (а может и не проблема). - kaf1(23.08.2020 17:55)
- Nuvoton пошерстить каталог. Там много хорошего CM0, CM4 - Evgeny_CD(23.08.2020 17:50)
- AVR DA :) - Evgeny_CD(23.08.2020 17:47)
- Не подскажет ли кто, как на новом CubeMX (версии 6.0+,
STM32Cube_FW_H7_V1.8.0) правильно заполнить бланк на однопоточный
ADC для STM32H743? Проблема в том, что Examples там остались
старые, тогда как в заполняемой структуре появились отличия (одни
поля пропали + появились новые). Кроме того, в Examples, как и в
примерах в интернете, всюду сканирующий режим по двум или более
каналам, тогда как мне нужен самый простой вариант - чтобы
единственный канал ADC заполнил Kceния(3039 знак., 30.08.2020 13:39, ARM, полностью)
- Пятница же. Сколько лет наблюдаю за дискуссиями здесь, но так и не
понял, что лучше Кортекс или Дюрекс? - Kpoк(21.08.2020 17:27, ARM, полностью)
- Кто тут говорил, что копеешный китайский STLink, перешитый в J-Link
штатной сеггеровской утилитой, не вполне полноценный? Вот
какртинка, утверждающая обратное... Подключил через к JFlash
посредством Remote Server cortex M4 (nrf52832). Скорость работы
сами видите. Ну и надо с помощью DASM-овской примочки подсунуть
лицензии, чтобы задействовать все фишки... Гyдвин(1 знак., 17.08.2020 14:38 - 14:50, ARM, картинка, полностью)
- А может кто сказать скока в граммах тока кушает STM32 в ресете ?
чтот не нахожу совсем... Есть желание прибить соседний (не мой)
проц чтоб жить не мешал, благо его
яйца ресет в моих руках )) - Aleksey_75(24.07.2020 21:22, ARM, полностью)
- Процессор STM32F746IET6. Отлаживаю IAR + STLink(в режиме SWD). Sl(1501 знак., 13.08.2020 17:34, ARM, полностью)
- CubeMX_IDE + Segger J-Link V11 + отладочный вывод в RTT, такая
проблема: после прошивки программа не стартует. при открытом окне
J-Link RTT Viewer появляются первые строки с отладочного вывода
(прога 2-3 раза в секунду выводит ~10..15 символов, что довольно
медленно, должно все успевать, контроллер на 180 МГц успешно
заведен), и после первых нескольких строк программа замирает
(Halt?). Открываю окно J-Link Commander, подключаюсь по SWD, делаю
команду "g" - типа GO, NAUT(310 знак., 06.08.2020 22:12, ARM)
- кто может подсказать по связке server-client (telnet) OpenOCD. backa(456 знак., 05.08.2020 20:07, ARM, полностью)
- IMHO наличие каши в голове, к тому же такую программу проще писать
на expect. - fk0(06.08.2020 01:19)
- Как можно прочесть данные (пакет TCP, вроде), если он ещё не
пришёл? Нужно не готовность к отправке данных у сервера спрашивать,
а наличие данных от сервера у клиента проверять. Серверу дали
команду по telnet. И спрашивай его, не спрашивай - всё одно, пока
соединение TCP не разорвано, ответ клиенту отправит. А уж когда
клиент делает своё чтение серверу без разницы, лишь бы не раньше,
чем доставка пакета-ответа имела место. Nikolay_Po(83 знак., 06.08.2020 01:09)
- Каким образом указать линкеру воткнуть функции из Test.h(hpp) файла
в нужную область памяти? gcc. И чтобы отладка работала. Сейчас
делаю через атрибут, но это нужно пройти по каждой
вызываемой-подвызываемой функции и проставить этот атрибут. - Constantin24(03.08.2020 11:55, ARM, полностью)
- Вышла "юбилейная" версия STM32CubeMX 6.0.0 - Kceния(27.07.2020 20:03, ARM, ссылка, полностью)