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

 
 
> таймер в таймере или шим в шиме, помогите исходничком
Maks321
сообщение Sep 7 2009, 20:17
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 6-05-08
Пользователь №: 37 328



ситуация такая: контролер -мега8
нужно сделать от 2 до 10 импульсов в одном такте PWM сигнала. частоты пвма в пределах от 40гц до 5Кгц ,осцилограмму нужно получить примерно такую

простыми задержками по мсекундам никчему не привела(съела весь ресурс),запустить или остановить 2й таймер из-под прерывания первого тож не получилось. можно конешно на 2 выхода повесить логику 2И , но чтото мне подсказывает что это логика есть в контролере.
мой исходник щас на уровне инициализации, такчто и выложить на обозрение нечего sad.gif
сильно не пинайте, процессоры только начал программить .

Сообщение отредактировал Maks321 - Sep 7 2009, 20:20
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Maks321
сообщение Sep 11 2009, 14:38
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 6-05-08
Пользователь №: 37 328



датащит был прочитан по диагонали, получилась вот такая штука, таймер2 на 2кгц
Код
#pragma interrupt_handler timer2_ovf_isr:5
void timer2_ovf_isr(void)
{
TCNT2 = 0x83; //reload counter value
    if (a5 < q2) {
       if (a4 < q4) { a4++; PORTD = 0xFF;} else {PORTD = 0x00;  
        if (a3 < q3-1) a3++; else {a4=0;a3=0;}}
        a5++;} else
    if (a1 < q1-1) a1++; else {a1=0;a5=0;a3=0;a4=0;}
}
void pwm()
{
a1=0;a2=0;a3=0;a4=0;a5=0; // peremennue schota
q1 = 10; //pausa mejdu paketami
q3 = 3; // pausa mejdu impulsami
q4 = 2; // dlinna impulsa
q5 = 5;   // kolichestvo impulsov
q2 = (q3+q4)*q5; // dlina impulsnogo paketa
}

мои дельфовые припарации сильно замедлят процесор? или всеже я могу расчитывать макс частоту в 1 кгц?

Сообщение отредактировал Maks321 - Sep 11 2009, 14:39
Go to the top of the page
 
+Quote Post



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

 


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


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