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

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

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

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

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

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

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 06.02.2012, 00:22  
_Артём_
Гражданин KAZUS.RU
 
Регистрация: 16.03.2011
Сообщений: 486
Сказал спасибо: 8
Сказали Спасибо 131 раз(а) в 116 сообщении(ях)
_Артём_ на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от roma9112 Посмотреть сообщение
но такое ощущение, что и сама AVRStudio тоже вся засыпает. Пытаюсь в окошке портов нажать кнопку на PIND.2, там и вход INT0, а Студия даже не дает этого сделать, блин! Может Студия гребет, а может еще что-то не так...
Возможно симулятор находится в режиме Running. тогда - нажать Break и т.д.
Если нет то нужно смотреть с Help-е нет ли ограничений в симулировании режима sleep.
Можно ещё запустить таймер/разрешить прерывание от него, уйти в sleep.
Из Idle mode прерывание таймера будит программу (проверял на Simulator 2/xmega256A3).
Реклама:
_Артём_ вне форума  
Непрочитано 06.02.2012, 07:59  
roma9112
Гражданин KAZUS.RU
 
Регистрация: 25.11.2008
Адрес: Волгоград
Сообщений: 507
Сказал спасибо: 42
Сказали Спасибо 49 раз(а) в 46 сообщении(ях)
roma9112 на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от _Артём_ Посмотреть сообщение
Возможно симулятор находится в режиме Running. тогда - нажать Break и т.д.
Если нет то нужно смотреть с Help-е нет ли ограничений в симулировании режима sleep.
Можно ещё запустить таймер/разрешить прерывание от него, уйти в sleep.
Из Idle mode прерывание таймера будит программу (проверял на Simulator 2/xmega256A3).
Симуляцию прохожу пошагово, спасибо за совет, попробую вместо стендбай режим идл с таймером, посмотрю как Студия отработает, и иду хелп смотреть... Потому как очень интересные эти режимы сна, надо их победить.
roma9112 вне форума  
Непрочитано 19.02.2012, 22:09  
DAVE_ELEKTRIK
Прописка
 
Аватар для DAVE_ELEKTRIK
 
Регистрация: 18.10.2010
Адрес: Planet Earth )
Сообщений: 120
Сказал спасибо: 14
Сказали Спасибо 11 раз(а) в 11 сообщении(ях)
DAVE_ELEKTRIK на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Цитата:
ps Свободно распоряжаться стек-поинтером можно в том случае, если вам известен базовый алгоритм программы и вы уверены на 100% в отсутствии вложенных прерываний. Пока рекомендую эту тему не рассматривать. Повторяю, лучше по порядку.
Я вот все думал на эту тему, рассматривал готовый исходник взятый из нета. Вроде бы программка не сложная. Но принцип перехода на метку main из обработки прерывания от INT0 в AVRстудии так и не понял, даже не увидел. Хочется подсказки, я где то рядом с ответом, но...
Вложения:
Тип файла: zip проба.zip (18.2 Кб, 42 просмотров)
__________________
Мозги кипят, ядрить твою валентность!!! Пойду закладывать остальные ингредиенты...
DAVE_ELEKTRIK вне форума  
Непрочитано 20.02.2012, 20:10  
pinco
Гражданин KAZUS.RU
 
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
pinco на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от DAVE_ELEKTRIK Посмотреть сообщение
Я вот все думал на эту тему, рассматривал готовый исходник взятый из нета. Вроде бы программка не сложная. Но принцип перехода на метку main из обработки прерывания от INT0 в AVRстудии так и не понял, даже не увидел. Хочется подсказки, я где то рядом с ответом, но...
Принцип перехода такой же как и был всегда - по окончании работы подпрограммы возвращаемся в этот самый MAIN по команде ret, так что тут все как обычно .Сама MAIN там у тебя такая коротенькая что кажется что не возврат туда идет а просто переход - это две большие разницы - так что проследи поточнее .Еще как вариант - если где-то там у тебя обычный простой переход без ret в MAIN идет , просто прямо из подпрограммы через rjmp - значит в какой-то подпрограмме забыли ret команду в конце подпрограммы дописать или до нее просто не доходит прога ,а вообще же переход сразу в MAIN из подпрограммы через rjmp - это обычно ошибка , значит надо ее отловить и исправить на как полагается (хотя специальные случаи именно такого возврата - это для профи, и тоже может работать, здесь не рассматриваю) .
__________________
Короче асма кода нет !

Последний раз редактировалось pinco; 20.02.2012 в 20:13.
pinco вне форума  
Непрочитано 05.03.2012, 08:56  
DAVE_ELEKTRIK
Прописка
 
Аватар для DAVE_ELEKTRIK
 
Регистрация: 18.10.2010
Адрес: Planet Earth )
Сообщений: 120
Сказал спасибо: 14
Сказали Спасибо 11 раз(а) в 11 сообщении(ях)
DAVE_ELEKTRIK на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Доброго дня. Вот на выходных просидел изучая приколы со стеком. Наткнулся на такую вот особенность, что при сбросе REST или (shift+F5) (в симуляторе AVRStudio4) конец памяти ОЗУ не сбрасывается. Только при перезагрузке полностью программы. Думал думал, не понял. Пришлось в инициализацию добавлять процедуру зануления ОЗУ и регистров.
Интересно почему в симуляции не сбрасывается ОЗУ?
Вложения:
Тип файла: zip stek.zip (7.4 Кб, 39 просмотров)
__________________
Мозги кипят, ядрить твою валентность!!! Пойду закладывать остальные ингредиенты...
DAVE_ELEKTRIK вне форума  
Непрочитано 05.03.2012, 09:16  
alvadep
Почётный гражданин KAZUS.RU
 
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
alvadep на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от DAVE_ELEKTRIK Посмотреть сообщение
Интересно почему в симуляции не сбрасывается ОЗУ?
В реальном процессоре ОЗУ то же не обнуляется по RESETу.
А симулятор вроде, как и предназначен для программного моделирования работы процессора.
alvadep вне форума  
Непрочитано 05.03.2012, 09:23  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,549
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от DAVE_ELEKTRIK Посмотреть сообщение
Интересно почему в симуляции не сбрасывается ОЗУ?
Потому что в реальном контроллере ОЗУ само не инициализируется, и может быть заполнено мусором. Установка начальных значений это забота программиста или компилятора.

Сообщение от DAVE_ELEKTRIK Посмотреть сообщение
Только при перезагрузке полностью программы.
Это скорее недочет, по запуску кристалла в ОЗУ однозначно ничего хорошего нету.

Последний раз редактировалось AJScorp; 05.03.2012 в 09:25.
AJScorp вне форума  
Непрочитано 05.03.2012, 13:38  
pinco
Гражданин KAZUS.RU
 
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
pinco на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от AJScorp Посмотреть сообщение
Потому что в реальном контроллере ОЗУ само не инициализируется, и может быть заполнено мусором. Установка начальных значений это забота программиста или компилятора.


Это скорее недочет, по запуску кристалла в ОЗУ однозначно ничего хорошего нету.
Я лично это недочетом не считаю потому что ОЗУ это как раз и есть место для временного хранения любых разных величин и оно сразу при включении уже само аппаратно уже готово к забивке - это не какой-то там узел контроллера который требует регистров установочных для его конфигурации и прочего, и забивать в него - в ОЗУ - можно всего что угодно душе программиста ,и это его дело - как уже было выше сказано , - и инициализировать его не нужно , поэтому оно и ОЗУ называется (или SRAM в кристалле, если так понятнее почему его не нужно инициализировать) - как включил контроллер то тут же и можно сразу забивать туда все что хочешь, то есть сразу использовать ОЗУ, даже уже в ходе самой начальной инициализации контроллера . В симуляторе все забивки в ОЗУ по ходу программы должны быть отрабатываться и забивки должны отображаться в соответствующих окошках.

По ресету от кристалла делать обнуление ОЗУ аппаратно автоматом нет смысла потому как все равно потом же сам контроллер в ячейки ОЗУ будет забивать все заново свежие данные и так ,по ходу проги, и получается что незачем тогда вначале после ресета на это бесполезное действие (начальное обнуление ОЗУ то есть) специально тратить такты, аппаратные ресурсы кристалла, и прочее , а поэтому производители кристаллов контроллеров этого делать просто не стали, и в симуляторе - соответственно в точности как поведение самого кристалла - этого тоже не сделано .
__________________
Короче асма кода нет !

Последний раз редактировалось pinco; 05.03.2012 в 17:13.
pinco вне форума  
Непрочитано 05.03.2012, 15:12  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,549
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от pinco Посмотреть сообщение
Я лично это недочетом не считаю потому что ОЗУ это как раз и есть место для временного хранения любых разных величин
Моя фраза по поводу недочета относилась к симулятору.
AJScorp вне форума  
Непрочитано 05.03.2012, 16:59  
pinco
Гражданин KAZUS.RU
 
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
pinco на пути к лучшему
По умолчанию Re: Помогите начинающему по ATmega8515

Сообщение от AJScorp Посмотреть сообщение
Моя фраза по поводу недочета относилась к симулятору.
Так и мой пост выше весь в общем тоже был про симулятор , но только с обяснением из аппаратного построения контроллера (частично конечно) почему и откуда что взялось в симуляторе , а так как симулятор должен копировать точно работу контроллера (выше уже кто-то говорил об этом) ,то и нельзя говорить что это недочет симулятора, - наоборот очень даже точная работа , а отдельно делать сброс ОЗУ в симуляторе когда этого нет в реальном процессоре - ну это был бы уже совсем нонсенс , потому как работа железа уже тогда не симулировалась бы точно так , как это есть на самом деле , и тогда грош цена была бы такому симулятору.
__________________
Короче асма кода нет !

Последний раз редактировалось pinco; 05.03.2012 в 17:05.
pinco вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите начинающему (PIC16F84A). Slava-martyn Микроконтроллеры, АЦП, память и т.д 11 09.09.2010 21:55
помогите начинающему по WinAVR umkamaks Микроконтроллеры, АЦП, память и т.д 4 05.05.2010 21:01
Помогите начинающему! kolira Микроконтроллеры, АЦП, память и т.д 6 30.01.2010 15:22
Помогите советом начинающему eler Делимся опытом 64 11.09.2008 17:28
Помогите начинающему!!!! sma-etu Микроконтроллеры, АЦП, память и т.д 2 13.12.2006 18:31


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


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