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

 
 
8 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> жутко глючит мк, помогите пожалуйста
_Ivan_33
сообщение Apr 20 2008, 11:10
Сообщение #1


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



Здравствуйте уважаемые разработчики!!!
помогите пожалуста начинающему
делаю бегущие огни
прошивку почти написал
но проблема в том, что когда я ставлю delay_ms(...) то время указанное в скобках будет не такое, а будет хаотично (при подключенной переменке) и все будет норм если просто подключен светодиод
мк - attiny2313
частота внутренняя 1 МГц
суть устройства: мк управляет с помощью симисторов цепями лампочек которые мигают, медленно включаются и выключаются в определенной последовательности
схема питания - блок питания на выходе 10 вольт - конденсатор 470 мкф 25 вольт на землю - кренка - кондер 22 мкф на 63 вольта на землю - кондер 0,1 мкф на землю - сам мк
схема управления - нога мк - резистор 330 ом - оптопара moc3021 - симистор - с одной стороны цепь лампочек с другой вывод переменки и на лампочке еще 1 вывод переменки
схема обнаружения 0 на переменке (ну чтоб определить момент когда мгновенное напряжение в переменке равна 0) - фаза переменки - резистор 560 ком - диод 1n4107 - нога мк...

помогите пожалуйста!!!! я уже с этим около месяца копошусь!!!

Сообщение отредактировал _Ivan_33 - Apr 20 2008, 11:12


--------------------
Go to the top of the page
 
+Quote Post
sKWO
сообщение Apr 20 2008, 11:20
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 355
Регистрация: 27-03-07
Из: Україна, Чуднів
Пользователь №: 26 530



Цитата(_Ivan_33 @ Apr 20 2008, 14:10) *
но проблема в том, что когда я ставлю delay_ms(...) то время указанное в скобках будет не такое, а будет хаотично (при подключенной переменке) и все будет норм если просто подключен светодиод

А можно код увидеть? И как Вы используете пересечение нуля?
Может от него и надо плясать?
И почему собственно глюки МК?


--------------------
нельзя недооценивать предсказуемость глупости
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение Apr 20 2008, 11:26
Сообщение #3


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



.....
с помощью этого кода я хочу узнать как плавно лампочку загорать

Moderator:
Воспользуйтесь форматированием кода.

Сообщение отредактировал zltigo - Apr 20 2008, 11:34


--------------------
Go to the top of the page
 
+Quote Post
sKWO
сообщение Apr 20 2008, 11:36
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 355
Регистрация: 27-03-07
Из: Україна, Чуднів
Пользователь №: 26 530



Цитата(_Ivan_33 @ Apr 20 2008, 14:26) *
#include <tiny2313.h>
#include <delay.h>
void main(void) {DDRB=4;
DDRA.1=0;
while(1) {
PORTB=4;
delay_ms(3000);
if (PINA.1==0x00)
{PORTB=0;};
с помощью этого кода я хочу узнать как плавно лампочку загорать

С помощью этого кода не получится, алгоритм не верный.
Такой алгоритм будет работать только в синхронном режиме с частотой сети.
Нольпересечение у Вас обрабатывается в цикле и с какого момента лампочка начинает гореть - предсказать невозможно, такое моё видение


--------------------
нельзя недооценивать предсказуемость глупости
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение Apr 20 2008, 11:37
Сообщение #5


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



Код
#include <tiny2313.h>
#include <delay.h>
void main(void) {DDRB=4;
DDRA.1=0;
while(1) {
PORTB=4;
delay_ms(3000);
if (PINA.1==0x00)
{PORTB=0;};
delay_ms(20);
if (PINA.1==0x00)
{PORTB=4;};
delay_ms(250);
if (PINA.1==0x00)
{PORTB=0;};
delay_ms(20);
if (PINA.1==0x00)
{PORTB=4;};
delay_ms(350);
if (PINA.1==0x00)
{PORTB=0;};
delay_ms(30);
if (PINA.1==0x00)
{PORTB=4;}
delay_ms(450);
if (PINA.1==0x00)
{PORTB=0;}
delay_ms(20);
if (PINA.1==0x00)
{PORTB=4;};
delay_ms(550);
if (PINA.1==0x00)
{PORTB=0;};
delay_ms(20);
if (PINA.1==0x00)
{PORTB=4;};
delay_ms(700);};}

- вот так?
извините но если не так
а переход через нуль использую для включения канала - чтоб не было помех

Сообщение отредактировал zltigo - Apr 20 2008, 11:39


--------------------
Go to the top of the page
 
+Quote Post
domowoj
сообщение Apr 20 2008, 11:39
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Это не глюк, а помехи от включения симистора.
Ставишь транс по питанию, по выходу опторазвязка,
а переход через 0 делаешь - гальванически соединяешь с фазой???

И вообще, схемку бы.
Обычно переход фиксируют по прерыванию.

Сообщение отредактировал domowoj - Apr 20 2008, 11:42


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
tazik
сообщение Apr 20 2008, 11:51
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 195
Регистрация: 13-05-07
Из: Норильск
Пользователь №: 27 691



Посмотрите здесь

AVR182: Zero Cross Detector
AVR040: EMC Design Considerations

По крайней мере, детектирование нуля Атмел предлагает делать немного иначе.
В принципе, для детектирования нуля можно цепляться к напряжению вторичной обмотки трансформатора - так безопасней будет

Сообщение отредактировал tazik - Apr 20 2008, 11:55
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение Apr 20 2008, 11:53
Сообщение #8


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



транс - трансформатор?
у меня самодельный блок питания на трансворматоре
при переходи через 0 у меня включается канал лампочек чтоб помех не было
а по выходу опторазвяка была!


--------------------
Go to the top of the page
 
+Quote Post
Amper25
сообщение Apr 20 2008, 12:01
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 215
Регистрация: 10-04-07
Пользователь №: 26 929



При переходе через 0 не надо включать лампы. При переходе, надо сбрасывать счетчик, который считает время до включения.

Если в 0 включать симисторы, то выключатся они только при следующем 0.
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение Apr 20 2008, 12:04
Сообщение #10


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



у меня нет никакого счетчика


--------------------
Go to the top of the page
 
+Quote Post
domowoj
сообщение Apr 20 2008, 12:11
Сообщение #11


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Цитата(_Ivan_33 @ Apr 20 2008, 19:04) *
у меня нет никакого счетчика

Счетчик есть он програмный (delay_ms(30);- вот например)
и включать его надо в момент перехода через 0.


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение Apr 20 2008, 12:15
Сообщение #12


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



а напишите мне пожалуйста буквально 3 строчки кодла как это будет выглядеть


--------------------
Go to the top of the page
 
+Quote Post
domowoj
сообщение Apr 20 2008, 12:34
Сообщение #13


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



К сожалению с СИ я на ВЫ,
а на словах-
таймер в реж. ШИМ синхронизируется (сбрасывается в 0) переходом через 0,
в OCR0x записываешь число соответствующее нужной яркости, вывод OC0x на вых. - управление симистором, чтобы максимально использовать таймер нужно чтобы частота ШИМ была близка к 100Гц-
подстройка через OSCCAL , можно автоматически , можно вручную.

Сообщение отредактировал domowoj - Apr 20 2008, 12:36


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
_Ivan_33
сообщение Apr 20 2008, 12:59
Сообщение #14


fpga designer
****

Группа: Свой
Сообщений: 613
Регистрация: 20-04-08
Из: Зеленоград
Пользователь №: 36 928



если вы с СИ на вы то я с ним незнаком...
учился на курсе avr

можно поподробнее а то для меня это ничего не значится
или где об этом почитать


--------------------
Go to the top of the page
 
+Quote Post
tazik
сообщение Apr 20 2008, 13:07
Сообщение #15


Частый гость
**

Группа: Свой
Сообщений: 195
Регистрация: 13-05-07
Из: Норильск
Пользователь №: 27 691



Иван, а у Вас какая тактовая частота МК?
Go to the top of the page
 
+Quote Post

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

 


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


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