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

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

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

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

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

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


 
Опции темы
Непрочитано 25.06.2010, 11:05  
avr123-nm-ru
Почётный гражданин KAZUS.RU
 
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
avr123-nm-ru на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

в help зырили ?
Реклама:
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
avr123-nm-ru вне форума  
Непрочитано 25.06.2010, 12:35  
7Fantomas7
Почётный гражданин KAZUS.RU
 
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
7Fantomas7 на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Цитата:
в help зырили ?
Зырил.
Только вот проблема со знанием языков стран загнивающего капитализма.
7Fantomas7 вне форума  
Непрочитано 25.06.2010, 13:23  
Murka-MakMur
Вид на жительство
 
Аватар для Murka-MakMur
 
Регистрация: 05.09.2007
Адрес: Новороссия ЛНР Рубежное -> РФ Калуга
Сообщений: 360
Сказал спасибо: 10
Сказали Спасибо 73 раз(а) в 58 сообщении(ях)
Murka-MakMur на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Выдаёт номера в порядке появления компонентов на схеме, а хто китаец нуна ещё посмотреть.
__________________
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Чем больше слёз тем больше облегчения, в слезах и заключается лечение.
Не зли меня
Murka-MakMur вне форума  
Непрочитано 25.06.2010, 21:16  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Сообщение от 7Fantomas7 Посмотреть сообщение
Кто нибудь подскажет как в ИСИСе перенумеровщик компонентов работает? В ручную както уже напряжно стало. Гдето вроде читал, а найти не могу.
Если нужно перенумеровать в собственном порядке используйте PAT (Property Assignment Tools) - наверху в меню гаечный ключ с буквой А или просто с клавиатуры A (аглицкая раскладка) в String вводите например для резиcторов REF=R# в Count задаете начальное значение 1. Ну Increment (приращение) трогать не надо, если не хотите нумеровать через несколько позиций типа 10, 20, 30 и т.п. Action оставляем Assign (назначить) Apply To оставьте On Click ( на щелчок мыши). Н у и далее щелкаем по всем резисторам в нужном порядке хоть в китайском, хоть в японском, хоть в нанайском. Только не забудьте когда надоест еще раз вызвать окно и отменить операцию Cancel иначе она так и будет активной (признак - при наведении на компонент появляется зеленый прямоугольник с горизонтальной чертой посередине). Если надо перенумеровать диоды - набираем REF=D# можно даже попутно переименовать, если набрать REF=VD#. Далее как с резисторами. Короче, где решетка там будет вставляться номер если зададите #VD то будете иметь 1VD, 2VD, 3VD и т.д. Только не забывайте назначать Count, а то при каждом вызове оно автоматом становится с нуля.
PAT - очень мощный инструмент, особенно для ленивых, как я. Я его то и дело дергаю. Допустим вы захотели у тех же резисторов изменить значение сопротивления. Набрали в Stiring VALUE=100k и потом прошлись по всем резисторам которые надо изменить на 100кОм. Надо перевести те же резисторы в DIGITAL режим набираем PRIMITIVE=DIGITAL и погнали по нужным. Надо сменить корпус у микросхем ( в пределах разумного - он должен присутсвовать в выборе заранее). Например, стояли у меня четыре регистра сдвига 4094. По умолчанию у них корпус DIL16 (гробик) но может быть (он назначен в Package tools) и планар SO16. Задаем в PAT String PACKAGE=SO16 и клацаем по каждой из них. А иначе пришлось бы у каждой заходить в Properties и там через раскрывающуюся мунюшку PCB Package менять корпус.
Опять же LABEL у проводов - тоже меняется и назначается через NET=(что-то там)#. А то ведь на 16-разрядной шине задолбаешься вручную набирать например A0, А1, А2 и т.д.
Кратенький HELP что у чего можно менять прямо в окошке PAT справа. Но он далеко не полный. Ну и действия тоже можно менять. Например, надо убедиться, что у меня все компоненты в нужных мне корпусах. В String набираем тот же Package, а в действиях выбираем Show (показать) и All Objects. У всех компонентов подсветится тип корпуса. Надоело - еще раз то же, но Hide(скрыть).
В FAQ я об этом писал: Быстрое редактирование и еще не забудь, что если провел провод, а потом щелкнул левой дважды по кончику другого вывода компонента - пусть даже в другом месте схемы, то у тебя нарисуется в точности такой же провод, даже с теми же загогулинами. И так будет продолжаться, пока не нарисуешь вручную другой. Это тоже основа. Когда потренируешься, на фрагмент схемы на рисунке у тебя будет уходить не больше минуты, и то с прихлебыванием кофия, пивка или...
Последовательность действий:
1. Рисуем шину.
2. Рисуем один горизонтальный провод слева направо. Пощелкиваем все концы выводов процессора, подключаемые к шине.
3. Рисуем вертикальный провод от вывода ЖКИ к шине. Прощелкиваем все соседние двойным левым.
4. Вызываем PAT (аглицкая A с клавы). Вводим NET=D# (поскольку счет будет с нуля Count не меняем). Прощелкиваем горизонтальные провода сверху вниз одиночным левым.
5. Снова вызываем PAT . Там уже все набрано, просто давим ОК (если этого не сделать, то нумерация продолжится а нам надо опять с нуля) и прощелкиваем провода от индикатора слева направо одиночным.
6. Опять вызываем PAT и давим Cancel. Все!!!
Вот эти действия надо выучить до уровня подсознания как разборку/сборку автомата Калашникова. И тогда не захочется уже никаких других редакторов схем. Все будет получаться быстро, красиво и наглядно, а не как корявые проекты, которые тут иногда появляются.
Миниатюры:
Нажмите на изображение для увеличения
Название: Assign.gif
Просмотров: 80
Размер:	9.3 Кб
ID:	9152  
Halex07 вне форума  
Эти 10 пользователя(ей) сказали Спасибо Halex07 за это сообщение:
7Fantomas7 (26.06.2010), avr123-nm-ru (25.06.2010), DimAlt (27.06.2010), grbizly (01.07.2010), kittec (25.06.2010), oleg_harp (05.07.2010), saba-2 (26.06.2010), Soir (26.06.2010), wct_sniaper (29.11.2010)
Непрочитано 26.06.2010, 22:02  
7Fantomas7
Почётный гражданин KAZUS.RU
 
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
7Fantomas7 на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Halex07, ОГРОМНОЕ СПАСИБО!!!!
А то я уже затрахался лейблы в ручную по одному чикать на шинах.
ЕЩЕ РАЗ СПАСИБО
7Fantomas7 вне форума  
Непрочитано 04.07.2010, 20:35  
7Fantomas7
Почётный гражданин KAZUS.RU
 
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
7Fantomas7 на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Прошу помочь.
Вобшем второй день мудохаюсь чет не получается.
есть глобальная переменная mode_pres
void button (void)
#define mode PIND.1//PIND.1 кнопка выбора режима
#define more PIND.0//PIND.0 кнопка больше
#define less PIND.2//PIND.2 кнопка меньше
{
if (mode==0){//ВЫБОР РЕЖИМА
delay_ms (50);//выдержка времени 0,05 сек для подавления дребезга
mode_pres=mode_pres+1;//увеличиваем переменную mode_pres на 1
}
}
Вобшем в режиме пошаговой отладки или же анимации со строки delay_ms (50); програма прыгает за все остальные строки функции никак не увеличивая переменную mode_pres. Если эту строку delay_ms (50); закоментировать то работает нормально. Как вобще симулируется delay.
Весь проект во вложении.
Вложения:
Тип файла: zip TAHOMETR.ZIP (89.5 Кб, 87 просмотров)

Последний раз редактировалось 7Fantomas7; 04.07.2010 в 20:37.
7Fantomas7 вне форума  
Непрочитано 05.07.2010, 13:48  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Сообщение от 7Fantomas7 Посмотреть сообщение
Как вобще симулируется delay.
Как подпрограмма ничегонеделания. Если Вас интересует на атомарном уровне - ассемблер, то в регистр или пару регистров МК загоняется число, зависящее от тактовой частоты и требуемой задержки и начинает мусолится цикл евойного декремента, пока не совпадет с нулем, тогда выходим из подпрограммы задержки. Нда, плохо, когда сразу на Си начинают писать, не зная основ. Ну и на Си Вы наколбасили достаточно, чтобы не работало как надо. Помнится, книжка Лебедева по CodeVision у вас настольная. Ну тогда поехали, прямо в лёт.
#asm("sei") - зачем? У Вас нет ни одного обработчика прерываний, но глобально разрешили - это что запас впрок??? Открывайте Лебедева 5.17 Функции задержки. Страница 371 - верхний абздец. Приплыли...
При тактовой частоте 8МГц (кстати в свойствах МК в Протеусе у Вас еще и CKSEL неправильно задан) и такой большой задержке - 50 мсек Вы рискуете вообще никогда из нее не выбраться при разрешенных прерываниях. И вообще она Вам надо? Это при 8 Мгц - (1 такт=0.125мксек) - 400 тысяч тактов работы МК коту под хвост на тупой антидребезг. А остальное когда обрабатывать будете? Тем более, я смотрю, у Вас в проекте и динамическая индикация планируется... Не, это работать не будет. Заведите один из таймеров, загоните опрос кнопок в прерывание и через какую нибудь переменную контролируйте свой антидребезг.
Теперь по функции button(). Вот такая конструкция void чё-то_там(void) у Вас ничего не передает вовнутрь функции и ничего назад не возвращает. Опять в Лебедева 4.12 Функции (стр. 229 предпоследний абздец и 230 второй сверху). Ну и на фмга она Вам??? По сути дубликат мэйна - только лишняя морока компилятору.
Так что учите матчасть, коллега, а точнее Си.
И проблемы то Ваши к Протеусу никаким боком не касаются - все по CVAVR. Ну уж ладно, ответил.

Последний раз редактировалось Halex07; 05.07.2010 в 13:50.
Halex07 вне форума  
Сказали "Спасибо" Halex07
7Fantomas7 (05.07.2010)
Непрочитано 05.07.2010, 15:23  
7Fantomas7
Почётный гражданин KAZUS.RU
 
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
7Fantomas7 на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Цитата:
#asm("sei") - зачем? У Вас нет ни одного обработчика прерываний, но глобально разрешили - это что запас впрок???
Прерывания есть в динамической индикации. Прерывания в прок, потому как еще планируется управление двумя реле и работа счетчика1.
Цитата:
Вот такая конструкция void чё-то_там(void) у Вас ничего не передает вовнутрь функции и ничего назад не возвращает.
Весь код состоит из блоков, задумка такая чтоб в маине выполнялись функции, это видно в исходнике там две функции которые должны в цикле выполнятся в круговую просто одна закоментирована, пока не до нее. Ну и плюс намного легче порихтовать какойто блок когда он отдельно чем если это все в маине в виде бесконечного кода.
Цитата:
Если Вас интересует на атомарном уровне - ассемблер
Не интерисует принципиально по идейным соображениям.
Цитата:
Помнится, книжка Лебедева по CodeVision у вас настольная
Еще и накроватная
Цитата:
При тактовой частоте 8МГц (кстати в свойствах МК в Протеусе у Вас еще и CKSEL неправильно задан) и такой большой задержке - 50 мсек Вы рискуете вообще никогда из нее не выбраться при разрешенных прерываниях. И вообще она Вам надо? Это при 8 Мгц - (1 такт=0.125мксек) - 400 тысяч тактов работы МК коту под хвост на тупой антидребезг.
Вот тут не понятно. В рабочем режиме контролер непрерывно опрашивает кнопки и по прерыванию таймера счетчика 0 рулит динамической индикацией. Вроде никакого криминала нет. Ну будет еще таймер счетчик 1 работать, там посмотрю че с ним делать.
Предположим нажали кнопку пришла задержка delay, а что она помешает осуществить прерывание и и обновить индикацию? Я этого не знаю. Если это так подскажите.
Ну будет не 50 мсек, а 50мсек+время выполнения обработчика. Пока не критично, а в принципе нужно понизить частоту обновления динамички. Но динамическая индикация закоментирована ее пока нет. Равно как и светодиоды.
Другими словами пока только кнопки и delay, по моему мнению протеус должен добраться до задержки и стоять столько времени сколько задежка умноженая на замедление симуляции. Ну пусть пол часа да и хрен бы с ним лиш бы работало так и я видел бы что работает. А при симуляции просто перепрыгивает. Почему? Ну предположим таймер 0 вызывает прерывания, он так сконфигурирован, но после прерывания програма должна продолжить выполнение с места где была прервана.
Или я не допонял чегото? Буду признателен за помощь.
7Fantomas7 вне форума  
Непрочитано 05.07.2010, 19:36  
Halex07
Супер-модератор
 
Аватар для Halex07
 
Регистрация: 03.05.2007
Сообщений: 2,695
Сказал спасибо: 28
Сказали Спасибо 4,509 раз(а) в 956 сообщении(ях)
Halex07 на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Сообщение от 7Fantomas7 Посмотреть сообщение
А при симуляции просто перепрыгивает. Почему? Ну предположим таймер 0 вызывает прерывания, он так сконфигурирован, но после прерывания програма должна продолжить выполнение с места где была прервана.
Все, щас сам отупею!!!
А где оно у тебя???
Короче на, изучай... без коментариев.
И еще раз напоминаю - ветка по Протеусу, а не по Си!!!
Вложения:
Тип файла: rar TAHOMETR_M.rar (81.0 Кб, 93 просмотров)
Halex07 вне форума  
Непрочитано 06.07.2010, 01:28  
7Fantomas7
Почётный гражданин KAZUS.RU
 
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
7Fantomas7 на пути к лучшему
По умолчанию Re: Вопросы по PROTEUS-у

Halex07,
Цитата:
Все, щас сам отупею!!!
Э,э,э,э, подожди! Ненадо!
Без Вас никак, Вы нужны обшеству.
Цитата:
А где оно у тебя???
Парой постов выше в том же виде и в коде.
Цитата:
Короче на, изучай... без коментариев.
По правде сказать не совсем понял что Вы сделали.
Цитата:
И еще раз напоминаю - ветка по Протеусу, а не по Си!!!
Так с помощью протеуса этот самый Си и симулируется они какбы взаимосвязаны. И если в Сях накосячил то с помощью протеуса это не сложно выяснить.
Вобшем переделал проект отключил нафиг все в том числе и прерывания оставил одни кнопки так видимо будет правильнее.
Вобшем откройте секрет что Вы конкретно изменили.
И еще вопрос по одной проблеме. Я по правде говоря отношу его к разряду глюков.
Вобшем когда в коде ставлю точку останова то все работает как надо. Когда снимаю точку останова то тоже работает как надо. А когда изменяю исходник и изменяется количество строк и перекомпилирую, то вновь запуская симуляцию симулятор опять какбы находит эту точку и останавливается. Это происходит в режиме непрерывной симуляции, в режиме анимации работает нормально. И для того чтоб нормально запустить симуляцию в непрерывном режиме то нужно не стрелочку слева в низу нажать, а нажать Alt+F12. Я это заметил давно может просто чегото не так делаю.
7Fantomas7 вне форума  
 

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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Proteus общие вопросы dosikus Proteus 3363 04.07.2024 00:25
Вопросы и замечания по топику - FAQ по PROTEUS avr123-nm-ru Proteus 291 05.06.2015 20:49
Вопросы о разном. AMilyushin Отвлекитесь, эмбеддеры! 4 17.01.2009 21:40
Вопросы по работе с Proteus dosikus Proteus 510 20.12.2007 18:48
Вопросы по Си. Zemlyanov Proteus, KiCAD и другие ECAD 5 20.11.2006 15:36


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


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