| Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
Архитектуре контроллера AT90S8515
19.05.2011, 08:11
|
|
|
Прописка
Регистрация: 18.10.2010
Адрес: Planet Earth )
Сообщений: 120
Сказал спасибо: 14
Сказали Спасибо 11 раз(а) в 11 сообщении(ях)
|
Архитектуре контроллера AT90S8515
Доброго времени суток уважаемы народ. Обращаюсь к вам с помощью разобраться как это работает? А именно -
Месяц назад увлекся сильно МК, начал изучать ассемблер для AVR. Составлял разные простенькие программки с светодиодами, с кнопками все получалось пока не дошел до темы прерывания. Так вот, кнопочку я подсоединил к выводу INT0, пробовал составлять программки, но до конца не понимаю работу прерывания по входу INT0. Может у кого есть рисунки структурной схемы принципа работы (INT0, INT1) AT90S8515? Если кто видел в гугле, просьба дать ссылочку.
Заранее благодарен!
__________________
Мозги кипят, ядрить твою валентность!!! Пойду закладывать остальные ингредиенты...
|
|
|
|
Сказали "Спасибо" DAVE_ELEKTRIK
|
|
|
19.05.2011, 08:26
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,613
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Архитектуре контроллера AT90S8515
|
|
|
|
19.05.2011, 10:30
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
|
Re: Архитектуре контроллера AT90S8515
Что именно не работает? Включить глобальное разрешение прерываний, включить и настроить прерывание от ИНТ, сидеть и ждать когда проц запрыгнет в прерывание
|
|
|
|
19.05.2011, 19:42
|
|
|
Прописка
Регистрация: 18.10.2010
Адрес: Planet Earth )
Сообщений: 120
Сказал спасибо: 14
Сказали Спасибо 11 раз(а) в 11 сообщении(ях)
|
Архитектуре контроллера AT90S8515
Конечно же пробовал!!! Так вот если посмотреть на странице 75, если я не ошибаюсь, то вижу блок (sense control) у него есть три входа и один выход. Что это за два входа - ISCm1 и ISCm0 и выход INTm, описание далее про них я не увидел, или я наверное невнимательно смотрел  Понять архитектуру я не смог! Вот за это, я и имел ввиду!
|
Цитата:
|
|
niXto: Что именно не работает? Включить глобальное разрешение прерываний, включить и настроить прерывание от ИНТ, сидеть и ждать когда проц запрыгнет в прерывание
|
Рассматривал написанные программки прерывания (на диске из книжек) и из интереса наткнулся для себя не понятное. Так вот вопрос
- в метке reset
|
Цитата:
|
ldi R16,low(RAMEND) ;Вершина стека
out SPL,R16
|
как бы значение заданно, а
в другом другом блоке этой же программы, где расписана программа прерываний EXT_INTO
|
Цитата:
|
ldi R25,221 ;меняем указатель стэка для выхода на Main
;после обработки прерывания
out SPL,R25
|
Вот тут я не понял? Для чего это, что это за число 221, и как понять для выхода на метку main? Можно как то ответить на мой вопрос или он не корректно задан? Да забыл сказать МК AT90S2313.
__________________
Мозги кипят, ядрить твою валентность!!! Пойду закладывать остальные ингредиенты...
|
|
|
|
Сказали "Спасибо" DAVE_ELEKTRIK
|
|
|
19.05.2011, 22:19
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,613
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Архитектуре контроллера AT90S8515
Сообщение от DAVE_ELEKTRIK
|
Конечно же пробовал!!! Так вот если посмотреть на странице 75, если я не ошибаюсь, то вижу блок (sense control) у него есть три входа и один выход. Что это за два входа - ISCm1 и ISCm0 и выход INTm, описание далее про них я не увидел, или я наверное невнимательно смотрел Понять архитектуру я не смог! Вот за это, я и имел ввиду!
|
"За это" можно прочитать на стр. 29 - 30. Там полная информация.
|
Цитата:
|
Рассматривал написанные программки прерывания (на диске из книжек) и из интереса наткнулся для себя не понятное. Так вот вопрос
- в метке reset
как бы значение заданно, а
в другом другом блоке этой же программы, где расписана программа прерываний EXT_INTO
Вот тут я не понял? Для чего это, что это за число 221, и как понять для выхода на метку main? Можно как то ответить на мой вопрос или он не корректно задан? Да забыл сказать МК AT90S2313.
|
Вы несколько непоследовательны. Начинали с другого типа МК. Впрочем, на этом уровне вам все равно..
Рассматривать отдельные команды программы вне контекста самой программы трудно. Касаться нестандартного выхода из обработчика (именно такой фрагмент приведен вами в последнем вопросе) вам пока не надо. Поищите пример с самым обычным обработчиком и типовыми решениями. Сдвигать верхушку стека вам еще рановато.
|
|
|
|
20.05.2011, 05:54
|
|
|
Прописка
Регистрация: 18.10.2010
Адрес: Planet Earth )
Сообщений: 120
Сказал спасибо: 14
Сказали Спасибо 11 раз(а) в 11 сообщении(ях)
|
Архитектуре контроллера AT90S8515
Сообщение от ut1wpr
|
Вы несколько непоследовательны. Начинали с другого типа МК. Впрочем, на этом уровне вам все равно..
Рассматривать отдельные команды программы вне контекста самой программы трудно. Касаться нестандартного выхода из обработчика (именно такой фрагмент приведен вами в последнем вопросе) вам пока не надо. Поищите пример с самым обычным обработчиком и типовыми решениями. Сдвигать верхушку стека вам еще рановато.
|
Программы (команды) для МК классик, подходят почти ко всем МК классик, с небольшими изменениями.
Я придерживаюсь одного контроллера классик 8515, так как он в наличии, я могу собрать схемку и проверить. Хотя протеус тоже стоит, пользуюсь!
Про мой уровень я чета не понял?
|
Цитата:
|
|
вам пока не надо. Сдвигать верхушку стека вам еще рановато.
|
Почему? Рано или поздно, всеровно придется. Если есть знания нестандартного выхода из обработчика, не сезжайте с разговора, рассказали бы! Форум - не для выпендрежников!
Мдааа...!? Сбили с толку! Хотя если не пообщаться, то отупеть можно, а так разгрузка! Спасибо!
|
Цитата:
|
|
"За это" можно прочитать на стр. 29 - 30. Там полная информация.
|
MCU Control Register - MCUCR на станице 21
Страничка 29-30 это ШИМ!
Помоему начал врубаться мозг
__________________
Мозги кипят, ядрить твою валентность!!! Пойду закладывать остальные ингредиенты...
Последний раз редактировалось DAVE_ELEKTRIK; 20.05.2011 в 06:16.
|
|
|
|
Сказали "Спасибо" DAVE_ELEKTRIK
|
|
|
20.05.2011, 08:05
|
|
|
Временная регистрация
Регистрация: 08.10.2010
Сообщений: 68
Сказал спасибо: 4
Сказали Спасибо 12 раз(а) в 9 сообщении(ях)
|
Re: Архитектуре контроллера AT90S8515
Так понимаю, что непонятно что такое прерывание и с чем его едят? На самом деле все очень просто. В каждый так резонатора выполняеться команда МК (может несколько тактов). После выполнения команды в основной программе, программа передаеться первому прерыванию (процедуре), затем второму и т.д. Это как бы одновременное выполнение нескольких программ. В коде это выглядит как отдельные процедуры. А результат можно выдавать на любую ногу МК. И каждая из них может менять содержимое регистров, флагов. В асме запутаться очень легко и заработать непонятные глюки. Перед заходом в прерывания нужно сохранять содержимое флагов, регистров, при выходе - восстанавливать. Си это все сам отслеживает. Вроде понятно объяснил?
Последний раз редактировалось Alpet75; 20.05.2011 в 08:08.
|
|
|
|
Сказали "Спасибо" Alpet75
|
|
|
20.05.2011, 11:37
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,613
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Архитектуре контроллера AT90S8515
Сообщение от DAVE_ELEKTRIK
|
|
Программы (команды) для МК классик, подходят почти ко всем МК классик, с небольшими изменениями.
|
С разным расположением страниц на даташитах  . Отсюда и разночтения. В документе по моей ссылке таки стр. 29-30
|
Цитата:
|
|
Почему? Рано или поздно, всеровно придется. Если есть знания нестандартного выхода из обработчика, не сезжайте с разговора, рассказали бы! Форум - не для выпендрежников!
|
Ну не надо. Я ж не наклеивал ярлыков. Знания по нестандартным выходам есть, но, повторяю, должна быть определенная последовательность в изучении предмета. Сформировали базовую платформу, пошли дальше, к надстройкам... Не стоит начинать с надстроек.
|
Цитата:
|
|
Мдааа...!? Сбили с толку! Хотя если не пообщаться, то отупеть можно, а так разгрузка! Спасибо!
|
По моей ссылке стр. 75 Figure 55:
Кубик SENCE CONTROL имеет один вход, вызывающий формирование прерывания INTm (m=0,1) по пину PDn (PDn=2,3). Два дополнительных входа ISCm0 и ISCm1 (m=0,1) определяют условия возникновения прерывания (фронт, спад, низкий уровень - см. таблицу состояния битов Interrupt Sence Control в описании того же MCUCR).
|
Цитата:
|
Помоему начал врубаться мозг
|
+5! 
ps Свободно распоряжаться стек-поинтером можно в том случае, если вам известен базовый алгоритм программы и вы уверены на 100% в отсутствии вложенных прерываний. Пока рекомендую эту тему не рассматривать. Повторяю, лучше по порядку.
|
|
|
|
21.05.2011, 02:51
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 18.06.2006
Адрес: Литва
Сообщений: 2,329
Сказал спасибо: 1,640
Сказали Спасибо 2,017 раз(а) в 692 сообщении(ях)
|
Re: Архитектуре контроллера AT90S8515
Сообщение от ut1wpr
|
Сформировали базовую платформу, пошли дальше, к надстройкам... Не стоит начинать с надстроек.
...
Повторяю, лучше по порядку.
|
+5. 
Тоже заметил тенденцию начинающих, освоить все и сразу.
В итоге путаются сплошь и рядом, т.к. в голове мешанина.
Я в другой теме - "Таймеры CY7C68013A" почти на пальцах раскрыл тему прерываний, чтобы было понятно, но автора темы унесло туда, куда вообще он смотреть не должен был, хотя его упорство мне нравится.
Последний раз редактировалось trampampusha; 21.05.2011 в 03:02.
|
|
|
|
Сказали "Спасибо" trampampusha
|
|
|
21.05.2011, 03:06
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 28.02.2010
Сообщений: 2,294
Сказал спасибо: 52
Сказали Спасибо 460 раз(а) в 391 сообщении(ях)
|
Re: Архитектуре контроллера AT90S8515
у Вас мозг вырубится ещё раз , когда Вы с портом PA поработаете (он от 89 наследство)
|
|
|
|
Сказали "Спасибо" OlegNZH
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 18:58.
|
|