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

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

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

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

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

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

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

Закрытая тема
Опции темы
Непрочитано 18.06.2013, 23:15   #1
sergx1300
Прописка
 
Аватар для sergx1300
 
Регистрация: 18.03.2010
Адрес: Украина, Тернополь
Сообщений: 225
Сказал спасибо: 14
Сказали Спасибо 44 раз(а) в 34 сообщении(ях)
sergx1300 на пути к лучшему
Стрелка CodeVisionAVR Размер Hardware Stack size

Всем привет. Кто знает сколько приблизительно нужно Hardware Stack size в CodeVisionAVR для контроллеров AVR. Когда код большой и много функций, МК начинает то зависать, то себя ресетить, вообщем творит чудеса. Проблема частично решается путем уменьшения Data Stack size. Но все же, какие значения приблизительно должны быть.

Data Stack size:
RAM Global variables size:
Hardware Stack size:


Например: Работает
Цитата:
Chip: ATmega8
Clock frequency: 8,000000 MHz
Program type: Application
Memory model: Small
Optimize for: Size
(s)printf features: int
(s)scanf features: int, width
Promote 'char' to 'int': Yes
'char' is unsigned: Yes
global 'const' stored in FLASH: Yes
8 bit enums: Yes
Enhanced core instructions: Yes
Automatic register allocation: Yes
Smart register allocation: Yes

Build: 1255
12039 line(s) compiled
No errors
No warnings

Bit variables area: 2h to 2h
Bit variables size: 1 byte(s)

Data Stack area: 60h to C7h
Data Stack size: 104 byte(s)
Estimated Data Stack usage: 79 byte(s)

RAM Global variables area: C8h to 447h
RAM Global variables size: 896 byte(s)

Hardware Stack area: 448h to 45Fh
Hardware Stack size: 24 byte(s)

Heap size: 0 byte(s)

EEPROM usage: 24 byte(s), 4,7% of EEPROM
Program size: 3989 words (7978 bytes), 97,4% of FLASH
НЕРАБОТАЕТ
Цитата:
Chip: ATmega8
Clock frequency: 8,000000 MHz
Program type: Application
Memory model: Small
Optimize for: Size
(s)printf features: int
(s)scanf features: int, width
Promote 'char' to 'int': Yes
'char' is unsigned: Yes
global 'const' stored in FLASH: Yes
8 bit enums: Yes
Enhanced core instructions: Yes
Automatic register allocation: Yes
Smart register allocation: Yes

Build: 1257
12039 line(s) compiled
No errors
No warnings

Bit variables area: 2h to 2h
Bit variables size: 1 byte(s)

Data Stack area: 60h to BFh
Data Stack size: 96 byte(s)
Estimated Data Stack usage: 79 byte(s)

RAM Global variables area: C0h to 43Fh
RAM Global variables size: 896 byte(s)

Hardware Stack area: 440h to 45Fh
Hardware Stack size: 32 byte(s)

Heap size: 0 byte(s)

EEPROM usage: 24 byte(s), 4,7% of EEPROM
Program size: 3989 words (7978 bytes), 97,4% of FLASH
С уважением Сергей.
Реклама:
sergx1300 вне форума  
Непрочитано 18.06.2013, 23:52   #2
oleg110592
Гражданин KAZUS.RU
 
Регистрация: 05.04.2009
Сообщений: 973
Сказал спасибо: 35
Сказали Спасибо 154 раз(а) в 133 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

У вас там RAM под завязку 896+96+32=1024, а еще битовая переменная. Надо - или другой микроконтроллер, где рамы побольше (например стм32, мега64 подороже будет), или сменить компилятор на винавр - он с памятью бережнее обходится. Ну или внимательно посмотреть на код, чего так много рамы израсходовано - буфер такой большой что ли.
oleg110592 вне форума  
Непрочитано 19.06.2013, 00:38   #3
sergx1300
Прописка
 
Аватар для sergx1300
 
Регистрация: 18.03.2010
Адрес: Украина, Тернополь
Сообщений: 225
Сказал спасибо: 14
Сказали Спасибо 44 раз(а) в 34 сообщении(ях)
sergx1300 на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

768 байт под лсд нокиа 1202 + гдето два десятка unsigned int.
sergx1300 вне форума  
Непрочитано 19.06.2013, 00:45   #4
_Артём_
Гражданин KAZUS.RU
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

Сообщение от sergx1300 Посмотреть сообщение
768 байт под лсд нокиа 1202 + гдето два десятка unsigned int.
Сократить нельзя? Или там байт целиком на пиксель требуется?
_Артём_ вне форума  
Непрочитано 19.06.2013, 08:07   #5
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,992
Сказал спасибо: 929
Сказали Спасибо 2,259 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

Сообщение от sergx1300 Посмотреть сообщение
768 байт под лсд нокиа 1202
Это видео-буфер ? Или же вы тупите, разместив знакогенератор в RAM ????
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 19.06.2013, 11:13   #6
oleg110592
Гражданин KAZUS.RU
 
Регистрация: 05.04.2009
Сообщений: 973
Сказал спасибо: 35
Сказали Спасибо 154 раз(а) в 133 сообщении(ях)
oleg110592 на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

Там и FLASH под завязку. Глянул краем глаза на примеры для такого дисплея - столько рам вроде и не надо, шрифты, как сказано выше в const. Придется перейти на мегу168 например, лучше стм32: http://tuxotronic.org/wiki/component...te2007#primery
oleg110592 вне форума  
Непрочитано 19.06.2013, 11:45   #7
AlexPi
Прописка
 
Регистрация: 14.09.2010
Сообщений: 105
Сказал спасибо: 9
Сказали Спасибо 15 раз(а) в 11 сообщении(ях)
AlexPi на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

Сообщение от sergx1300 Посмотреть сообщение
Кто знает сколько приблизительно нужно Hardware Stack size в CodeVisionAVR для контроллеров AVR.
Добрый день!
Для того чтобы прикинуть объем стека в CV для Вашей конкретно задачи, можете воспользоваться опцией Stack End Markers.
Сам я правда ею не пользовался но такие рекомендации встречал.
AlexPi вне форума  
Сказали "Спасибо" AlexPi
sergx1300 (19.06.2013)
Непрочитано 19.06.2013, 12:07   #8
AlexPi
Прописка
 
Регистрация: 14.09.2010
Сообщений: 105
Сказал спасибо: 9
Сказали Спасибо 15 раз(а) в 11 сообщении(ях)
AlexPi на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

Еще один совет автору.
Там у Вас
Heap size: 0 byte(s)
Т.е. кучи нет значит нет динамического выделения памяти под локальные переменные. Возможно выделение небольшого объема даст общую экономию RAM но не факт, надо пробовать. Правда при этом упадет скорость.
AlexPi вне форума  
Непрочитано 19.06.2013, 22:49   #9
sergx1300
Прописка
 
Аватар для sergx1300
 
Регистрация: 18.03.2010
Адрес: Украина, Тернополь
Сообщений: 225
Сказал спасибо: 14
Сказали Спасибо 44 раз(а) в 34 сообщении(ях)
sergx1300 на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

Сообщение от dosikus Посмотреть сообщение
Это видео-буфер ? Или же вы тупите, разместив знакогенератор в RAM ????
Ето видеобуфер. Знакогенератор отдельно в flash
flash char table[0x00D2]
sergx1300 вне форума  
Непрочитано 19.06.2013, 23:11   #10
sergx1300
Прописка
 
Аватар для sergx1300
 
Регистрация: 18.03.2010
Адрес: Украина, Тернополь
Сообщений: 225
Сказал спасибо: 14
Сказали Спасибо 44 раз(а) в 34 сообщении(ях)
sergx1300 на пути к лучшему
По умолчанию Re: CodeVisionAVR Размер Hardware Stack size

Сообщение от _Артём_ Посмотреть сообщение
Сократить нельзя? Или там байт целиком на пиксель требуется?
разрешение экрана 96x64
sergx1300 вне форума  
Закрытая тема

Закладки


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книги dosikus Делимся опытом 11242 29.12.2015 23:45
Резервирование RSTACK для AVRMega Aeore AVR 1 02.06.2013 12:21
Отрицательный размер page size в HIDBootFlash Сергей_Ковалев Микроконтроллеры, АЦП, память и т.д 0 22.08.2012 09:19
Как изменить адрес подпрограммы обработки прерывания? Godzilla82 Микроконтроллеры, АЦП, память и т.д 21 23.08.2010 09:52
Структура приложения? Djakovskij Микроконтроллеры, АЦП, память и т.д 13 17.04.2010 02:45


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


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