30.04.2012, 16:14
|
|
Почётный гражданин KAZUS.RU
Регистрация: 26.11.2011
Адрес: Анапа
Сообщений: 1,620
Сказал спасибо: 284
Сказали Спасибо 129 раз(а) в 111 сообщении(ях)
|
Re: Proteus общие вопросы
Прошу прощения, выключать катоды надо первым делом..
|
|
|
|
02.05.2012, 12:27
|
|
Временная регистрация
Регистрация: 16.04.2012
Сообщений: 75
Сказал спасибо: 20
Сказали Спасибо 1 раз в 1 сообщении
|
Re: Proteus общие вопросы
Дайте пожалуйста АЦП с параллельным выходом, или посмотрите мое творение(радотает но вылетает сообщение с желтыми!).
Я тут подумал может в протеусе такие есть?
|
|
|
|
03.05.2012, 09:01
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
Re: Proteus общие вопросы
Сообщение от Роман Ефимов
|
Дайте пожалуйста АЦП с параллельным выходом, или посмотрите мое творение(радотает но вылетает сообщение с желтыми!).
Я тут подумал может в протеусе такие есть?
|
Без комментариев... Тем более, смотреть не на что, "творение" отсутствует.
|
|
|
Сказали "Спасибо" Halex07
|
|
|
04.05.2012, 15:32
|
|
Прописка
Регистрация: 04.08.2006
Сообщений: 139
Сказал спасибо: 12
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
|
Re: Proteus общие вопросы
Помогите, пожалуйста, разобраться с вопросом (во вложенном файле проект на CodeVision и Proteus).
Введены два прерывания - int0 и int1. Когда программа заходит в прерывание, напряжения в это время на ножках int0 и int1 часто разные. Складывается такое ощущение, что "ноль" каждый раз контроллером понимается по-разному. В моем случае напряжение, при котором возникает прерывание достаточно колеблется - я ставил брэйкпоинты в обоих прерываниях в Proteus и смотрел напряжения хотя бы пол-секунды. Но ведь, как я понимаю, напряжения должны быть, пусть не одинаковые, но достаточно близкие?
Где я ошибаюсь? Или же это вопрос в Proteus? Или в CodeVision?
Последний раз редактировалось hubble; 04.05.2012 в 15:36.
|
|
|
|
04.05.2012, 16:05
|
|
Гражданин KAZUS.RU
Регистрация: 13.06.2005
Адрес: РК г.Павлодар
Сообщений: 866
Сказал спасибо: 99
Сказали Спасибо 216 раз(а) в 140 сообщении(ях)
|
Re: Proteus общие вопросы
Сообщение от hubble
|
Помогите, пожалуйста, разобраться с вопросом (во вложенном файле проект на CodeVision и Proteus).
Введены два прерывания - int0 и int1. Когда программа заходит в прерывание, напряжения в это время на ножках int0 и int1 часто разные. Складывается такое ощущение, что "ноль" каждый раз контроллером понимается по-разному. В моем случае напряжение, при котором возникает прерывание достаточно колеблется - я ставил брэйкпоинты в обоих прерываниях в Proteus и смотрел напряжения хотя бы пол-секунды. Но ведь, как я понимаю, напряжения должны быть, пусть не одинаковые, но достаточно близкие?
Где я ошибаюсь? Или же это вопрос в Proteus? Или в CodeVision?
|
Это почему они должны быть одинаковыми? Они в противофазе.
И если вы хотите ловить фазу, прерывания должны быть по спаду, а не по уровню.
__________________
Не ошибается лишь тот, кто ни чего не делает!
Последний раз редактировалось woroba; 04.05.2012 в 16:09.
|
|
|
|
04.05.2012, 16:20
|
|
Прописка
Регистрация: 04.08.2006
Сообщений: 139
Сказал спасибо: 12
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
|
Re: Proteus общие вопросы
Да то, что они в противофазе - понятно. Но они и через раз выдают разные значения. И когда по спаду - то же.
И даже если использовать только любое одно прерывание. И так же по спаду.
Это у меня в примере по низкому уровню. А так пробовал и по спаду.
Последний раз редактировалось hubble; 04.05.2012 в 16:24.
|
|
|
|
05.05.2012, 13:13
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
Re: Proteus общие вопросы
Сообщение от hubble
|
Где я ошибаюсь? Или же это вопрос в Proteus?
|
Вопрос в непонимании Proteus..., как впрочем и в непонимании всего процесса тоже.
Начнем с того, что вы подаете аналоговые полуволны на цифровые входы и ловите 0, но какой? Не 0.000V аналоговый, а уровень лог. 0 для цифрового входа МК AVR, а он согласно ITFMOD.MDF для AVR равен VTL=0.8(+/-)VHL=0.2, т.е. уже имеет диапазон от 0.6 до 1.0V. Вот в этом диапазоне и будут "наблюдаться" прерывания по INT. Но это в идеале! Теперь, примем к сведению, что частота исследуемых полуволн 50Гц, а тактовая частота MK 8МГц. Вся программа - три элементарных NOP-а, которые занимают 375 наносек, ну плюс там еще если вход/выход в прерывание и в нем самом один NOP, все равно не больше микросекунды, а спад (от 1 до 0.6V) - тот самый Falling Edge, по которому вы хотите войти в прерывание длится около 300 микросек (картинка 1). За это время МК может несколько раз "не торопясь прогуляться" в прерывание. Ну и наконец третий фактор, самый основной, - анимация. Распинался я по этому поводу в FAQ, да видно зря. У вас она стоит по умолчанию, т.е. 1 кадр занимает 50 мсек, в то время как один полупериод по вашему же графику - 10мсек. В один полный кадр анимации попадают то три то два полупериода синусоиды, плюс к тому постепенно накапливается разброс по тактам МК и аналогового сигнала. Да еще и в самом симуляторе для SPICE стоят Default Setting, тоже дают разброс в вычислениях. Так что более менее одинаковых цифирь на пробниках в Real Time можно добиться только если все эти факторы свести к минимуму. А в остальном все работает как надо. Вот, для примера, я слегка "модернизировал" ваш проект, вывел на PB0 по INT0, а на PB1 соответственно по INT1 и еще для графика задал в SPICE Options установку Settings for Better Accuracy. Что получилось для графика INT0 на второй картинке. Как видите, "все в пределах правил", как говорят спортивные телекомментаторы.
|
|
|
Сказали "Спасибо" Halex07
|
|
|
05.05.2012, 13:20
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.02.2012
Сообщений: 5,803
Сказал спасибо: 827
Сказали Спасибо 2,080 раз(а) в 1,492 сообщении(ях)
|
Re: Proteus общие вопросы
пробовал переслать свой проект . ну что не получилось. действовал по вашей инструкции. А проект такой мик- ма 8038 генератор синуса . двуполяр. импул.и треуг.
пока стоит в схеме осц. время инд. отображаеться в реале. как только добавляю
частотомер . а может огрызок от него.. все затормаживается. FAO читаю только тогда
когда что то непосредственно нужно . на данное устр. а изучать инструкцию по протэусу как уст. элл. базу. или как удалить или раскрашивать линии то ребята советую вам сначало выбрать программу для начинающих.
теперь по по повуду тыка . конечно сказано неправильно мной. это не тык а эксперимент.
У меня примерно так. Я Повторяюсь что я радилюбитель. давно уже оташел от проффесии радиоинженера.
какая то схема меня заинтересовала .начинаю ее прикладывать либо в протэус
или в мультисим. ( что есть в мультисиме нет в протэусе и наоборот)
вот когда нарисовал схему в одной из выше упомянутых прог. и начинаеш схему подгонять под
свои параметры вот тут-то и начинается ГЛАВНОЕ где то разочарование ну а если все получилось то--------. и т д
Последний раз редактировалось цифровик; 05.05.2012 в 17:47.
|
|
|
|
11.05.2012, 09:08
|
|
Временная регистрация
Регистрация: 16.04.2012
Сообщений: 75
Сказал спасибо: 20
Сказали Спасибо 1 раз в 1 сообщении
|
Re: Proteus общие вопросы
Посмотрите мое очередное нерабочее творение, что не так?
Скажу сразу FAQ читал и сообщение лично для нетерпиливых тоже видел, думал пройдёт, а фокус не удался
|
|
|
|
11.05.2012, 13:13
|
|
Супер-модератор
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
|
Re: Proteus общие вопросы
Сообщение от Роман Ефимов
|
Посмотрите мое очередное нерабочее творение, что не так?
|
А где оно творение? Че это за набор графических элементов типа конструктор "Сделай Сам"?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 13:14.
|
|