Например TDA7294

Форум РадиоКот • Просмотр темы - STM32 новичку в ARM что к чему
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 23, 2024 14:03:30

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 8459 ]     ... , , , 358, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 19:10:37 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 157
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3328
Рейтинг сообщения: 0
В опциях проекта на вкладке настроек линкера нужно поставить галку Use Link Time Optomozation.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 19:14:02 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 403
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2479
Рейтинг сообщения: 0
-flto меняет размер прошивки в пределах о-малое. Дело не в нём.


Последний раз редактировалось VladislavS Вс ноя 22, 2020 19:15:24, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 19:14:43 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
Было
Спойлер
Код:
|1|Program size (bytes):   23332|
||Data size    (bytes):     152|
||BSS size     (bytes):    2820|
||             ----------|
||Total size   (bytes):   26304   (R/W Memory: 2972)|
стало
Спойлер
Код:
|1|Program size (bytes):   22900|
||Data size    (bytes):     152|
||BSS size     (bytes):    2811|
||             ----------|
||Total size   (bytes):   25863   (R/W Memory: 2963)|


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 19:16:06 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 403
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2479
Рейтинг сообщения: 0
Есть же map-файл. Там всё видно.


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 19:27:57 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
Держите, один мар и другой мар
Вложение:
map_file.zip [25.58 KiB]
Скачиваний: 282

У ARV в 18кило вылезло, здесь с накладными расходами ~22кило, не забываем 2кило на таблицу идет.


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 21:37:25 
Друг Кота
Аватар пользователя

Карма: 19
Рейтинг сообщений: 473
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 3061
Рейтинг сообщения: 0
Тут по ходу разбора чужого кода вопрос возник. Есть какой-то практический смысл в использовании типа bool в Си? Вроде экономии памяти или скорости выполнения операций. В IAR для использования этого типа нужно подключить файл stdbool.h. Заглянул я в файл, но ничего не понял в этих ifndef __cplusplus и #define __bool_true_false_are_defined 1. Что-то ужасное произойдет, если заменить bool на char или int?

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 22:03:50 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 1
Есть какой-то практический смысл в использовании типа bool в Си? Вроде экономии памяти или скорости выполнения операций. В IAR для использования этого типа нужно подключить файл stdbool.h.

В C2x bool/true/false наконец станут ключевыми словами и хедеры подключать будет не нужно. А смысл не в экономии, а в выразительности и лучшей защиты от возможных ошибок.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 22:08:36 
Друг Кота
Аватар пользователя

Карма: 19
Рейтинг сообщений: 473
Зарегистрирован: Сб янв 28, 2006 22:47:24
Сообщений: 3061
Рейтинг сообщения: 0
Понятно, спасибо. Я думал bool всего 1 бит занимает в памяти, а сейчас прочитал, что съедает те же 8 бит.

_________________
Астролябия-сама меряет, было бы что мерять!!!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 22:11:38 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
Asmodey писал(а):
Тут по ходу разбора чужого кода вопрос возник.
Нет, просто эффективность компилятора.
И пока EmBitz проигрывает во всем, самое главное не умеет строит "зависимости", что бы открыть функцию в другом файле, мне приходится слева выбрать файл с функцией, а если их куча файлов приходится каждый перещелкать пока найдешь нужный, либо очень очень "умную голову" иметь, что бы в памяти все это держать.

Только можно представить как вот это
Спойлер
Код:
#define CMD(x)   static const char SCMD(x)[] = # x ; \
      static int16_t FCMD(x)(char *str); \
      static const cmd_t __attribute__((used, section(".my_table"))) CONCAT(_ , SCMD(x)) = { \
            .name = SCMD(x), .func = FCMD(x) }; \
      static int16_t CONCAT(f_cmd_, x)(char *str)
можно собрать в кучу в голове.

На очереди IAR, а то что-то хвастаются что IAR "ложит на лопатки" любой компилятор, посмотрим.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 22:32:34 
Прорезались зубы
Аватар пользователя

Карма: 2
Рейтинг сообщений: 12
Зарегистрирован: Сб янв 09, 2016 15:51:17
Сообщений: 200
Рейтинг сообщения: 0
Не так - проверяется всего один бит, или всё число на ноль. А размер может быль любым. В частности при возврате параметра в arm системе - это всегда регистр ядра, то-есть 32 бита. И всего два состояния ответа - команда успешна или нет.
Другое дело логические операции с bool, особенно с промежуточным хранением в структуре. Тут вообще нет экономии ни в размере памяти, ни в логическом наглядном применении. В этом случае bool значительно проигрывает перечислению. Гораздо приятнее видеть не просто факт сбоя, но тип ошибки.

EmBitz не знаю "зависимости", есть область видимости. Если хидер подключен к файлу - то его функции имеют режим авто_дополнения, а так-же видны в коленке с лева. Просто не нужно к майну подключать абсолютно всё, каша получится.

_________________
sRtoS


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 22:36:47 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 157
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3328
Рейтинг сообщения: 0
Dimon456 писал(а):
Нет, просто эффективность компилятора.
И пока EmBitz проигрывает во всем
Как уже писал EmBitz это IDE. Она может использовать различные компиляторы в том числе GCC и компилятор кейла. Я использую текущую версию GCC 9.3.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Вс ноя 22, 2020 22:52:23 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
А редактор с подсветкой синтаксиса будет мне автодополнения разных членов структур, переменных и т.п. показывать? И на лету статанализатором ошибки проверять?

Будет, но качество сильно зависит от редактора и стиля написания :) Например, можно без проблем скомпилировать такой код:
Код:
TIM5->RCR = 12345;
TIM1->RCR = 12345;
TIM16->RCR = 12345;

У TIM5 RCR нет вообще, у TIM16 он 8-ми битный, разрядность для TIM1 может быть 8/16 бит, в зависимости от серии, но в данном случае мы не получим даже предупреждения. А в таком случае получим предупреждение и ошибку:
Изображение

Реализовано довольно таки просто, на иероглифах :)
СпойлерИзображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пн ноя 23, 2020 00:13:40 
Собутыльник Кота
Аватар пользователя

Карма: -12
Рейтинг сообщений: -25
Зарегистрирован: Пт июл 12, 2019 22:52:01
Сообщений: 2525
Рейтинг сообщения: 0
Зачем Makefile? IDE его не использует. Для компиляции, прошивки и отладки он не нужен.

Мне просто нечего сказать. Это - вообще дегенерация какая-то что ли?

Добавлено after 1 minute 16 seconds:
Добавил файлы в проект, задал параметры сборки хоть для каждого файла в отдельности, скомпилировал, отладил, прошил и отправил проект в архив. Всё в одной среде без танцев с бубном.

Вот, что и требовалось доказать: полная дегенерация. Абсолютное отсутствие контроля со стороны разработчика…

_________________
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пн ноя 23, 2020 08:22:43 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 403
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2479
Рейтинг сообщения: 0
Абсолютное отсутствие контроля со стороны разработчика…
Наоборот, полный контроль. Покажи мне makefile в котором для каждого файла можно задать свои параметры компиляции. Слабо?

PS:
А запульнуть прошивку сразу на SPI-флэшку, откуда она будет грузиться загрузчиком? А загрузить и отлаживать её с того места, куда её штатно загрузчик подгружает? А подключиться к работающей программе "на лету" и подсмотреть состояние любого регистра? А инициализировать SDRAM перед загрузкой в неё отлаживаемой прошивки? И ещё много того, что тебе даже не снилось. Ответ я знаю - ТЕБЕ НЕ НАДА.

Добавлено after 1 hour 35 minutes 4 seconds:
т.к. мне нужно видеть весь выхлоп make'а в нормальном виде.
Только вот понятие "в нормальном виде" у тебя какое-то ненормальное. Зачем смотреть на вывод 100500 строк с кучей параметров компиляции для файлов, скомпилированных без ошибки? IDE мне всё это спрячет и покажет только ошибки и предупреждения. Ну и финальную статистику. Это сильно упрощает и ускоряет мою работу. Даже секунды, потраченные на переключение в терминал и запуск make это время, украденное у меня.

Добавлено after 1 hour 13 minutes 7 seconds:
Реализовано довольно таки просто, на иероглифах :)
А в данном примере если info без static объявить, скомпилируется? Ведь она в статическом методе фактически не используется (скорее всего в других используется), а только в концепте. И метод так и просит inline. Компилятор, конечно, разберётся сам, но для наглядности :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пн ноя 23, 2020 09:27:59 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
makefile в котором для каждого файла можно задать свои параметры компиляции. Слабо?

Код:
 $(GCC) $< $(CFLAGS) -c -o $@
  $(GCC) $< $(CFLAGS2) -c -o $@
  $(GCC) $< $(CFLAGS3) -c -o $@

"запульнуть" - make SPI
и далее make download, make initSDRAM, make ВСЕ_что_не снилось и т.д.
ИДЕ делает все также приблизительно, только это скрыто от пользователя.
Терминал для make открывать не нужно - хороший редактор уже в терминале.
Время в ИДЕ тратится на отрывание руки от клавиатуры, хватание мышки, прицеливание на кнопку и нажатие на саму кнопку...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пн ноя 23, 2020 09:48:00 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2058
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18030
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
oleg110592 писал(а):
Время в ИДЕ тратится на отрывание руки от клавиатуры, хватание мышки, прицеливание на кнопку и нажатие на саму кнопку...
99,9% команд IDE доступны на клавиатуре.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пн ноя 23, 2020 09:53:09 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
значит "запульнуть" - SPI download, initSDRAM, ВСЕ_что_не снилось - это 0.1%


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пн ноя 23, 2020 10:04:48 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
Ну, попробовал я IAR, ни чего нет, только 5 Гигов на жестком диске. Хотя у меня версия 7.70.1 была, может надо было последнию скачать?
EmBitz еще куда не шло, а это - полное ... а еще и платный, за что? за 5 Гигов на жестком диске.

Ну "зависимость" IAR так же строит не умеет, слева все в "каше", справа вроде что-то есть, но не то, не для новичков.
На этой записи
Код:
case '0' ... '9':
подавился, здесь
Код:
pixel_t tmp[cfg.mx];
то же ему что-то не нравится, скрипт линкера другой, сходу не осилишь, надо где-то примеры смотреть. За то 5 Гигов на жестком диске.
В топку.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пн ноя 23, 2020 10:16:53 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 18
Рейтинг сообщений: 403
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 2479
Рейтинг сообщения: 0
значит "запульнуть" - SPI download, initSDRAM, ВСЕ_что_не снилось - это 0.1%
ЧЕМ ты "запульнёшь"? ЧЕМ сделаешь initSDRAM непосредственно перед загрузкой в неё прошивки? make? Ну-ну.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 новичку в ARM что к чему
СообщениеДобавлено: Пн ноя 23, 2020 10:18:58 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
скриптом, вызов из make


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 8459 ]     ... , , , 358, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: john1770 и гости: 29


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y