Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 30.07.2010, 17:42  
Soir
Прописка
 
Регистрация: 14.11.2006
Сообщений: 150
Сказал спасибо: 31
Сказали Спасибо 125 раз(а) в 62 сообщении(ях)
Soir на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Есть проект устройства с динамической индикацией на многоразрядном семисегментном индикаторе. Если какой-нибудь сегмент отсоединить от динамической индикации и подать на него отдельно напряжение (для ОК или соединить с общим проводом для ОА) то он должен быть включенным постоянно во всех разрядах. На практике наоборот - оказывается выключенным. При пошаговом прохождении программы все ok. Во вложении проект из папки SAMPLES Proteus 7.6SP4 с попыткой засветить сегмент A. То же самое происходит и с другими проектами.
Вопрос. Это глюк или надо что-то изменить в настройках программы?
Вложения:
Тип файла: zip AVR Tiny15 Demo.zip (14.7 Кб, 67 просмотров)
Реклама:
Soir вне форума  
Непрочитано 30.07.2010, 21:31  
Johni_M
Прохожий
 
Регистрация: 03.09.2007
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Johni_M на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Всем добрый день. Хочу поделиться проблемой с которой я недавно столкнулся. Может это кому-то сэкономит время. Столкнулся с таким глюками в Proteus –е 7.6 SP0-SP4 в модели mega16 при работе с аппаратным модулем TWI(аналог I2C) при формировании команды стоп:
void twi_stop(void)
{
TWCR=(1‹‹TWINT)|(1‹‹TWEN)|(1‹‹TWSTO);
}
бит TWSTO регистра TWCR после установки и генерации команды стоп не сбрасывается. В мануале на мегу написано что бит TWSTO сбрасывается аппаратно после формирования команды стоп на линии. В следствии этого программа зацикливается. И дальнейшая отладка не возможна. Пробовал сбросить этот бит программно, но ни какого результата не добился. После заливки прошивки в железо все работает отлично. И еще один глюк при работе с модулем USART тойже модели mega 16, при настройке приемопередатчика для передачи 8 бит данных и 2 стоповых UCSRC = (1‹‹URSEL)|(1‹‹USBS)|(3‹‹UCSZ0); не устанавливается бит USBS регистра UCSRC. И при отладка программы в Proteuse в виртуальны терминал передается всякий бред. При настройки виртуального терминала для приема 8 бит и 1 стопового пакеты принимаются корректно. В железа также все работает отлично. Глюк с TWI в новой версии Proteus-а 7.7 SP2 был исправлен, а с UART –ом так и остался.
Johni_M вне форума  
Непрочитано 31.07.2010, 11:21  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Сообщение от Soir Посмотреть сообщение
Вопрос. Это глюк или надо что-то изменить в настройках программы?
Это не глюк, это особенность программы. Я вроде бы уже указывал на это в FAQ, а позже разберу и подробнее при рассмотрении всех MPX. Пока можете ориентироваться на HELP модели (входите по одноименной кнопке из окна Properties или через ПУСК-› Все прог...-› Proteus VSM Model Help -› LED and LCD Display Models). Только не верьте фразе 8х8 - после появления в библиотеках 16-сегментных индикаторов матрица была расширена, а хелп поправить как всегда забыли. В двух словах:
Программная модель дисплея LEDMPX. MPX - мультиплексирование, т.е. мы имеем матрицу из n строк (сегментов A,B,C...) и n столбцов (количество разрядов индикатора 1,2,3...). При симуляции все элементы матрицы опрашиваются программой, и на основании заданного в свойствах дисплея Trigger Time (тоже кстати в хелпе по умолчанию указано неправильно - на деле 1ms) принимается решение - зажигать или нет данный элемент. Но тут еще накладываются и параметры анимации в ISIS, а конкретно Time Step per Frame - по умолчанию 50 ms. Поэтому при непрерывной симуляции возможно совпадение - воспроизведение данной строки матрицы (сегмента) все время попадает на момент гашения. Кстати именно в приведенном Вами Tiny15 Demo, для индикации еще используется и мультиплексирование выводов МК - то на дешифратор сегментов U2, то на защелку разрядов U3. Тактирование идет с PB4. Это тоже "перчику подсыпает". Посмотрите что происходит на этапе переключения цифирь - график. Поэтому все эти факторы надо учитывать при симуляции. В данном случае достаточно просто уменьшить время Time Step per Frame с 50, ну например до 30 ms и сегмент начнет подмаргивать. Того же эффекта можно добиться и снижением Trigger Time, например до 8 ns, но при этом начнут еще и накладываться всякие побочные данные - см. ??? на графике и индикация получится "смазанной
Миниатюры:
Нажмите на изображение для увеличения
Название: SEGM.gif
Просмотров: 80
Размер:	15.1 Кб
ID:	10374  
Вложения:
Тип файла: rar AVR Tiny15 GRAF.rar (38.1 Кб, 60 просмотров)
Halex07 вне форума  
Сказали "Спасибо" Halex07
Soir (31.07.2010)
Непрочитано 31.07.2010, 14:17  
Soir
Прописка
 
Регистрация: 14.11.2006
Сообщений: 150
Сказал спасибо: 31
Сказали Спасибо 125 раз(а) в 62 сообщении(ях)
Soir на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Сообщение от Halex07 Посмотреть сообщение
...Поэтому все эти факторы надо учитывать при симуляции...
Менял все, что можно в параметрах анимации, симуляции, пытался уйти от кратных параметров... лучшее, чего смог добиться это примерно такого же эффекта как у Вас.
Было бы понятно, если бы некорректно работал какой-нибудь сегмент, учавствующий в динамической индикации в полной мере. Тут же подается постоянное напряжение на сегмент, и при включении разряда вероятность включения данного сегмента (т.е. не совпадения всех параметров, указанных Вами) должна быть выше, чем в "чистой" динамике.
P.S.
Если сегмент подключить к генератору, скажем 100Гц, то работает...
Вложения:
Тип файла: zip AVR Tiny15 Demo.zip (15.9 Кб, 62 просмотров)

Последний раз редактировалось Soir; 31.07.2010 в 15:32.
Soir вне форума  
Непрочитано 01.08.2010, 10:11  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Сообщение от Soir Посмотреть сообщение
Если сегмент подключить к генератору, скажем 100Гц, то работает...
А если к генератору с периодом индикации ~41ms (см. график), то получите еще один интересный эффект.
А вот еще один интересный вариант для исследования. Я приделал генератор сигналов, чтобы можно было плавно менять частоту. Попробуйте с подключенным нижним сегментом выставлять частоты кратные 40. Сейчас там стоит 390Гц, попробуйте 400, ну или 160 и 158. Т.е. при кратности Time Step per Frame (оставлена по умолчанию - 50ms) х 4 разряда сегменты гаснут. стоит чуть сдвинуть - начинают проявляться. Какой алгоритм заложен разработчиком в библиотеку - известно только ему. Но, как человек "мизинцем левой ноги" причастный к программированию могу почти достоверно угадать, что там есть и усреднения результатов опроса состояния ног, привязанные к Trigger Time и еще какие нибудь навороты с проверкой. Для нас он оставил только один параметр - Trigger Time. Ну и возможность оперировать общий катод/общий анод за счет инвертирования сигналов с выводов индикатора. Я этот параметр нарочно сделал видимым, чтобы Вы поняли - чем отличаются CA и CC.
Поэтому, когда я разбирал динамическую индикацию в FAQ, специально подчеркнул, что в симуляции может быть одно, а в железе другое. Но как инструмент проверки работы индикации ISIS все же использовать можно и нужно. Крупные "косяки" обнаруживаются сразу.
PS Чуть не забыл, а вот как раз завешивание сегмента на землю (того же нижнего) в приложенном проекте отрабатывает нормально.
Вложения:
Тип файла: rar INDICATION.rar (14.5 Кб, 65 просмотров)

Последний раз редактировалось Halex07; 01.08.2010 в 12:06.
Halex07 вне форума  
Непрочитано 01.08.2010, 16:56  
Soir
Прописка
 
Регистрация: 14.11.2006
Сообщений: 150
Сказал спасибо: 31
Сказали Спасибо 125 раз(а) в 62 сообщении(ях)
Soir на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Сообщение от Halex07 Посмотреть сообщение
Какой алгоритм заложен разработчиком в библиотеку - известно только ему.
Картина меняется если после SW3 установить буферный элемент
Вложения:
Тип файла: zip INDICATION1.ZIP (16.2 Кб, 69 просмотров)
Soir вне форума  
Сказали "Спасибо" Soir
Halex07 (19.08.2010)
Непрочитано 07.08.2010, 14:12  
CERGEI1982
Почётный гражданин KAZUS.RU
 
Аватар для CERGEI1982
 
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
CERGEI1982 на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Есть проблема с отладкой в протеусе v7.7 SP2 в связке с компилятором CCS v4.084.Когда программа располагается в первой странице памяти программ,то отладка идет нормально.То есть можно поставить точку останова и пройтись пошагово.Но как тока функция оказывается во втором банке памяти программ то пошагово уже не пройтись и не остановится.
Кто с этим сталкивался и какое есть решение?

Что успел узнать из помощи по протеусу: То что форматы coff отличаются в зависимости от компилятора.Также посмотрел на сайте протеуса написано что поддержка есть CCS для 16 пиков.Думаю надо копаться в компиляторе самом.
Посмотрел что еще поддерживается формат отладочного файла COD,создать смог,но подключить не дает,видит тока coff и hex.
Миниатюры:
Нажмите на изображение для увеличения
Название: prot1.jpeg
Просмотров: 77
Размер:	90.2 Кб
ID:	10661   Нажмите на изображение для увеличения
Название: prot2.jpeg
Просмотров: 85
Размер:	192.4 Кб
ID:	10662  
Вложения:
Тип файла: rar Lexa_kotel.rar (197.4 Кб, 58 просмотров)
__________________
Глаза боятся,а руки делают.

Последний раз редактировалось CERGEI1982; 08.08.2010 в 04:54. Причина: дополнение
CERGEI1982 вне форума  
Непрочитано 08.08.2010, 14:09  
DL36
Вид на жительство
 
Регистрация: 06.10.2006
Сообщений: 329
Сказал спасибо: 4
Сказали Спасибо 17 раз(а) в 13 сообщении(ях)
DL36 на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Сообщение от CERGEI1982 Посмотреть сообщение
Есть проблема с отладкой в протеусе v7.7 SP2 в связке с компилятором CCS v4.084
версию 7.7 сп2 я пока не ставил, там надо новые глюки искать а времени на это нет.
Конкретно с CCS я не работаю но приведу свой пример.
Я работаю с дс33 но такой модели нет и решил частично отлаживать код используя PIC24FJ128GA010. Я уже писал о том, что протеус неверно выполняет некоторые инструкции, тут же я столкнулся с новыми проблемами. При симулировании в среде протеуса более или мене работает используя условную компиляцию я делаю код только для моделирования. Начиная с некоторого размера кода (за 50%) если запускать из под МПЛАБ постоянно в трап попадаю причем если запускать в протеусе или железе то все нормально.

К чему это я да просто протеус штука несколько глюковатая и надо эти глюки знать. У меня проекты довольно большие и пока ни один не удалось полностью запустить в протеусе, но функции по отдельности я успешно моделирую.
Обычно для протеуса есть отдельный проект (полный код, но собранный используя условную компиляцию, часто и камень другой тот, что есть в наличие) Делаю точку входа на исследуемую функцию предварительно настроив необходимые параметры.

Надеюсь я ответил на вопрос.
Попробуй запускать протеус из под МПЛАБ, скорее всего будет нормально.

Последний раз редактировалось DL36; 08.08.2010 в 19:54. Причина: Добавил немного
DL36 вне форума  
Непрочитано 18.08.2010, 09:21  
OverHead
Частый гость
 
Регистрация: 10.10.2009
Сообщений: 10
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
OverHead на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

Проблема с Proteus или так должно быть?
Вопрос по AVR Tiny261 или, возможно, в целом по всем AVR.

Цель простейшая - запустить ADC в режиме Free Running Mode.
Бит разрешения АЦП - ADEN устанавливаю первым, потом все необходимые регистры по фирменной DataSheet.
Последним устанавливаю бит начала первой конверсии ADSC. Вроде, судя по документации все должно и так

работать.
Но всё включается только когда я разрешу прерывания по АЦП - ADIE=›1. Прерывание пустое, там стоит RETI.
Я могу логично предположить, что каждое новое преобразование инициируется флагом ADIF, но почему в

документации об этом явно не указано? Интересно, в железе так же или нет? И можно ли обойтись без применения

прерываний.

А вот ещё конкретный баг Proteus для Tiny261. Пол ночи убил, чтобы понять.
Запускаю Timer1 в простом NormalMode т.е. счетик от 00 до Max и прерывание по переполнению. Не работает

исключительно потому, что этот MAX он берет не просто, а читает его значение из определённого регистра

OCR1C. Это нормально само по себе, не нормально то, что при сбросе этот регистр в Proteus тоже сбрасывается как

и остальные, а в железном реале он устанавливается в 0xFF.

PS. Я допускаю, что я лошара, и не обижусь, если гуру типа Тень меня помакают носом.
OverHead вне форума  
Непрочитано 19.08.2010, 00:15  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: Proteus - глюки, проблемы с установкой

To OverHead
Накропали много, а информации - нуль. Устал повторять...
1. Версия Протеуса??? Многие глюки, но не все убраны только в 7.7.
2. На чем пишете и в чем компилируете???
3. В идеале принято выкладывать пример неработающего (неправильно работающего) проекта.
Так что пока и "носом макать" не во что.
Halex07 вне форума  
Сказали "Спасибо" Halex07
virZh (02.09.2010)
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Глюки Proteus 6.9 Prime Коллекция глюков 2 07.09.2009 19:54
Вопрос по PROTEUS (проблемы с таймером) maxNTF Микроконтроллеры, АЦП, память и т.д 12 29.06.2007 09:36
Зависание и глюки chipic128 Микроконтроллеры, АЦП, память и т.д 16 24.03.2005 10:52
глюки у VisualDSP++3.5 Geremy Коллекция глюков 2 10.02.2005 17:21
Проблемы с Proteus 6.2 sp5 RomulKv Proteus, KiCAD и другие ECAD 0 29.12.2004 15:58


Часовой пояс GMT +4, время: 01:14.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot