Proteus: вопросы и ответы

Обсуждаем цифровые устройства...
gibiri
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Сб июн 16, 2012 07:20:55

Re: Proteus: вопросы и ответы

Сообщение gibiri »

Chettuser писал(а):"элементы заново не расставлять" - в смысле? :shock: А Вы их уже расставили в ISIS ? :shock:


Engineer_Keen писал(а):Расставлять элементы все равно придется, элементы схемы и элементы платы это не одно и тоже.



Так вот же эта функция tools > auto placer
потом tools > auto router
Последний раз редактировалось gibiri Чт сен 13, 2012 05:44:19, всего редактировалось 1 раз.
Реклама
Chettuser

Re: Proteus: вопросы и ответы

Сообщение Chettuser »

На казусе Halex подробную инструкцию написал, с картинками.
Реклама
Аватара пользователя
ИВАНЫЧ956
Друг Кота
Сообщения: 13330
Зарегистрирован: Сб янв 14, 2012 15:34:13
Откуда: 26RUS

Re: Proteus: вопросы и ответы

Сообщение ИВАНЫЧ956 »

Jack_A писал(а):Если бы ответ да еще без нравоучений, то еще бы большее спасибо.

Серьёзное обвинение. :)) Читаем....
http://kazus.ru/forums/forumdisplay.php ... ne=-1&f=25
http://kazus.ru/forums/showthread.php?t=7842
http://kazus.ru/forums/showthread.php?t=13198
Orion33
Друг Кота
Сообщения: 4753
Зарегистрирован: Сб апр 21, 2012 19:21:43

Re: Proteus: вопросы и ответы

Сообщение Orion33 »

ИВАНЫЧ956 писал(а):http://kazus.ru/forums/showthread.php?t=13198

Собсно, вот оно :) Там в теме еще есть линки на пдфки этой ветки.
Может, модераторам написать про эту тему в первом сообщении крупными буквами? :)
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6307
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: Proteus: вопросы и ответы

Сообщение Jack_A »

Это никак не обвинение - просто досада. Ищещь это самое ководство - и среди тонн мусора ( пример я приводил выше ) теряются те немногие, но толковые материалы. А вот получил прямую конкретную ссылку на Казус - читаю пока часть 1 ( думаю, на ней и остановлюсь :) ) - и тихо радуюсь. Будем пробовать что-нибудь ссимулировать. Не микроконтроллеры, конечно.
Для них у меня есть Студия, паяльник и осцилл
Мерси всем за помощь. Если еще что нужно - заходите. :)
Реклама
Orion33
Друг Кота
Сообщения: 4753
Зарегистрирован: Сб апр 21, 2012 19:21:43

Re: Proteus: вопросы и ответы

Сообщение Orion33 »

Для аналоговой техники лучше Микрокап или как раз таки паяльник и осцилл. Протеус удобен именно в симуляции МК, потому что дает доступ к регистрам и трассировку кода
Реклама
Аватара пользователя
ИВАНЫЧ956
Друг Кота
Сообщения: 13330
Зарегистрирован: Сб янв 14, 2012 15:34:13
Откуда: 26RUS

Re: Proteus: вопросы и ответы

Сообщение ИВАНЫЧ956 »

Orion33 писал(а):Для аналоговой техники лучше Микрокап или как раз таки паяльник и осцилл. Протеус удобен именно в симуляции МК, потому что дает доступ к регистрам и трассировку кода

Чем? Микрокап-ПП...КАК? Прот-Плата. И? Микрокап-Мультисим-Плата..Как? Да. Я маньяк прота. И не понимю этих рисовалок типа печатка в лау или хрен знает в чём а схема в орле.... Я на пенсии от безделья русифицировал прот и мультик.. Сейчас эти проги... "русифицируют" все кому не лень. В проте мне например и на не нужно моделировать и т.д. Я ДЕЛАЮ схему и одним
кликом плату. И до лампочки какая там микруха.... Какой корпус...Где плюс, где минус... Я одним тыком, переходом на схему в ISIS могу это изменить.
Orion33
Друг Кота
Сообщения: 4753
Зарегистрирован: Сб апр 21, 2012 19:21:43

Re: Proteus: вопросы и ответы

Сообщение Orion33 »

В микрокапе больше средств для анализа модели, а в проте - один осцилл. Я делаю модель в МК, потом схему в Пикаде, потом в нем же развожу. Может, когда я выйду на пенсию, мне тоже будет достаточно просто нарисовать схему и протравить плату :)
Аватара пользователя
Vicont
Прорезались зубы
Сообщения: 201
Зарегистрирован: Пт июл 25, 2008 14:09:04
Откуда: Зауралье
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Vicont »

Симулирую в протеусе ATTiny2313.
Хочу задать задержку с помощью цикла:

Код: Выделить всё

Delay:     subi Raz0,1          ; Цикл задержки
           sbci Raz1,0
           sbci Raz2,0
           brcc DelayUP

По уму каждый такой цикл должен проходить ровно за 5 тактов процессора, что позволяет выразить точное время задержки.
НО при симуляции задержка получается ровно в 8 раз дольше чем расчетная. :shock:
С чем это может быть связано?
Аватара пользователя
Murka
Мучитель микросхем
Сообщения: 441
Зарегистрирован: Ср июн 03, 2009 00:20:21
Откуда: Новороссия ЛНР Рубежное -> РФ Калуга
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Murka »

Vicont писал(а):Симулирую в протеусе ATTiny2313.
Хочу задать задержку с помощью цикла:
По уму каждый такой цикл должен проходить ровно за 5 тактов процессора,
А хто тебе сказал что это не 5 тактов?
Vicont писал(а):НО при симуляции задержка получается ровно в 8 раз дольше чем расчетная. :shock:
А длительность такта тебе известна?
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Свободу можно завоевать, можно просрать, но высидеть свободу нельзя! ©
Всё, что меня не убивает - делает большую ошибку!
Не зли меня!!! :wink:
Аватара пользователя
Vicont
Прорезались зубы
Сообщения: 201
Зарегистрирован: Пт июл 25, 2008 14:09:04
Откуда: Зауралье
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Vicont »

Murka писал(а):А длительность такта тебе известна?
Известно. Тактовая частота 4МГц. К примеру нужна задержка 1сек. Число соответсвующее нежному интервалу времени рассчитывается по формуле: N=(1*4000000)/5=800000 -> 0x0C3500.

Код: Выделить всё

          ldi  Raz0,0x00       ; Задаем время задержки 1 сек
          ldi  Raz1,0x35
          ldi  Raz2,0x0C

Delay:    subi Raz0,1          ; Цикл задержки
          sbci Raz1,0
          sbci Raz2,0
          brcc Delay

В симуляторе оно проходит уже за 8сек. Бробовал менять разные такты и разные числа - все равно в 8раз дольше...
А когда задавал задержку через прерывание таймера, время симуляции идеально совпадало с расчетным.
К сожалению в данный момент нет возможности испытать на реальном МК.
Не пойму в чем проблема - в коде или в Шпроте? :dont_know:
Аватара пользователя
Murka
Мучитель микросхем
Сообщения: 441
Зарегистрирован: Ср июн 03, 2009 00:20:21
Откуда: Новороссия ЛНР Рубежное -> РФ Калуга
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Murka »

:shock: М-м-м А AVR Studio что по этому поводу говорит?
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Свободу можно завоевать, можно просрать, но высидеть свободу нельзя! ©
Всё, что меня не убивает - делает большую ошибку!
Не зли меня!!! :wink:
Аватара пользователя
Vicont
Прорезались зубы
Сообщения: 201
Зарегистрирован: Пт июл 25, 2008 14:09:04
Откуда: Зауралье
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Vicont »

Murka писал(а):AVR Studio что по этому поводу говорит?
Не пробовал. Как-то раз запускал, но интерфейс шибко мудреным показался. Шпрот в этом плане по проще...
Аватара пользователя
Murka
Мучитель микросхем
Сообщения: 441
Зарегистрирован: Ср июн 03, 2009 00:20:21
Откуда: Новороссия ЛНР Рубежное -> РФ Калуга
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Murka »

Код: Выделить всё

          ldi  Raz0,0x00       ; Задаем время задержки 1 сек
          ldi  Raz1,0x35
          ldi  Raz2,0x0C
Это загрузка задания в три разных регистра и это как бы понятно.
А вот дальше я чего-то не понимаю

Код: Выделить всё

Delay:    subi Raz0,1        // тут мы  просто вычитаем константу  (число 1) из содержимого Raz0
          sbci Raz1,0        // тут мы вычитая константу вычитаем и перенос КОНСТАНТА 0 (ZERO)
          sbci Raz2,0       // таже фигня
          brcc Delay       // переход на начало если перенос очищен (фигли он будет установлен мы же ноль вычитали)
Последний раз редактировалось Murka Ср сен 19, 2012 00:31:37, всего редактировалось 1 раз.
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Свободу можно завоевать, можно просрать, но высидеть свободу нельзя! ©
Всё, что меня не убивает - делает большую ошибку!
Не зли меня!!! :wink:
Аватара пользователя
Vicont
Прорезались зубы
Сообщения: 201
Зарегистрирован: Пт июл 25, 2008 14:09:04
Откуда: Зауралье
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Vicont »

Да, Вы правильно поняли.
Тут суть в том, что в результате каждой итерации выполняется строго определенное число команд и за строго определенное время: по 1 такту на каждое вычитание + 2такта на переход обратно к началу. Всего 5 тактов.

Собственно давайте рассмотрим это на практике, в самом простом случае с бегущим огнем.
Добавил проект во вложение, попробуйте взглянуть.
Вложения
temp.RAR
(8.2 КБ) 213 скачиваний
Аватара пользователя
Murka
Мучитель микросхем
Сообщения: 441
Зарегистрирован: Ср июн 03, 2009 00:20:21
Откуда: Новороссия ЛНР Рубежное -> РФ Калуга
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Murka »

Ну вот как-то так
Вложения
tutor_02.rar
(30.62 КБ) 228 скачиваний
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Свободу можно завоевать, можно просрать, но высидеть свободу нельзя! ©
Всё, что меня не убивает - делает большую ошибку!
Не зли меня!!! :wink:
Аватара пользователя
Vicont
Прорезались зубы
Сообщения: 201
Зарегистрирован: Пт июл 25, 2008 14:09:04
Откуда: Зауралье
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Vicont »

Получилось! :))
Сердечно благодарю.

А почему тогда у меня прерывания по таймеру правильно тикали, если изначально в настройках такта косяк был? :roll:
Аватара пользователя
Murka
Мучитель микросхем
Сообщения: 441
Зарегистрирован: Ср июн 03, 2009 00:20:21
Откуда: Новороссия ЛНР Рубежное -> РФ Калуга
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Murka »

Не, вот это не ко мне, я 2313 не знаю, чего там у него и как. Может CLKDIV8 к таймерам не относится, бумагу читать нужно.
В свойствах радиоэлемента жмёш DATA (нужно один раз исправить FTP настройки вместо 2121 поставить 21 и поставить галку на пасив моде) дальше OK и читаем даташит.
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Свободу можно завоевать, можно просрать, но высидеть свободу нельзя! ©
Всё, что меня не убивает - делает большую ошибку!
Не зли меня!!! :wink:
Аватара пользователя
Murka
Мучитель микросхем
Сообщения: 441
Зарегистрирован: Ср июн 03, 2009 00:20:21
Откуда: Новороссия ЛНР Рубежное -> РФ Калуга
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Murka »

Во че там пишут
The CKDIV8 Fuse determines the initial value of the CLKPS bits. If CKDIV8 is unpro-
grammed, the CLKPS bits will be reset to “0000”. If CKDIV8 is programmed, CLKPS bits
are reset to “0011”, giving a division factor of 8 at start up. This feature should be used if
the selected clock source has a higher frequency than the maximum frequency of the
device at the present operating conditions. Note that any value can be written to the
CLKPS bits regardless of the CKDIV8 Fuse setting. The Application software must
ensure that a sufficient division factor is chosen if the selected clock source has a higher
frequency than the maximum frequency of the device at the present operating condi-
tions. The device is shipped with the CKDIV8 Fuse programmed.

Ты ничего не писал (нолик например) в CLKPR или CLKPS когда на таймере делал?
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Свободу можно завоевать, можно просрать, но высидеть свободу нельзя! ©
Всё, что меня не убивает - делает большую ошибку!
Не зли меня!!! :wink:
Аватара пользователя
Vicont
Прорезались зубы
Сообщения: 201
Зарегистрирован: Пт июл 25, 2008 14:09:04
Откуда: Зауралье
Контактная информация:

Re: Proteus: вопросы и ответы

Сообщение Vicont »

Murka писал(а):Ты ничего не писал (нолик например) в CLKPR или CLKPS когда на таймере делал?
Нет, в них точно ничего не писал. Вполне стандартная процедура прерывания таймера по компаратору. При такте 8Мгц задержка составила ровно 1 сек.

Код: Выделить всё

          ldi Temp,0b01000000   ;разрешить прерывание компаратора
          out TIMSK,Temp

          ldi Temp,0b00000011   ;тактовый сигнал = CK/64
          out TCCR1B,Temp

          ldi Temp,0x3D         ;инициализация компаратора
          out OCR1AH,Temp
          ldi Temp,0x09
          out OCR1AL,Temp

          ldi Temp,0            ;обнуление таймера
          out TCNT1H,Temp
          out TCNT1L,Temp
P.S. Да и зачем в CLKPR или CLKPS специально нолик писать, если они по умолчанию (в не запрограммированном состоянии) и так равны нулю...
Ответить

Вернуться в «Цифровая техника»