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

Обсуждаем цифровые устройства...
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

я не из тех людей, кто кричит "спасите" при каждом пустяке. мне не надо давать советы "отлаживать" - как раз для отладки я и попытался использовать протеус, собственно, его назначение именно в этом. в моем понимании, отладка - это поиск ошибок в своей программе, но поиск ошибок в программе, предназначенной для отладки - это уже как-то иначе называется :(

я не вааааще, я стараюсь делать нормальные вещи, для этого мне нужны нормальные инструменты. WinAVR меня не подводил пока ни разу, т.е. в качестве генерируемого им кода я пока уверен больше, чем во всем прочем. и printf() я использую не первый раз. первый раз такое, чтобы заведомо рабочий код выкидывал такие коники в протеусе. мне нужна либо реальная помощь. либо тишина вместо бессмысленных разглагольствований и насмешек.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

ARV писал(а): мне не надо давать советы "отлаживать" - как раз для отладки я и попытался использовать протеус, собственно, его назначение именно в этом.


Дак а как вы его использовали то ? Включили ... и все. И пишите - не работает.

Вот я сделал ЭЛЕМЕНТАРНЫЕ вещи

Я просто взял в мастере CVAVR сделал настройку USART под ваши параметры и строки настройки вставил в ваш код перед строкой

UDR = c;

И в PROTEUS стало нормально выводится.

Изображение

в PROTEUS вывод:

Изображение

ARV писал(а):я не из тех людей, кто кричит "спасите" при каждом пустяке.


Да это и был пустяк ИМХО. очевидно настройка USART не понравилась PROTEUS

Скорей всего формат не 8N1 у вас в поекте. Так как числа в решистрах вар в студии не такие как сделал мастер CVAVR.
Вложения
arv.rar
(84.33 КБ) 333 скачивания
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

вот это уже ближе к телу! спасибо - хотя бы понял, в каком направлении копать... проблемы с кодом инициализации...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

ARV писал(а):вот это уже ближе к телу! спасибо - хотя бы понял, в каком направлении копать... проблемы с кодом инициализации...

Кстати можно было написать
UDR = 'U'; // вместо = с;

должен выводится меандр - подключить осцилограф PROTEUS и посотреть что там за формат реально строчит.

и... VMLAB !!! же еще есть.
Аватара пользователя
Илья79
Мучитель микросхем
Сообщения: 429
Зарегистрирован: Вс июн 29, 2008 13:53:03
Контактная информация:

Сообщение Илья79 »

вот мой проект, посмотри
Вложения
t1.zip
(21.92 КБ) 319 скачиваний
thinktvice
Родился
Сообщения: 10
Зарегистрирован: Ср мар 25, 2009 18:06:12
Откуда: Kiev

Сообщение thinktvice »

Доброго времени суток!Вот на этой страничке http://www.radiokot.ru/forum/viewtopic.php?p=118011#118011 был опубликован топик об 6 Шимах в атмеге 48,пытаюсь сейчас сделать схему с апноута avr448, моя задача получить 36в 400гц 3фазы.Но вот не могу никак разобраться с прошивкой,т.е. с правильной ее проверкой.Может кто-то собирал схемку?
Да и еще не нашел в протеусе примеров для даной меги для управления двигателем трехфазным.
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

thinktvice писал(а):Доброго времени суток!Вот на этой страничке http://www.radiokot.ru/forum/viewtopic.php?p=118011#118011 был опубликован топик об 6 Шимах в атмеге 48,пытаюсь сейчас сделать схему с апноута avr448, моя задача получить 36в 400гц 3фазы.Но вот не могу никак разобраться с прошивкой,т.е. с правильной ее проверкой.


Вот то что вам надо - Заготовка для частотного инвертора электропривода генерация SIN синусоиды 3 фазы с регулированием амплитуды на ATmega48 с исходниками - подрихтуете на 400 Гц
http://kazus.ru/forum/topic_10496-50.html

avr447 ... avr449 скорей всего только в железе можно проверить.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

я разобрался, в чем была причина моих невзгод... протеус некорректно исполняет аппаратную инициализацию регистров USART при сбросе...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

ARV писал(а):протеус некорректно исполняет аппаратную инициализацию регистров USART при сбросе...

т.е. нули туде не пишет чтоль ?

Жаль что проект не приложили с указанием что и где конкретно посмотреть.

А WinAVR в исходниках только битики возводятся через ИЛИ ?

А вот в коде созданом мастером CVAVR присваивание регистру делается - потому ему наплевать на то что было раньше в регистр записано симулятором или ошибками в программе.
Просто CVAVR ставит весь регистр правильно и вперед !

CVAVR кроме того и в мэйн еще множество не используемых регистров МК обнуляет присваиванием.

C проектом кончено по-предметней был бы разговор.
Последний раз редактировалось ikarab Ср апр 08, 2009 09:14:54, всего редактировалось 1 раз.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

ikarab писал(а):т.е. нули туде не пишет чтоль ?
что он туда пишет - я не знаю. но при сбросе нули далеко не во все регистры пишутся, в частности, в регистры USART пишутся изначально настройки на 8 бит данных без контроля четности и 1 стоп-бит. раз это пишется аппаратно - нет необходимости писать то же самое туда программно, достаточно просто задать скорость в UBRR, а протеус так не считает. протеус вообще многое по-своему делает, не так, как в любом даташите Atmel написано...

то, что CVAVR по умолчанию везде и всюду пишет стартовые значения принудительно, не есть супер-достоинство: фактически это абсолютно лишний код! хотя протеус это больше любит...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

ARV писал(а):фактически это абсолютно лишний код!

Я думаю этот код очень полезен начинающим - он во первых показывает им наличие этих регистров, а во вторых заставляет ДУМАЮЩУЮ часть в документацию заглянуть что это за регистры.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

ikarab писал(а):Я думаю этот код очень полезен начинающим - он во первых показывает им наличие этих регистров, а во вторых заставляет ДУМАЮЩУЮ часть в документацию заглянуть что это за регистры.
не очень хочется разводить дискуссию... но боюсь, что все как раз наоборот. ДУМАЮЩАЯ часть (скромно причислю себя к ней) сначала смотрит в даташит, видит там, что ВСЕ регистры получают при сбросе начальные значения (некоторые нули, другие не нули) и убеждается, что CVAVR генерирует бесполезный код, просто отъедающий часть памяти. или все происходит иначе: думающая часть убеждается, что CVAVR генерирует РАБОЧИЙ код, и перестает быть ДУМАЮЩЕЙ - а зачем?! и если, не дай бог, в очередной версии CVAVR возникнет баг и автогенерируемый код станет ошибочным - практически никто не поймет, почему все плохо стало... это мое мнение, не ставлю его выше прочих.

имхо, вы агитируете за стиль "мастера-самоучки Полесова", когда быстрей-быстрей давай-давай, чтоб что-то вышло... у Полесова не было знаний и не было мастера CVAVR - потому у него почти ничего не работало. у последователей вашего метода нет знаний, но есть мастер CVAVR - поэтому работает у них больше и чаще, но позволю себе усомниться, что они смогут внятно объяснить, почему это происходит...

позволю себе афоризм-шутку в виде беззлобного подведения итогов:
Теория - это когда все знают, почему ничего не работает. Практика - это когда все работает, но никто не знает, почему. Мы успешно совмещаем теорию с практикой - у нас ничего не работает, и никто не знает, почему. :)))

P.S. я никого не хотел обидеть. в моих словах нет намеков на личности. только мое мнение абстрактно.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

ARV писал(а):
ikarab писал(а):Я думаю этот код очень полезен начинающим -

(скромно причислю себя к ней)


Ну какой же вы начинающий ?!
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

ikarab писал(а):Ну какой же вы начинающий ?!
скромный, какой же еще...
из числа тех, кто так или иначе знаком мне по этому форуму, я припоминаю буквально одного-двух начинающих, кто на самом деле пытается (или пытался) вникнуть в тот код, что делает CVAVR автоматом. Покаюсь - даже у меня такого желания не возникло ни разу! Возможность получить что-то без усилий убивает желание прикладывать усилия - увы, это закон природы для живых организмов всех видов.

и еще. я пришел к выводу, что протеус - это наркотик: зависимость вызывает с первой пробы... и ломка страшная... а польза только в "медицинских" применениях...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

thinktvice
Родился
Сообщения: 10
Зарегистрирован: Ср мар 25, 2009 18:06:12
Откуда: Kiev

Сообщение thinktvice »

ikarab писал(а):
thinktvice писал(а):Доброго времени суток!Вот на этой страничке http://www.radiokot.ru/forum/viewtopic.php?p=118011#118011 был опубликован топик об 6 Шимах в атмеге 48,пытаюсь сейчас сделать схему с апноута avr448, моя задача получить 36в 400гц 3фазы.Но вот не могу никак разобраться с прошивкой,т.е. с правильной ее проверкой.


Вот то что вам надо - Заготовка для частотного инвертора электропривода генерация SIN синусоиды 3 фазы с регулированием амплитуды на ATmega48 с исходниками - подрихтуете на 400 Гц
http://kazus.ru/forum/topic_10496-50.html

avr447 ... avr449 скорей всего только в железе можно проверить.

Спасибо я видел этот проект...но у меня сложность в другом-мне нужно 6 ШИМов получить,вот схема http://www.gaw.ru/html.cgi/txt/app/micros/avr/AVR448.htm
Аватара пользователя
Барсик
Друг Кота
Сообщения: 3459
Зарегистрирован: Ср сен 27, 2006 16:18:57

Сообщение Барсик »

ARV писал(а):...то, что CVAVR по умолчанию везде и всюду пишет стартовые значения принудительно, не есть супер-достоинство: фактически это абсолютно лишний код!...

Полностью с Вами согласен. Я этот код всегда выкидываю. В том числе и кусок, кототорый принудительно задаёт частоту:

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

#pragma optsize-
CLKPR=0x80;
CLKPR=0x00;
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif


А "Протеус", как мне кажется, это не наркотик, а резиновая женщина. Вроде на настоящую чем-то похоже, а потом оказывается, что не очень...
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Как искать в PROTEUS проект на нужном МК или компоненте для использования его в качестве шаблона для своей разработки:
Изображение
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

что-то протеус мне все меньше и меньше нравится... глюк на глюке, уж и не знаю, чему верить: глазам или еще чему-то иному :(

очередная тупиковая ситуация: моделирую проект atmega32, пытаюсь писать в EEPROM и читать оттуда... какой бы адрес не задавал для чтения/записи - всегда пишет/читает ячейку с нулевым адресом :( причем в окошке портов ввода-вывода видно, что в EEAR попадают правильные значения... в AVR Studio обращение к EEPROM осуществляется нормально...

таки лыжи не едут или .... ?!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Дак для того библы то и ставят от 7.5 чтоб в EEPROM нормально писалось ! Уж скока твержу - качайте правильный пакет PROTEUS со всем необходимым для КОМФОРТНОЙ работы.

Но глюкавость Шпротеуса неиссякаема воистину ...

Однако надо признать что глюку чуются на раз, так что не назвал бы я их СТРАШНЫМИ.
Ответить

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