Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
06.09.2008, 18:32
|
#1
|
Прописка
Регистрация: 04.08.2006
Сообщений: 139
Сказал спасибо: 12
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
|
!!! Проблема с организацией ШИМ для полумоста !!!
Столкнулся с проблемой.Не могу организовать ШИМ для молумоста.Есть график из даташита (прикреплен). Есть также и мое видение графика (он тоже прикреплен). Они не совпадают. Проект (также прикреплен) не совпадает и с тем и с другим.Мужики!Чего-то недопонимаю.Наверное с теорией.Помогите.Если программой - спасибо.Если просто разжуете - тоже буду рад.Делал реализацию как и программно, так и аппаратно.Важно понимание времянок.
Заранее благодарен.
Прикрепленный файл: 2732463.rar
|
|
|
|
07.09.2008, 14:19
|
#2
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Похоже у вас не тот режим ШИМ установлен.
Напишите по какому апноуту делаете ? В PROTEUS есть в примерах AN696 и поновее по электроприводу.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
Сказали "Спасибо" avr123-nm-ru
|
|
|
07.09.2008, 15:01
|
#3
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Сильно я ща ИЗУЧИЛ !!! PIC18F448 PIC18F458 даташит
http://ww1.microchip.com/downloads/e...doc/41159d.pdf
стр 142 16.5.7 OUTPUT POLARITY CONFIGURATION
The ECCP1M‹1:0› bits in the ECCP1CON register
(описание на стр. 133) allow user to choose the
logic conventions (asserted high/low) for each
of the outputs.
и стр. 143 - похоже у вас не правильно сделан пункт d)
... select the active-high/low levels for each PWM
output. With the EPWM1M‹1:0› bits, select
one of the available output modes.
у вас в исходнике так :
#byte ECCP1CON = 0xFBA // это 1111 1011 1010
т.е. bit 3_0 у вас 1010 (стр. 133) это не ШИМ вообще.
вам надо наверно так:
1100 =PWM mode; P1A, P1C active-high; P1B, P1D active-high
т.е. в исходнике исправьте на:
#byte ECCP1CON = 0xFBC // это 1111 1011 1100
=======
Выложите проект в компиляторе плизззз !
Прикрепленный файл: 5669979.rar
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
Сказали "Спасибо" avr123-nm-ru
|
|
|
07.09.2008, 15:16
|
#4
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Щас в осциллографе PROTEUS инвертировал канал "А" и ШИМ стал прекрасный с дет-таймом
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
Сказали "Спасибо" avr123-nm-ru
|
|
|
07.09.2008, 23:36
|
#5
|
Прописка
Регистрация: 04.08.2006
Сообщений: 139
Сказал спасибо: 12
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
|
Посмотрел еще раз(стр.49 DataSheet) - вроде бы все нормально.Адрес регистра ECCP1CON именно 0xFBA. А когда делаю 0xFFC, то симуляция вообще не идет (так оно и должно быть, т.к. это адрес регистра ECCPR1H).Я немного переделал программу.Сейчас станет все понятно.Можно сказать,что она даже правильно симулируется.Но,посмотрите,пожалуйста,когда потенциометр находится на уровне 0-3% и 97-100%.Такого не выдержит НИ ОДИН полевик.Это получились зоны,когда на обоих каналах высокие уровни.Конечно,это можно устранить программно,отслеживая входное напряжение.Но это - не серьезно.Почему так происходит?
Вы прикрепили какой-то файл с AVR.Что это за файл?
Прикрепленный файл: 2117860.rar
|
|
|
|
08.09.2008, 00:01
|
#6
|
Прописка
Регистрация: 04.08.2006
Сообщений: 139
Сказал спасибо: 12
Сказали Спасибо 12 раз(а) в 11 сообщении(ях)
|
И еще.Не хочется мне использовать такой многовыводный микроконтроллер(пусть даже с ШИМом на борту).Хотелось бы все это реализовать на маленьком 8-ми, ну хотя бы 18-ти ножечном.Это уже программный уровень.Кто сможет - помогите.
|
|
|
|
08.09.2008, 08:24
|
#7
|
Прохожий
Регистрация: 13.10.2005
Сообщений: 6
Сказал спасибо: 3
Сказали Спасибо 1 раз в 1 сообщении
|
В 18f1320 есть аппаратный ШИМ
|
|
|
|
08.09.2008, 09:15
|
#8
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Сообщение от hubble
|
Посмотрел еще раз(стр.49 DataSheet) - вроде бы все нормально.Адрес регистра ECCP1CON именно 0xFBA.
|
А зачем адрес указывать ? Его нет чтоль в .h файле ?
Щас вы вписали ECCP1CON биты 3_0 как я писал по стр 143 вот и работает.
ШИМ нужно ограничить програмно, или АЦП результат ограничить.
======
Прицеп от цитируемого поста !
Прикрепленный файл: 2117860.rar
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
Сказали "Спасибо" avr123-nm-ru
|
|
|
08.09.2008, 09:34
|
#9
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Сообщение от hubble
|
когда потенциометр находится на уровне 0-3% и 97-100%.Такого не выдержит НИ ОДИН полевик.
|
Вы же deattime (паузу) выставили ?! Вот она у вас похоже 3% от периода ШИМ. Значит задавайте ШИМ от 5 до 95 %% например.
Прикрепленный файл: 2117860.rar
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
Сказали "Спасибо" avr123-nm-ru
|
|
|
08.09.2008, 09:56
|
#10
|
Почётный гражданин KAZUS.RU
Регистрация: 13.05.2006
Адрес: Москва
Сообщений: 3,559
Сказал спасибо: 76
Сказали Спасибо 326 раз(а) в 230 сообщении(ях)
|
Есть еще маленькие ATtiny261 ( efind.ru ) - специально для электропривода - там 3 ПАРЫ ШИМ - именно ПАРЫ - т.е. там ни при каких ошибках в проге не может быть высоких уровней на 2 выводах пары. И деттайм тоже регулируется.
пример апноут AVR449 - http://avr123.nm.ru/07.htm
В PROTEUS 7.3 есть модель.
__________________
Обучалка AVR PIC ARM начинающим программирование курс самоучитель шаг за шагом с нуля, CVAVR, PROTEUS, MPLAB, WinAVR, IAR, KEIL электроника - http://proavr.narod.ru
|
|
|
Сказали "Спасибо" avr123-nm-ru
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 22:26.
|
|