Например TDA7294

Форум РадиоКот • Просмотр темы - STM32 keil где находятся глобальные переменные, стек, куча.
Форум РадиоКот
Здесь можно немножко помяукать :)





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

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


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



Начать новую тему Ответить на тему  [ Сообщений: 36 ]    , 2
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 19:15:48 
Вымогатель припоя

Зарегистрирован: Ср янв 05, 2011 10:03:18
Сообщений: 581
Рейтинг сообщения: 0
SergeBS писал(а):
menzoda писал(а):
Ну а где тогда сидят локальные переменные?

Когда понадобится ключевое слово volatile - узнаешь. Скорее всего. Если захочешь...
А мне можно уже узнать? Какое отношение имеет этот квалификатор к расположению переменных вообще?

_________________
С уважением,
Виктор.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 19:19:35 
Друг Кота

Карма: -18
Рейтинг сообщений: 29
Зарегистрирован: Вс дек 05, 2010 06:10:34
Сообщений: 4583
Откуда: ЮВ
Рейтинг сообщения: 0
Виктор, забей!!! :)
Веселье "состоится при любой погоде"...

_________________
"Я не даю готовых решений, я заставляю думать!"(С)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 19:23:34 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
Прямого отношения - не имеет. А косвенно влияет очень сильно. См. описание. Пересказывать не буду. Просто если переменная должна быть доступна из кучи разных мест, то запихивать ее в стек - не получится - накладно. Упрощенно как-то так.

_________________
Человек - это звучит гордо, а обезьяна - объективно...


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

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

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 20:11:37 
Вымогатель припоя

Зарегистрирован: Ср янв 05, 2011 10:03:18
Сообщений: 581
Рейтинг сообщения: 0
SergeBS писал(а):
Прямого отношения - не имеет. А косвенно влияет очень сильно. См. описание. Пересказывать не буду. Просто если переменная должна быть доступна из кучи разных мест, то запихивать ее в стек - не получится - накладно. Упрощенно как-то так.
Совершенно не так. В качестве коллбека рекомендую
Цитата:
См. описание.

_________________
С уважением,
Виктор.


Последний раз редактировалось ut1wpr Чт май 09, 2013 20:19:15, всего редактировалось 1 раз.

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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 20:12:37 
Вымогатель припоя

Зарегистрирован: Ср янв 05, 2011 10:03:18
Сообщений: 581
Рейтинг сообщения: 0
HHIMERA писал(а):
Виктор, забей!!! :)
Веселье "состоится при любой погоде"...
Ух ты! А я думал, здесь веселье на одного :) :)
Привет Химерам все стран!
PS заглядывал в заготовку моего проекта, что я тебе подогнал?

_________________
С уважением,
Виктор.


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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 20:18:15 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
ut1wpr писал(а):
Даже не хотят вспомнить два простых словосочетания - стек данных и стек возврата. Свалили все в кучу. Компилятор умнее их оказался, и пользуется двумя стеками.
Практически все грамотные компилеры позволяют регулировать их соотношения и размеры.

Да боже ж мой. На картинке еще есть и закладка HEAP Configuration. И шо? Все грамотные компилеры тоже это имеют, а неграмотные не имеют? Так?
Только вот "маленькая" неувязочка. В книжке от производителя почему-то никакого data stack register нетути, а есть main stack, process stack и stack pointer. "Маленькая" разница.
Вспомним до кучи Link Register, чтобы еще больше дело со стеками запутать.
Кучу данных тоже можно организовывать как левой ноге захочется. Соответственно этот "грамотный" компилер - просто предлагает СВОЙ способ, и только. CV AVR тоже имеет визардов, которые кучу всякого могут сделать одним способом из многих. Но из этого не следует, что он умный, а прочие компилеры тупые. Как-то так, ИМХО.
А иначе получим: кто-то (да даже я ради понтов, например :) ) нацарапает компилер, который исходно будет иметь закладки для просто стека, для стека данных, для кучи, для динамического массива (а можно и для нескольких :) ), для буферов USART, USB, EtherNet ... И пусть код будет мягко говоря неоптимизирован, зато закладок-то сколько! ГРАМОТНОСТЬ так и прет. УРРЯ, товарищи!

_________________
Человек - это звучит гордо, а обезьяна - объективно...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 20:23:25 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
ut1wpr писал(а):
Совершенно не так.

А таки шо не так? С мифическим data stack вроде разобрались - что его производителем не предусмотрено, а закидоны отдельно взятых компиляторов не в счет. Будем с volatile тоже разбираться? Дык я "за"!

_________________
Человек - это звучит гордо, а обезьяна - объективно...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 20:26:10 
Вымогатель припоя

Зарегистрирован: Ср янв 05, 2011 10:03:18
Сообщений: 581
Рейтинг сообщения: 0
SergeBS писал(а):
ut1wpr писал(а):
Даже не хотят вспомнить два простых словосочетания - стек данных и стек возврата. Свалили все в кучу. Компилятор умнее их оказался, и пользуется двумя стеками.
Практически все грамотные компилеры позволяют регулировать их соотношения и размеры.

Да боже ж мой. На картинке еще есть и закладка HEAP Configuration. И шо? Все грамотные компилеры тоже это имеют, а неграмотные не имеют? Так?
Только вот "маленькая" неувязочка. В книжке от производителя почему-то никакого data stack register нетути, а есть main stack, process stack и stack pointer. "Маленькая" разница.
Вспомним до кучи Link Register, чтобы еще больше дело со стеками запутать.
Кучу данных тоже можно организовывать как левой ноге захочется. Соответственно этот "грамотный" компилер - просто предлагает СВОЙ способ, и только. CV AVR тоже имеет визардов, которые кучу всякого могут сделать одним способом из многих. Но из этого не следует, что он умный, а прочие компилеры тупые. Как-то так, ИМХО.
А иначе получим: кто-то (да даже я ради понтов, например :) ) нацарапает компилер, который исходно будет иметь закладки для просто стека, для стека данных, для кучи, для динамического массива (а можно и для нескольких :) ), для буферов USART, USB, EtherNet ... И пусть код будет мягко говоря неоптимизирован, зато закладок-то сколько! ГРАМОТНОСТЬ так и прет. УРРЯ, товарищи!
Сколько импрессии! Я в восторге. Вашу бы энергию, да в мирных целях. :)
Никак не пойму, что вас так "приподняло" со стула? И о каком производителе и его книжечке идет речь? Я вообще-то говорил о компиляторах от IAR. Без привязки к аппаратным особенностям МК разных мастей. Потому как стеки, о которых я упомянул находятся "этажом выше" вами упомянутых. Это особенности компилятора и механизмов его работы с функциями и переменными. Вы, похоже, имели ввиду, уровень машинного представления. А это разные вещи.
Пожалуйста, не нервничайте. Это не способствует взаимопониманию. :)

_________________
С уважением,
Виктор.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 20:28:05 
Вымогатель припоя

Зарегистрирован: Ср янв 05, 2011 10:03:18
Сообщений: 581
Рейтинг сообщения: 0
SergeBS писал(а):
ut1wpr писал(а):
Совершенно не так.

А таки шо не так? С мифическим data stack вроде разобрались - что его производителем не предусмотрено, а закидоны отдельно взятых компиляторов не в счет. Будем с volatile тоже разбираться? Дык я "за"!
В чем мифичность стандартного механизма распределения памяти компиляторов я так и не понял.
Если вам надо с квалификатором volatile разбираться - пожалуйста, кто ж вам запретит. Мне не надо, я много лет тому с ним разобрался. Еще до эры авропиков.

_________________
С уважением,
Виктор.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 21:13:21 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
ut1wpr писал(а):
Я вообще-то говорил о компиляторах от IAR. Без привязки к аппаратным особенностям МК разных мастей.

О. Я компиляторы перепутал. Ну и фиг с ними. Я GCC пользую. И мой тезис остается прежний: если нет никаких аппаратных средств поддержки, то всякие Data Stack, Heap, ... всего-навсего "умничанье" отдельно взятого компилера. Баг это или фича - зависит от симпатий конкретого индивидуума. Но вот никаким стандартным решением не является. И аргументом типа "а вот оно так делается" тоже быть не может. Более прямолинейно: Data Stack может быть, а может и НЕ БЫТЬ. С соответствующими последствиями. Вот ежели бы был такой специальный Data Stack Register и еще к нему Data Stack Memory - тогда Data Stack однозначно ДОЛЖЕН бы был быть. Да вот нетути такого.
Ну и исключительно вредности для: пример МК с Data Stack Register озвучьте. Чтобы понятно было, на какой планете IAR живет. Раз у него "клеш с бомбошками".

_________________
Человек - это звучит гордо, а обезьяна - объективно...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 21:21:32 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
ut1wpr писал(а):
В чем мифичность стандартного механизма распределения памяти компиляторов я так и не понял.

В том, что нет такого стандарта - Data Stack. А есть баг/фича от IAR. И только.
Да, целиком мои посты цитировать не обязательно.

_________________
Человек - это звучит гордо, а обезьяна - объективно...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 21:27:23 
Вымогатель припоя

Зарегистрирован: Ср янв 05, 2011 10:03:18
Сообщений: 581
Рейтинг сообщения: 0
SergeBS писал(а):
ut1wpr писал(а):
В чем мифичность стандартного механизма распределения памяти компиляторов я так и не понял.

В том, что нет такого стандарта - Data Stack. А есть баг/фича от IAR. И только.
Да, целиком мои посты цитировать не обязательно.
Потрясающее самомнение. Вы считаете, что вас будут цитировать?
Давайте договоримся, вы смените штанишки, которые пока вам еще впору, тогда и поговорим. Когда вы почувствуете, что они вам жмут.
А пока изучайте инструментарий. Тоже иногда полезно.

_________________
С уважением,
Виктор.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 21:39:30 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
ut1wpr писал(а):
Потрясающее самомнение. Вы считаете, что вас будут цитировать?

А я тут ни при чем - меня цитировать не надо. Отдельно взятые индивидуум или компания стандарты не устанавливают. И это подтверждается "быстрым отходом на заранее подготовленные позиции", как только нужны аргументы весомее, чем скриншот.

_________________
Человек - это звучит гордо, а обезьяна - объективно...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 22:07:06 
Друг Кота

Карма: -18
Рейтинг сообщений: 29
Зарегистрирован: Вс дек 05, 2010 06:10:34
Сообщений: 4583
Откуда: ЮВ
Рейтинг сообщения: 0
А что цитировать то, какие аргументы???
Это всё бред не о чём...
:)))

_________________
"Я не даю готовых решений, я заставляю думать!"(С)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Чт май 09, 2013 22:32:34 
Вымогатель припоя
Аватар пользователя

Карма: 6
Рейтинг сообщений: 25
Зарегистрирован: Пт апр 11, 2008 11:24:53
Сообщений: 683
Откуда: Владимир
Рейтинг сообщения: 0
HHIMERA писал(а):
А что цитировать то, какие аргументы???
Это всё бред не о чём...
:)))

Дык и я об этом. Нету Data Stack Register - вот и нету такого стандарта - Data Stack. В отличие от просто стека.
А иначе куда бы он делся, был бы. Чтобы железку применить. В любом компиляторе.
"Нет человека - нет проблемы" :).

_________________
Человек - это звучит гордо, а обезьяна - объективно...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 keil где находятся глобальные переменные, стек, ку
СообщениеДобавлено: Пт май 10, 2013 00:44:40 
Вымогатель припоя
Аватар пользователя

Карма: 7
Рейтинг сообщений: 56
Зарегистрирован: Вт авг 28, 2012 22:21:33
Сообщений: 535
Рейтинг сообщения: 0
О! Как я отличненько на лопасти подбросил!


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

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 24


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

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


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