Например TDA7294

Форум РадиоКот • Просмотр темы - Proteus: вопросы и ответы
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Ср дек 31, 2025 21:59:19

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 5560 ]     ... , , , 81, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 13:34:26 
Мучитель микросхем
Аватар пользователя

Карма: -5
Рейтинг сообщений: 0
Зарегистрирован: Пт май 29, 2009 10:14:29
Сообщений: 402
Рейтинг сообщения: 0
Engineer_Keen & Murka спасибо за помощь.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 14:22:44 
Друг Кота
Аватар пользователя

Карма: 62
Рейтинг сообщений: 889
Зарегистрирован: Вт апр 24, 2007 07:45:40
Сообщений: 6217
Откуда: Minsk
Рейтинг сообщения: 0
Roman Venom писал(а):
Вы неправильно меня поняли... Я не использую команды положить/извлечь. Прерывания, подпрограммы естессно присутствуют. Как же без них? :))) И никаких недоразумений со стеком не было... Кстати ещё вот что. Были непонятные баги когда прерывания срабатывали во время операций положить/извлечь в ОЗУ.


Вот это-то и непонятно - как можно использовать прерывания ( подпрограммы еще с трудом могу представить ) без положить/извлечь ( push/pop ) ? Ведь начало любого прерывания - это

push r16
in r16,SREG
push r16
......
В отличие от x86 и многих других процессоров, AVR при входе в прерывание не сохраняет слово состояния, и это надо делать ручками, иначе после возврата из прерывания можем получить измененные N Z V C с непредсказуемыми последствиями. Ну и какими-то регистрами в обработчике Вы пользуетесь - после возврата им надо отдать прежнее содержимое. Мне неловко говорить Вам банальные вещи, наверняка вы это знаете, но как тогда без push/pop в обработчике ? Может, и проблемы с записью/чтением памяти тоже с этим связаны? За 15 лет занятий микроконтроллерами всякого было у меня, но такого - никогда.

nsl2004 писал(а):
Протеус рулит.


И не только он :)) Штатная Studio от Atmel`a рулит ничуть не хуже. А сколько я тут наслушался историй про баги в Протеусе... В Студии такого не замечалось. Ну что ж - каждому овощу - свой фрукт.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 14:48:39 
Сверлит текстолит когтями
Аватар пользователя

Зарегистрирован: Сб июл 11, 2009 18:42:21
Сообщений: 1135
Откуда: Украина, г.Николаев
Рейтинг сообщения: 0
Jack_A
Цитата:
Вот это-то и непонятно - как можно использовать прерывания ( подпрограммы еще с трудом могу представить ) без положить/извлечь ( push/pop ) ? Ведь начало любого прерывания - это

push r16
in r16,SREG
push r16
......
В отличие от x86 и многих других процессоров, AVR при входе в прерывание не сохраняет слово состояния, и это надо делать ручками, иначе после возврата из прерывания можем получить измененные N Z V C с непредсказуемыми последствиями. Ну и какими-то регистрами в обработчике Вы пользуетесь - после возврата им надо отдать прежнее содержимое. Мне неловко говорить Вам банальные вещи, наверняка вы это знаете, но как тогда без push/pop в обработчике ? Может, и проблемы с записью/чтением памяти тоже с этим связаны? За 15 лет занятий микроконтроллерами всякого было у меня, но такого - никогда.

На счёт непредсказуемого изменения флагов вы абсолютно правы, плюс это вроде как хороший тон программирования на ассемблере. Но я занимаюсь МК АВР относительно недавно, поэтому некоторые шалости допускаю. Что же касается проблем с записью/чтением, то я так и не понял почему они возникали, т.к. этот кусок кода был расположен не в подпрограммах(там и в прерываниях проблем не было), а в основном цикле.
Оффтоп, конечно. Но надеюсь поможет кому-то.

_________________
Успех - императив!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 15:02:28 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 238
Зарегистрирован: Пт янв 29, 2010 10:27:40
Сообщений: 3868
Откуда: Москва
Рейтинг сообщения: 0
Jack_A писал(а):
Ведь начало любого прерывания - это
push r16
in r16,SREG
push r16

А я использую вместо стека для хранения SREG свободный регистр (если таковой имеется), так и стек не используется и быстрее код выполняется (in-out, вместо push,in,push-pop,out,pop).


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 15:44:26 
Друг Кота
Аватар пользователя

Карма: 62
Рейтинг сообщений: 889
Зарегистрирован: Вт апр 24, 2007 07:45:40
Сообщений: 6217
Откуда: Minsk
Рейтинг сообщения: 0
Engineer_Keen писал(а):
Jack_A писал(а):
Ведь начало любого прерывания - это
push r16
in r16,SREG
push r16

А я использую вместо стека для хранения SREG свободный регистр (если таковой имеется), так и стек не используется и быстрее код выполняется (in-out, вместо push,in,push-pop,out,pop).

Тоже вариант. Но надо быть уверенным, что этот регистр не изменится не только программой, но и самим железом в процессе работы. А выигрыша я что-то не вижу : IO в IO напрямую не перекинешь, все равно через РОН - в чем выигрыш?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 15:48:30 
Друг Кота
Аватар пользователя

Карма: 62
Рейтинг сообщений: 889
Зарегистрирован: Вт апр 24, 2007 07:45:40
Сообщений: 6217
Откуда: Minsk
Рейтинг сообщения: 0
Roman Venom писал(а):
Что же касается проблем с записью/чтением, то я так и не понял почему они возникали, т.к. этот кусок кода был расположен не в подпрограммах(там и в прерываниях проблем не было), а в основном цикле.
Оффтоп, конечно. Но надеюсь поможет кому-то.

А ему пофиг, где расположена инструкция - в основном цикле или в п/п. Прерывание - штука асинкронная, и где застанет, там и прервет, и если обработчик накосячен, то и в основном цикле бед натворит - будь здоров.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 17:31:58 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 238
Зарегистрирован: Пт янв 29, 2010 10:27:40
Сообщений: 3868
Откуда: Москва
Рейтинг сообщения: 0
Jack_A писал(а):
Тоже вариант. Но надо быть уверенным, что этот регистр не изменится не только программой, но и самим железом в процессе работы.

Ну так я и говорю, если есть свободный регистр. И контроль за неизменяемостью естественно обязателен. Но например прерывания друг друга не прерывают (если не извращаться с многоуровневыми) и в каждом обработчике можно спокойно это использовать.
Jack_A писал(а):
А выигрыша я что-то не вижу : IO в IO напрямую не перекинешь, все равно через РОН - в чем выигрыш?


Код:
PUSH R16
IN R16,SREG
PUSH R16
...
POP R16
OUT SREG,R16
POP R16
;6 байт, 10 тактов


Код:
IN TMP_S,SREG
...
OUT SREG,TMP_S
;2 байта, 2 такта

:wink:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 19:44:23 
Мучитель микросхем
Аватар пользователя

Карма: -8
Рейтинг сообщений: 1
Зарегистрирован: Чт июн 03, 2010 23:06:12
Сообщений: 420
Рейтинг сообщения: 0
Здраствуйте, Подскажите, что не так смоделировано в proteuse дозатор жидкости индикация есть, предустановки литров выставляются , а счет не идет?
Изображение
Проект в proteuse прилагаю.

_________________
Некакого перимирия, Некаких мирных шагов навстречу и периговоров.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 21:07:04 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
Coviraylhik писал(а):
Подскажите, что не так смоделировано в proteuse дозатор жидкости индикация есть, предустановки литров выставляются , а счет не идет?

1. В схеме нет четкого формирования импульсов. Это может быть критично для симуляции, в реальном устройстве должно работать.
2. Чтобы накапал литр должно поступить некоторое количество импульсов.
В Ваш проект добавил генератор импульсов (для наглядности 10 Гц) и счет работает.


Вложения:
Дозатор.zip [21.72 KiB]
Скачиваний: 247
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Ср мар 16, 2011 22:31:16 
Мучитель микросхем
Аватар пользователя

Карма: -8
Рейтинг сообщений: 1
Зарегистрирован: Чт июн 03, 2010 23:06:12
Сообщений: 420
Рейтинг сообщения: 0
С генератором стало понятно, что у меня не получалось.
На вход PD4 должно быть подано 40 импульсов , и тогда счёт уменьшается на единицу.
Устройство нормально моделируется.
Спасибо.

_________________
Некакого перимирия, Некаких мирных шагов навстречу и периговоров.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: вопросы и ответы
СообщениеДобавлено: Чт мар 17, 2011 01:10:49 
Друг Кота
Аватар пользователя

Карма: 62
Рейтинг сообщений: 889
Зарегистрирован: Вт апр 24, 2007 07:45:40
Сообщений: 6217
Откуда: Minsk
Рейтинг сообщения: 0
Engineer_Keen писал(а):
Ну так я и говорю, если есть свободный регистр. И контроль за неизменяемостью естественно обязателен.


О, я сразу не въехал - я думал, речь идет о регистре НЕИСПОЛЬЗУЕМОГО ВНЕШНЕГО УСТРОЙСТВА ( я как-то и такой изврат пытался замутить, не помню уже - из каких побуждений ), а не о неиспользуемом РОН. Но тут нужно бдительно следить, потому что если приходится модифицировать код, можно забыть, что этот регистр "горячий" :)) , и будет трудноуловимая бага. И выигрыш пару тактов может аукнуться. Впрочем, в моем "творчестве" был период, когда я группу регистров выделил в разряд "мальчиков на побегушках", ничего глобального сквозь всю программу в них, конечно, не передавалось, а мои библиотечные подпрограммы имели их как хотели.

Я думаю, нам простят, что слегка отклонились от Протеуса, но в конце-то концов - мы ведь не про футбол и не про девочек :))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Proteus: подключить к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 12:42:57 
Открыл глаза

Зарегистрирован: Ср окт 27, 2010 12:17:32
Сообщений: 47
Рейтинг сообщения: 0
Добрый день всем, нарисовал схемку и нужно запитать к примеру 12В, как это сделать в Proteus? Спасибо.


Последний раз редактировалось linch Пт мар 18, 2011 17:43:56, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: подключит к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 13:40:16 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 238
Зарегистрирован: Пт янв 29, 2010 10:27:40
Сообщений: 3868
Откуда: Москва
Рейтинг сообщения: 0
Вообще-то для протеуса отдельная тема есть... Но ладно. 8-я по счету пиктограмма слева - terminals mode, в ней выбираем power, ставим в схему, в свойствах пишем "+12V", все.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: подключит к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 14:29:37 
Открыл глаза

Зарегистрирован: Ср окт 27, 2010 12:17:32
Сообщений: 47
Рейтинг сообщения: 0
Engineer_Keen писал(а):
Вообще-то для протеуса отдельная тема есть... Но ладно. 8-я по счету пиктограмма слева - terminals mode, в ней выбираем power, ставим в схему, в свойствах пишем "+12V", все.

Это та я знаю но там нет пункта свойства! Нашел батарею... Спасибо


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: подключит к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 15:09:27 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
linch писал(а):
Это та я знаю но там нет пункта свойства!

У всех есть, а у Вас нету. Все по Proteus задают вопросы в специально созданной теме, а Вы новую заводите для вопроса, требующего ответа в несколько слов... Какая-то система уже вырисовывается...
Изображение


Вложения:
Edit.png [11.3 KiB]
Скачиваний: 1528
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: подключит к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 15:16:39 
Открыл глаза

Зарегистрирован: Ср окт 27, 2010 12:17:32
Сообщений: 47
Рейтинг сообщения: 0
Сори что написал отдельную тему! Да делал я так как Вы показали, писал +12В, результата нет, вольтметр напряжения не видит :shock: Спасибо! Разберусь.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: подключит к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 16:31:19 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
linch писал(а):
...Разберусь.

Должно получиться вот так:
Изображение


Вложения:
Power.png [1.67 KiB]
Скачиваний: 1475
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: подключит к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 16:44:28 
Открыл глаза

Зарегистрирован: Ср окт 27, 2010 12:17:32
Сообщений: 47
Рейтинг сообщения: 0
Вот


Вложения:
Proteus.jpg [23.62 KiB]
Скачиваний: 586
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: подключит к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 17:03:57 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
linch писал(а):
Вот

Давайте уж проект, будем вместе разбираться.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Proteus: подключит к схеме питание 12В.
СообщениеДобавлено: Пт мар 18, 2011 17:40:14 
Открыл глаза

Зарегистрирован: Ср окт 27, 2010 12:17:32
Сообщений: 47
Рейтинг сообщения: 0
Да это не совсем проект. Спасибо.


Вложения:
GG.jpg [81.44 KiB]
Скачиваний: 486


Последний раз редактировалось linch Пт мар 18, 2011 19:11:52, всего редактировалось 1 раз.
Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 5560 ]     ... , , , 81, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y