реклама на сайте
подробности

 
 
> регулятор мощности на AT90S2313, не получается плавно регулировать
валеравал
сообщение Apr 2 2006, 08:38
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 28-05-05
Пользователь №: 5 503



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

подпрограмма обработки внешнего прерывания выгляди так в CVAVR:
interrupt [EXT_INT0] void ext_int0_isr(void)
{
#asm("cli")

PORTB.4=1;
for (i=0; i<=k; i++)
{
delay_us(1); //регулировка мощности
}
PORTB.4=0;
delay_us(100);
PORTB.4=1;


#asm("sei")
}

основная программа бесконечный цикл
while (1)
{
k1=PIND.3;
if (k1==0) {
#asm("cli")
delay_us(30);
// #asm("sei")
k=k+1;
if (k>=3500) k=3500;
#asm("sei")



};
k2=PIND.1;

if (k2==0) { #asm("cli")
delay_us(30);
// #asm("sei")
k=k-1;
if (k<=30) k=30;
#asm("sei")
};
// Place your code here
}
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
WHALE
сообщение Apr 2 2006, 09:50
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768



В данном случае [/b]Starick[b] прав-зависимость сильно нелинейная.Я для такой задачи экспереминта-
льно составил регулировочную таблицу в виде массива и по нажатию кнопок увеличивал-уменьшал
индекс.И по стилю написания-очень сильно некрасиво и неоптимально,куча лишних и неоптимальных
команд-почитай книги по С.И еще-у тебя нет подавления дребезга кнопок-здесь тоже может быть баг.


--------------------
"Hello, word!" - 17 errors 56 warnings
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- валеравал   регулятор мощности на AT90S2313   Apr 2 2006, 08:38
- - beer_warrior   Ну во-первых, честно-ли фиксируеться переход через...   Apr 2 2006, 09:09
|- - валеравал   Цитата(beer_warrior @ Apr 2 2006, 12:09) ...   Apr 2 2006, 11:20
- - Starick   Уважаемый, а он и небудет плавно регулировать. Так...   Apr 2 2006, 09:19
|- - валеравал   Цитата(Starick @ Apr 2 2006, 12:19) Уважа...   Apr 2 2006, 09:47
||- - acex2   Цитата(валеравал @ Apr 2 2006, 06:47) а к...   Apr 2 2006, 09:50
||- - =AK=   Цитата(acex2 @ Apr 2 2006, 19:20) Отдавае...   Apr 2 2006, 10:05
||- - acex2   Цитата(=AK= @ Apr 2 2006, 07:05) Цитата(a...   Apr 2 2006, 13:27
||- - defunct   Цитата(acex2 @ Apr 2 2006, 15:27) Мне каж...   Apr 2 2006, 14:53
|- - =AK=   Цитата(Starick @ Apr 2 2006, 18:49) Уважа...   Apr 2 2006, 09:49
- - Kovrov   Цитата(валеравал @ Apr 2 2006, 11:38) хоч...   Apr 2 2006, 10:50
- - WHALE   А автор топика вроде говорил именно про регулировк...   Apr 2 2006, 10:52
- - beer_warrior   Да хоть бы и в обработчике перехода нуля, правда ...   Apr 2 2006, 12:32
- - WHALE   В CV функция delay_us() -это библиотечная функция,...   Apr 2 2006, 12:53
- - Laksus   Цитата... но не получается плавно регулировать мож...   Apr 2 2006, 19:43
- - ZiB   я собирал много канальный (8 каналов) регулятор мо...   Apr 3 2006, 03:53
- - Starick   [quote name='defunct' date='Apr 2 2006...   Apr 3 2006, 07:44
|- - defunct   Цитата(Starick @ Apr 3 2006, 09:44) Цитат...   Apr 3 2006, 22:12
- - Kovrov   а ещё неплохо было бы сделать защиту в детекторе н...   Apr 3 2006, 15:35
- - Zond   Посмотри вот здесь - www.telesys.ru/projects/proj1...   Apr 3 2006, 20:17


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 22:12
Рейтинг@Mail.ru


Страница сгенерированна за 0.01399 секунд с 7
ELECTRONIX ©2004-2016