Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
27.09.2010, 22:15
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: ШИМ в АТMega8535
Timer/Counter(x) Compare Match - начало импульса
Timer/Counter(x) Overflow - конец импульса
(или наоборот - зависит от настройки выхода) правда не понимаю - зачем они нужны, если мерить средний, а не пиковый ток/напряжение.
Analog Comparator - срабатывание компаратора.
Всё это прерывания. По ним обрабатывайте ошибки и аварии.
PWM ресурсов не требует - значит МК полностью свободен. Вот и меряйте напряжение и ток, моргайте лампочками, опрашивайте кнопки, меряйте температуру и т. д.
Чтобы при обработке одного прерывания не пропустить другое, делается такая простенькая хитрость:
- В прерывании -› адрес обработчика в стек(2 байта)
- reti (включаются прерывания - как по sei) -› МК переходит на обработчик, а по RET после него - к прерванной по прерыванию программе(прошу прощения за тафталогию).
По поводу аппаратной токовой защиты полностью согласен. Всё остальное можно на МК(включая задержку включения). И также МК должен знать, что сработала защита. Внешний PWM в общем-то и не нужен - главное обеспечить нормальное питание МК.
|
|
|
|
27.09.2010, 23:02
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: ШИМ в АТMega8535
Сообщение от omercury
|
Чтобы при обработке одного прерывания не пропустить другое, делается такая простенькая хитрость:
- В прерывании -› адрес обработчика в стек(2 байта)
- reti (включаются прерывания - как по sei) -› МК переходит на обработчик, а по RET после него - к прерванной по прерыванию программе(прошу прощения за тафталогию).
|
Просто поставить sei в начале обработчика не пробовали? Очень знаете помогает. И не приходится каких то шаманских танцев с помещением адресов в стек предпринимать.
|
|
|
|
28.09.2010, 00:10
|
|
Почётный гражданин KAZUS.RU
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
|
Re: ШИМ в АТMega8535
Цитата:
|
правда не понимаю - зачем они нужны, если мерить средний, а не пиковый ток/напряжение.
|
Уже писал что собираюсь мерять средний ток и напряжение для регулировки ШИМа и отображения динамички, а также собираюсь мерять пиковый ток для остановки ШИМа. И если предположить что ШИМ апаратный на контролере то пока на выходе ШИМа есть сигнал контролер не должен ничем заниматься кроме контроля пикового тока. И при возникновении аварии должен максимально быстро среагировать и отключить. А если он в это время будет лопатить динамичку, температуру и еще бог знает чего, то пока он сохранит результаты и начнет обрабатывать прерывания то все точно запылает ясным пламенем.
Цитата:
|
Всё это прерывания. По ним обрабатывайте ошибки и аварии.
|
Это больше чем 4 такта вместе с обработчиком. Есть боязнь что будет медленновато.
Цитата:
|
По поводу аппаратной токовой защиты полностью согласен
|
Так я ж про то. Только раз токовая защита апаратная внешняя то пусть она и ШИМ внешний гасит для которого и предназначена и по идее и скоростя должны обеспечиваться приемлемые.
А на контролер продублирую контроль пикового тока с помощью компаратора, о чем писал ранее.
А вобще есть у кого опыт построения мощных источников на голом контролере.
Так как нашлась модель TL494 то закончу принципиалку выложу, будет о чем предметно говорить.
|
|
|
|
28.09.2010, 00:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: ШИМ в АТMega8535
Сообщение от 7Fantomas7
|
Это больше чем 4 такта вместе с обработчиком. Есть боязнь что будет медленновато.
|
Посмотрите документацию на выбранный ключ. Почти наверняка он в течении 10мкс способен выдержать стократную перегрузку по току. Вы же сможете среагировать в 10 раз быстрее. И проблема будет вообще не в скорости - закрыть ключ через который течет большой ток не так и просто. Также проблема вообще обеспечить стабильную работу микроконтроллера в девайсе, где дофига разных помех.
|
|
|
|
28.09.2010, 14:51
|
|
Временная регистрация
Регистрация: 08.11.2007
Адрес: Омск
Сообщений: 43
Сказал спасибо: 6
Сказали Спасибо 1 раз в 1 сообщении
|
Re: ШИМ в АТMega8535
у ТЛ494 тактовая частота максимум 300 кГц по даташиту, у УЦ3825 - до 1 МГц, притом у последней частотная полоса усилителей ошибки порядка 50 МГц, если не ошибаюсь, и время реакции компараторов гораздо меньше чем у старой и доброй ТЛки. Одно достоинство ТЛки - ДВА усилителя ошибки, можно реализовать сразу токовую и напряженческую петли, правда, пободаться с устойчивостью всё равно придётся. реально применяли КР1156ЕУ2, отечественный аналог УС3825, тактовые выше 500 кГц держит плохо, начинает греться сильно, но времена и полоска на голову выше ТЛки.
|
|
|
Сказали "Спасибо" ramulus
|
|
|
28.09.2010, 19:05
|
|
Гражданин KAZUS.RU
Регистрация: 04.04.2007
Сообщений: 941
Сказал спасибо: 571
Сказали Спасибо 113 раз(а) в 85 сообщении(ях)
|
Re: ШИМ в АТMega8535
Сообщение от 7Fantomas7
|
Это больше чем 4 такта вместе с обработчиком. Есть боязнь что будет медленновато.
|
Правильно догадываешься - потому как если при мин на все будет отведено только 5 тактов , а ведь требуется еще такты на синхронизацию входов в AVRе (он так работает , и не сразу реагирует на изменение напруги на них , а именно тактирует своей тактовой прием Uвх на свои ножки - то есть еще и здесь задержка - не забывать ) да еще и вх-вых в прерывания от компаратора -а(от 4 до 8 тактов не считая тактов на сам обработчик) и ведь еще и принятые данные как минимум за 6-8 тактов обработать нужно ,выключить или включить там что-то, переключить и так далее - нифига не хватит точно !!! Так что все что требует быстроты - на аппаратном железе делайте - мороки никакой и работает превосходно , ну а все остальное - среднее мерять . отображение в индикатор всяких там величин и прочую фигню - на контроллере , для этого он отлично подходит , и кстати не стремитесь построить только на одном контроллере все - для каждого элемента лучше применить его там где он лучше всего себя проявляет , так что без аппаратных схем регуляции в гибриде с контроллером не обойтись если хотите получить действительно ХОРОШЕЕ по параметрам ,характеристикам разрабатываемое Вами устройство , а не "супер-пупер" блок питания или чего там еще размером с пачку спичек - суть ведь в именно хороших параметрах работы Вашего устройства, а не мелкости платки и стремлении все запихнуть в один единственный контроллер для выпендрежа .
__________________
Короче асма кода нет !
Последний раз редактировалось pinco; 28.09.2010 в 19:29.
|
|
|
|
29.09.2010, 00:22
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: ШИМ в АТMega8535
Сообщение от kison
|
Просто поставить sei в начале обработчика не пробовали? Очень знаете помогает. И не приходится каких то шаманских танцев с помещением адресов в стек предпринимать.
|
Не пробовал, но мысль такая - попробовать - уже самому в голову пришла... ![Смущение](images/smilies/icon_redface.gif) а "хитрость" ещё с Z80.
Сообщение от 7Fantomas7
|
Цитата:
Всё это прерывания. По ним обрабатывайте ошибки и аварии.
Это больше чем 4 такта вместе с обработчиком. Есть боязнь что будет медленновато.
|
А опрашивать компаратор в цикле быстрее?
Сообщение от 7Fantomas7
|
А на контролер продублирую контроль пикового тока с помощью компаратора
|
Зачем с компаратора? С аппаратной защиты - на то же прерывание(INT0-INT2).
Сообщение от alexgap
|
Взяли слишком маленький контроллер, в 8 Кб может влезьт, но с запихыванием ботинком сверху.
|
Эт чего ж туда напихать надо, чтобы 8к не хватило? Весь проект на килобайт, ну, максимум, 2..
|
|
|
|
29.09.2010, 01:47
|
|
Гражданин KAZUS.RU
Регистрация: 08.07.2006
Сообщений: 886
Сказал спасибо: 119
Сказали Спасибо 1,110 раз(а) в 177 сообщении(ях)
|
Re: ШИМ в АТMega8535
Сообщение от omercury
|
Эт чего ж туда напихать надо, чтобы 8к не хватило? Весь проект на килобайт, ну, максимум, 2.
|
А вы пробовали похожий проект делать? Я - да. Снаружи все выглядит легко и просто - но чтобы обеспечить безупречную работу приходится еще много чего добавлять к базовым алгоритмам, особенно в плане обработки всяких неприятных ситуаций и код постепенно из 1 кБ превращается в 8 с намерением вырасти еще.
__________________
.
![](signaturepics/sigpic59615_7.gif)
В мире всего два типа людей: те у кого был ZX Spectrum, и те у кого его не было.
|
|
|
|
29.09.2010, 02:01
|
|
Почётный гражданин KAZUS.RU
Регистрация: 24.09.2007
Сообщений: 1,437
Сказал спасибо: 287
Сказали Спасибо 339 раз(а) в 202 сообщении(ях)
|
Re: ШИМ в АТMega8535
Цитата:
|
А опрашивать компаратор в цикле быстрее?
|
Очень наврядле. В принципе такты особо не считал пока, а послушал рекомендации и тупо принял на веру, не очень заморачиваясь расчетами потому как пока ваяю принципиалку. Буду симулировать буду считать, возможно и принципиалка изменится.
Цитата:
|
Зачем с компаратора? С аппаратной защиты - на то же прерывание(INT0-INT2).
|
Ну во первых заняты пины, можно былоб конечно освободить но тогда необходимо будет формировать импульс на эти входа, а уровни разные да и нет специализированого выхода с шима, я остановился на UC3845. А так с трансформатора тока возьму и через уже отработаную RC цепь с диодом подам на компаратор, так будет проще.
Цитата:
|
А вы пробовали похожий проект делать?
|
Я нет. Без контролера делал, а это первый.
Цитата:
|
и код постепенно из 1 кБ превращается в 8 с намерением вырасти еще
|
Не влезет поставлю 16Мегу.
Не влезет опять поставлю 128Мегу, тогда точно влезет хотя и жалко мне ее будет сюда пхать, просто у меня эти камни есть.
Пока проблемы с симуляцией UC3845 которые описал в ветке протеуса "Общие вопросы".
|
|
|
|
29.09.2010, 03:15
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,982
Сказал спасибо: 0
Сказали Спасибо 4,941 раз(а) в 2,370 сообщении(ях)
|
Re: ШИМ в АТMega8535
а что мешает разбить задачу на 2 части?
пусть ATTiny2313 занимается индикацией, клавиатурой, опросом датчиков Т, а второй процессор - управлением/контролем силовых узлов.
общение между прцессорами можно осуществлять через UART.
чуть дороже, но узел индикации можно отнести на большое расстояние.
и чего за шим уцепились? цифровые потенциометры вместо шим, фильтрация отпадает. дороже? ну так вы ж не мухобойку делаете ![Улыбка](images/smilies/icon_smile.gif) иль партия 10Е12? ![Очень смешно](images/smilies/icon_veryhappy.gif)
а если не скупиться, то наверняка на PIC24/dsPIC3x эта задача ляжет - быстрее они и периферии поболе
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:17.
|
|