Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 17.01.2013, 19:14  
avs2009
Прописка
 
Аватар для avs2009
 
Регистрация: 10.08.2010
Сообщений: 113
Сказал спасибо: 30
Сказали Спасибо 43 раз(а) в 26 сообщении(ях)
avs2009 на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от wellcom Посмотреть сообщение
Есть ли более простые варианты конфигурирования портов
можно использовать макросы (пример тут: http://ziblog.ru/2012/09/09/linii-vv...2-chast-3.html)
а еще можно напрямую работать с регистрами GPIO...
Реклама:
avs2009 вне форума  
Непрочитано 17.01.2013, 19:15  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от wellcom Посмотреть сообщение
Если взять чип с небольшой флеш, то % 20 флеша уйдет только на инициализацию.
Нонсенс. Если вас не устаревает библиотека - то можете сами ручками проделать все то-же самое! Выиграете пару байтиков (и то сомнительно)
nerozero вне форума  
Непрочитано 17.01.2013, 19:17  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

хотя да, избавитесь от структур инициализации, как и от портироваемости и гибкости кода.
nerozero вне форума  
Непрочитано 17.01.2013, 19:26  
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от wellcom Посмотреть сообщение
8 раз заполнять ст-ру и 8 раз инициализировать ... % 20 флеша уйдет только на инициализацию.
А 4 раза и 10% - намного лучше? Используйте запись в порты и это будет самый компактный вариант:

__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 17.01.2013, 19:28  
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от nerozero Посмотреть сообщение
Выиграете пару байтиков (и то сомнительно)
Выигрыш, повидимому, составит 32 байта на порт, плюс экономия кода. Это минимум; если там еще и аналоговые входы есть, то выигрых возрастет соответственно, как я понимаю.
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 17.01.2013, 19:32  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от tempora Посмотреть сообщение
Выигрыш, повидимому, составит 32 байта на порт, плюс экономия кода. Это минимум; если там еще и аналоговые входы есть, то выигрых возрастет соответственно, как я понимаю.
это если вы структуру объявляете в внутри функции. Кто вам мешает объявить ее единажды глобально и просто менять ее поля??? тоесть одна структура инициализации GPIO на все. И это все без включенной оптимизации кода под размер! Вас сильно удивят выкрутасы которые проделывает компилятор во время оптимизации...
nerozero вне форума  
Непрочитано 17.01.2013, 19:40  
wellcom
Временная регистрация
 
Регистрация: 25.09.2008
Сообщений: 95
Сказал спасибо: 39
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
wellcom на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

читал эту статью, буду курить регистры, так как мой камень STM32F103 имеет всего лишь 16 кБ флеша. Инициализация 2-х портов (как по ссылке выше) заняла 1544 байт....многовато
wellcom вне форума  
Непрочитано 17.01.2013, 19:44  
tempora
Почётный гражданин KAZUS.RU
 
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
tempora на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от nerozero Посмотреть сообщение
это если вы структуру объявляете в внутри функции. Кто вам мешает объявить ее единажды глобально и просто менять ее поля???
И что, 32 бита, записываемые в "поля" из константы в коде, занимают меньше места, чем 32 бита, хранимые в структуре?
__________________
There's always more than one way to skin a cat.
tempora вне форума  
Непрочитано 17.01.2013, 19:44  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

wellcom, Так это-ж не только инициализация, туда-же еще и код библиотеки входит.
nerozero вне форума  
Непрочитано 17.01.2013, 19:54  
nerozero
Вид на жительство
 
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
nerozero на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от tempora Посмотреть сообщение
И что, 32 бита, записываемые в "поля" из константы в коде, занимают меньше места, чем 32 бита, хранимые в структуре?
Дались вам эти 32 байта пусть даже с 16КБайтами флеша
При глобальной переменной вы избавляетесь от повторного описания каждый раз тех самых 32 байт. Другими словами - 32 байта на инициализацию + резмер структуры 1 раз вместо 5 раз скажем в 5 функциях.
Reductio ad absurdum - берите процессор с адекватной задаче памятью тем более по моему даже в цене разница совсем мизерная...


wellcom, вы попробуйте включить библиотеку stdlibc и использовать printf(). Вот это МОНСТР пожирающий память.
nerozero вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Школа АRMрестлинга Uragan90 Микроконтроллеры, АЦП, память и т.д 54 22.08.2011 16:13
ARM Cortex M3 + Linux SiMiLya Микроконтроллеры, АЦП, память и т.д 10 17.06.2011 17:20
Помогите с STM32 - очень нужно... yakuzaa Микроконтроллеры, АЦП, память и т.д 60 04.08.2010 11:04
Как добавить поддержку для STM32 SFHK Микроконтроллеры, АЦП, память и т.д 11 18.12.2009 18:09


Часовой пояс GMT +4, время: 05:25.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot