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

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

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

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

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

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


Ответ
Опции темы
Непрочитано 30.12.2009, 15:14   #11
Denis147
Прохожий
 
Регистрация: 28.12.2009
Сообщений: 5
Сказал спасибо: 4
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Denis147 на пути к лучшему
По умолчанию Re: Proteus & PIC PWM

Да у меня тож завелса спасибо за помощь
Реклама:
Denis147 вне форума   Ответить с цитированием
Непрочитано 30.12.2009, 21:52   #12
UserM
Прописка
 
Регистрация: 14.08.2006
Сообщений: 106
Сказал спасибо: 19
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
UserM на пути к лучшему
По умолчанию Re: Proteus & PIC PWM

Сообщение от udar Посмотреть сообщение
А случайно для PIC16F684 нет примерчика ШИМ?
Ну типа , так:
Код:
void main()
        {
        unsigned char   pwm ;

        TRISC = 0 ;
        PORTC = 0 ;

        PR2 = 0b01111100 ;
        CCP1CON = 0b00001100 ;
 //       CCP2CON = 0b00111100 ;

        for(;;)
                {

               for(pwm = 0 ; pwm ‹ 128 ; pwm++)
                        {
                        CCPR1L = pwm ;
                      //  CCPR2L = 128 - pwm ;
                        T2CON = 0b00000101 ;
                        Delay_ms(10) ;
                        }
                for(pwm = 127 ; pwm › 0 ; pwm--)
                        {
                        CCPR1L = pwm ;
                       // CCPR2L = 128 - pwm ;
                        T2CON = 0b00000101 ;
                        Delay_ms(10) ;
                        }
                }
        }
Миниатюры:
Нажмите на изображение для увеличения
Название: 684_pwm_.jpg
Просмотров: 75
Размер:	36.3 Кб
ID:	3293  
UserM вне форума   Ответить с цитированием
Непрочитано 30.12.2009, 22:03   #13
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Proteus & PIC PWM

Кстати, да, вы правы. Если не использовать штатные библиотеки компилятора, а сразу писать напрямую в регистр, шим работает прекрасно. Был точно такой же глюк, когда использовал библиотеку UART1.Read(). Протеус свисал, забрасывая ошибками. Использовал ассинхронную передачу, поэтому чтение висело на прерывании. Просто заменил эту команду прямым чтением из регистра и сбросом флага. И все заработало.
Easyrider83 вне форума   Ответить с цитированием
Непрочитано 30.12.2009, 22:14   #14
UserM
Прописка
 
Регистрация: 14.08.2006
Сообщений: 106
Сказал спасибо: 19
Сказали Спасибо 7 раз(а) в 7 сообщении(ях)
UserM на пути к лучшему
По умолчанию Re: Proteus & PIC PWM

udar, кстати проверил этот проект
http://mcs.uwsuper.edu/sb/Electronics/PWM/
Тоже работает в протеусе если добавить несколько строк:
Код:
movlw	7
movwf	T2CON
UserM вне форума   Ответить с цитированием
Сказали "Спасибо" UserM
udar (30.12.2009)
Непрочитано 31.12.2009, 10:16   #15
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Proteus & PIC PWM

В общем, разобрался я окончательно с PWM модулем
Чтобы он работал, нужно сделать следующие вещи:
Включить таймер2 (регистр t2con)
Включить ШИМ (регистр ccp1con)
Указать период таймера2. От него зависит разрешение длительности шим в байтах (регистр pr2)
Указать длительность (регистр ccpr1l нижние 8 бит)
Все, ШИМ работает.

С 870ым камнем была проблема. После смены CCPR1L (длительность) ОБЯЗАТЕЛЬНО надо установить T2CON.2=1, иначе шим встает. Как в железе, не знаю.

Последний раз редактировалось Easyrider83; 05.01.2010 в 05:09.
Easyrider83 вне форума   Ответить с цитированием
Сказали "Спасибо" Easyrider83
anunah (14.11.2013)
Непрочитано 12.01.2010, 12:00   #16
sslobodyan
Частый гость
 
Регистрация: 14.06.2006
Сообщений: 40
Сказал спасибо: 20
Сказали Спасибо 10 раз(а) в 5 сообщении(ях)
sslobodyan на пути к лучшему
По умолчанию Re: Proteus & PIC PWM

Я тоже бился с ССР модулем в ломаном протеусе 7,6,0. Не работало. А потом вдруг попробовал тот-же пример на другом компе и там все заработало. Тогда я скопировал всю папку протеуса с работающего компа на свой и теперь все гуд. В чем причина - досконально не разбирался. Но копирование только папки с бинарниками не помогало. Значит скорее всего были плохо пропатчены пиковские библиотеки.
sslobodyan вне форума   Ответить с цитированием
Ответ

Закладки


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Flowcode for PIC v4 sa502 Proteus, KiCAD и другие ECAD 867 12.02.2019 19:38
LPT b PROTEUS romshe Proteus 0 01.11.2009 18:22
Размещение констант в памяти программ в PIC ST_Senya Микроконтроллеры, АЦП, память и т.д 10 15.10.2009 20:12
[Решено] Проблема с eeprom в Proteus Memfis666 Proteus, KiCAD и другие ECAD 1 01.10.2009 15:38


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


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