01.10.2006, 09:58
|
|
Частый гость
Регистрация: 26.02.2006
Сообщений: 45
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Аналоговый компаратор Mega 8 в Proteus
Возникли проблемы с симуляцией АС (Мега 8 ) в Протеусе. В отладчике Алгоритм Билдера (уж не обессудьте!) прога ведет себя как надо, а при симуляции схема + прога в Протеусе прерывание по АС не срабатывает.
АС настроен на работу от внутреннего опорника (1,2 V), внешний аналоговый сигнал подается на PD7.
Напряжение на PD7 подается с выхода интегратора на ОУ (нарастающая пила, от нуля, до максимума) через делитель (подстроечный резистор - установка уровня срабатывания АС).
В чем могут быть проблемы?
|
|
|
|
02.10.2006, 15:19
|
|
Частый гость
Регистрация: 26.02.2006
Сообщений: 45
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Что, ни у кого никаких соображений по этому поводу?
Кстати, а как в Протеусе пошагово работу камня смотреть? Мо-быть у меня именно из-за этого (включен пошаговый режим) и не работает ничего?
|
|
|
|
02.10.2006, 20:01
|
|
Вид на жительство
Регистрация: 23.04.2006
Сообщений: 308
Сказал спасибо: 14
Сказали Спасибо 13 раз(а) в 12 сообщении(ях)
|
Цитата:
|
...через делитель (подстроечный резистор - установка уровня срабатывания АС).
|
Возникал ранее подобный вопрос и обсуждался в теме про глюки Протеуса. Протеус не мог имитировать уход в прерывание по уровню, если этот уровень не стартует с 0 В. Хотя по схемотехнике входа (триггер Шмитта) понятно, что это совсем необязательно. Проверено в железе, что прерывание реально срабатывает если напряжение растёт с любой начальной величины в диапазоне от 0 - 2,2 В до достижения уровня переключения 2,5 В. Протеус об этом не догадывется..
Так что именно этот режим придётся отрабатывать на макете.
Удачи!
|
|
|
|
06.10.2006, 07:17
|
|
Частый гость
Регистрация: 26.02.2006
Сообщений: 45
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Сообщение от zelanez
|
Возникал ранее подобный вопрос и обсуждался в теме про глюки Протеуса. Протеус не мог имитировать уход в прерывание по уровню, если этот уровень не стартует с 0 В.
...
Так что именно этот режим придётся отрабатывать на макете.
|
То zelanez: Спасибо за ответ! Но при старте программ (и самого Протеуса, и эмулируемой программы) напряжение по определению "стартует с 0 вольт". И это подтверждает сам Протеус своим осциллографом. Если, конечно, можно доверять осциллографу Протеуса.
При включении видно, что напряжение на входе компаратора по экспоненте растет от 0 до максимума, но никакого реагажа при этом нет.
Еще вопрос: не подскажете, можно ли (и как это сделать?) в *hex файл воткнуть метки точек останова? Понял, что это можно сделать в asm-овском файле, но у меня его нет, к сожалению. А перелопачивать почти килобайтный код из-за глюков Протеуса как-то не хочется. Может есть другой выход?
|
|
|
|
06.10.2006, 20:20
|
|
Вид на жительство
Регистрация: 23.04.2006
Сообщений: 308
Сказал спасибо: 14
Сказали Спасибо 13 раз(а) в 12 сообщении(ях)
|
Цитата:
|
При включении видно, что напряжение на входе компаратора по экспоненте растет от 0 до максимума, но никакого реагажа при этом нет.
|
Ну просто для удовлетворения любопытства, сделай пилу крутую, почти меандр...
ИМХО, метки точки останова можно поставить, если имеется source-file. Можно попробовать получить его, дизассемблировав hex... Но мне кажется этот вариант просто извращением.
|
|
|
|
06.10.2006, 22:34
|
|
Частый гость
Регистрация: 26.02.2006
Сообщений: 45
Сказал спасибо: 0
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
|
Задача решена. Оказалось, что Протеус просто не хочет запускать прогу, если на входе проца (внешние прерывания) есть импульсный сигнал. Отключаю его и снова включаю - и всё молотит!
Но с метками останова еще разбираюсь.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 05:12.
|
|