-
- А еще в 8-битниках софт плотнее утаптывается. У меня в текущем
проекте в PIC18 весь софт занимает около 20кБ, аналогичный, но пока
недописанный (скажем, 60% функционала) на STM32 - более 30кБ. И там
и там никакую оптимизацию кода пока не использовал. хотя, да - это
так себе довод - Argon(01.02.2022 22:22)
- Вот пример IoT бенчмарка, где AVR cливает в 2+ раза по размеру кода
ARM, RISC-V. Так что эффективность 8 битника очень сильно от задач
зависит. Evgeny_CD(1 знак., 02.02.2022 02:00, ссылка)
- по размеру кода все вопросы к компилятору, причём здесь AVR? - m16(02.02.2022 02:07)
- А к тому, что IoT на асме не пишется. И GCC для AVR нельзя сказать,
что сильно плох. Его модульная структура гарантирует, что все те же
оптмизации, что и для ARM, RISC-V, на уровне исходного кода, будут
применены. Останется качество оптимизации кодогенератора, но здесь
проигрыш в 2 раза по размеру на наборе тестов, а не на каком-то
кусочке, маловероятен - Evgeny_CD(02.02.2022 02:16)
- Про асм - очень спорное утверждение, так как Иот разный бывает :) И
да, можно на С писать по разному. Например, я когда начинал писать
на С для АВРок, то делал это не так, как рекомендовал Атмел. После
прочтения их рекомендаций - стало значительно больше места в АВРках
и даже С стал приемлимым инструметом в МК :) symbions(14 знак., 02.02.2022 08:51)
- А где бы почитать, как правильно использовать С в PIC16
(PIC16LF1939), для уменьшения кода без включения оптимизации? - ssr(02.02.2022 10:23,
)
- На сайте микрочип поискать,не? - symbions(02.02.2022 16:05)
- По запросу "site:microchip.com pic16 language C" находится куча
ссылок, но документ один: symbions(213 знак., 03.02.2022 01:28, ссылка, ссылка)
- Это не про оптимизацию. Первая ссылка про то, как будет называться
регистр или отдельное поле/бит в регистре из даташита в .h-файле
процессора, и как их читать/записывать. Вторая про С вообще, как
там обозначаются переменные, какие есть команды, как написать
функцию и т.п., типа С для начинающих. AlexBi(340 знак., 03.02.2022 09:48)
- Не любит микрочип программистов на С symbions(59 знак., 03.02.2022 10:24)
- Это не про оптимизацию. Первая ссылка про то, как будет называться
регистр или отдельное поле/бит в регистре из даташита в .h-файле
процессора, и как их читать/записывать. Вторая про С вообще, как
там обозначаются переменные, какие есть команды, как написать
функцию и т.п., типа С для начинающих. AlexBi(340 знак., 03.02.2022 09:48)
- По запросу "site:microchip.com pic16 language C" находится куча
ссылок, но документ один: symbions(213 знак., 03.02.2022 01:28, ссылка, ссылка)
- Х-м.. Наряду с другими платформами давно практикую (с 1997 г.) PIC'и (шестнадцатая линейка одна из любимых ;)). В последние годы именно PIC16F1939, PIC16F1947 состоят в некоторых моих мультипроцессорных разработках. SERGHIO(827 знак., 02.02.2022 14:49, ссылка)
- На сайте микрочип поискать,не? - symbions(02.02.2022 16:05)
- А где бы почитать, как правильно использовать С в PIC16
(PIC16LF1939), для уменьшения кода без включения оптимизации? - ssr(02.02.2022 10:23,
- Про асм - очень спорное утверждение, так как Иот разный бывает :) И
да, можно на С писать по разному. Например, я когда начинал писать
на С для АВРок, то делал это не так, как рекомендовал Атмел. После
прочтения их рекомендаций - стало значительно больше места в АВРках
и даже С стал приемлимым инструметом в МК :) symbions(14 знак., 02.02.2022 08:51)
- А к тому, что IoT на асме не пишется. И GCC для AVR нельзя сказать,
что сильно плох. Его модульная структура гарантирует, что все те же
оптмизации, что и для ARM, RISC-V, на уровне исходного кода, будут
применены. Останется качество оптимизации кодогенератора, но здесь
проигрыш в 2 раза по размеру на наборе тестов, а не на каком-то
кусочке, маловероятен - Evgeny_CD(02.02.2022 02:16)
- по размеру кода все вопросы к компилятору, причём здесь AVR? - m16(02.02.2022 02:07)
- Это от алгоритмов зависит. Если нет массово 32 битных переменных, то запросто. У PIC1*, хоть я и никогда не был их фанатом, скорее, неоправданно надсмехался над ними, система команд хорошо продуманная, надо отметить. В комплекте с качественным компилятором будет огонь. Возможно, либы писали индусы более старшего поколения. - Evgeny_CD(01.02.2022 23:04)
- Вот пример IoT бенчмарка, где AVR cливает в 2+ раза по размеру кода
ARM, RISC-V. Так что эффективность 8 битника очень сильно от задач
зависит. Evgeny_CD(1 знак., 02.02.2022 02:00, ссылка)
- ну не знаю... в 2016 я оглянулся вокруг. Надо было в одном корпусе
4-5-6 портов UART, обязательно USB Host для флэшек, RTC с отдельным
входом Ubat, прорву портов GPIO, и RAM не меньше 90К. Выбор был
небольшой. STM32. - Лaгyнoв(01.02.2022 18:18)
- Это другое :) Я скорее имел в виду мелкие STM32, которые народ как
"контроллер светодиода" использовал. - Evgeny_CD(01.02.2022 19:38)
- Использовал STM32F030 как "контроллер светодиода". Т.к. разница в
цене с 51-ми составляла в районе $0.25 за штуку. При паре тысяч
штук в год - $500 разницы и груда геморроя (другой компилятор,
другой отладчик, другая периферия, другой поставщик и т.д.) на всех
этапах. - LightElf(01.02.2022 21:39)
- Бытие определяет сознание. - Evgeny_CD(01.02.2022 22:50)
- Использовал STM32F030 как "контроллер светодиода". Т.к. разница в
цене с 51-ми составляла в районе $0.25 за штуку. При паре тысяч
штук в год - $500 разницы и груда геморроя (другой компилятор,
другой отладчик, другая периферия, другой поставщик и т.д.) на всех
этапах. - LightElf(01.02.2022 21:39)
- Это другое :) Я скорее имел в виду мелкие STM32, которые народ как
"контроллер светодиода" использовал. - Evgeny_CD(01.02.2022 19:38)
- А еще в 8-битниках софт плотнее утаптывается. У меня в текущем
проекте в PIC18 весь софт занимает около 20кБ, аналогичный, но пока
недописанный (скажем, 60% функционала) на STM32 - более 30кБ. И там
и там никакую оптимизацию кода пока не использовал. хотя, да - это
так себе довод - Argon(01.02.2022 22:22)