Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR...

 
Опции темы

ШИМ на attiny13

Непрочитано 29.05.2013, 14:34  
ev_genui
Прохожий
 
Регистрация: 29.05.2013
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ev_genui на пути к лучшему
По умолчанию ШИМ на attiny13

привет всем, может кто помочь, необходим шим на attiny13. работать должен так:
использую 1-н вход 1-выход. пока на вход подается "0" на выходе импульсы в 1мс с периодом в 20 мс. как на вход подаю "1" необходимо чтобы длительность импульса плавно изменилась на 2 мс. за 5 секкунд, и при подаче "0" на вход,длительность импульса так же в течении 5с. изменилась на 1мс . Другими словами необходимо чтобы скважность менялась постепенно(за 3-5с) от 1 мс. до 2мс. и интервал между импульсами должен быть 20мс.
может кто нибудь исправить мою прогу на то что нужно?
http://www.fayloobmennik.net/2893356
Реклама:
ev_genui вне форума  
Непрочитано 29.05.2013, 15:16  
chipssss
Временная регистрация
 
Регистрация: 08.06.2009
Сообщений: 93
Сказал спасибо: 97
Сказали Спасибо 109 раз(а) в 34 сообщении(ях)
chipssss на пути к лучшему
По умолчанию Re: ШИМ на attiny13

код ф студию, а не сцылку на лево...
chipssss вне форума  
Непрочитано 29.05.2013, 16:16  
ev_genui
Прохожий
 
Регистрация: 29.05.2013
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ev_genui на пути к лучшему
По умолчанию Re: ШИМ на attiny13

Сообщение от chipssss Посмотреть сообщение
код ф студию, а не сцылку на лево...

#include ‹tiny13.h›
#include ‹delay.h›

// Declare your global variables here

void main(void)
{
// Declare your local variables here

// Crystal Oscillator division factor: 1
#pragma optsize-
CLKPR=0x80;
CLKPR=0x00;
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

// Input/Output Ports initialization
// Port B initialization
// Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=In
// State5=0 State4=0 State3=0 State2=0 State1=0 State0=P
PORTB=0x01;
DDRB=0x3E;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0A output: Disconnected
// OC0B output: Disconnected
TCCR0A=0x00;
TCCR0B=0x00;
TCNT0=0x00;
OCR0A=0x00;
OCR0B=0x00;

// External Interrupt(s) initialization
// INT0: Off
// Interrupt on any change on pins PCINT0-5: Off
GIMSK=0x00;
MCUCR=0x00;

// Timer/Counter 0 Interrupt(s) initialization
TIMSK0=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
ACSR=0x80;
ADCSRB=0x00;

while (1){
if (!PINB.0){ //Кнопка нажата
PORTB.1 = 1;
delay_ms(1);
PORTB.1 = 0;
delay_ms(19);
}
else{ //Кнопка отпущена
PORTB.1 = 1;
delay_ms(2);
PORTB.1 = 0;
delay_ms(1;
}
};
}

Последний раз редактировалось ev_genui; 29.05.2013 в 16:27.
ev_genui вне форума  
Непрочитано 29.05.2013, 16:28  
MaxiMuz79
Гражданин KAZUS.RUN
 
Аватар для MaxiMuz79
 
Регистрация: 06.04.2010
Адрес: Санкт-Петербург - Волжский
Сообщений: 528
Сказал спасибо: 73
Сказали Спасибо 56 раз(а) в 45 сообщении(ях)
MaxiMuz79 на пути к лучшему
По умолчанию Re: ШИМ на attiny13

ev_genui, частота камня какая ?
MaxiMuz79 вне форума  
Непрочитано 29.05.2013, 16:30  
ev_genui
Прохожий
 
Регистрация: 29.05.2013
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ev_genui на пути к лучшему
По умолчанию Re: ШИМ на attiny13

9,6 мгц. использую внутренний генератор
ev_genui вне форума  
Непрочитано 29.05.2013, 16:45  
chipssss
Временная регистрация
 
Регистрация: 08.06.2009
Сообщений: 93
Сказал спасибо: 97
Сказали Спасибо 109 раз(а) в 34 сообщении(ях)
chipssss на пути к лучшему
По умолчанию Re: ШИМ на attiny13

это что, сервотестер?
Вам будет проще вывести кнопки "+" и "-" ...
в РРМ сигнале длительность последовательности строго не регламентирована, так как зависит от длительности сигнала каждого импульса в пакете.
делаем паузу 15-18 мс а кнопками меняем длительность единицы
а еще есть апаратный шим...

Последний раз редактировалось chipssss; 29.05.2013 в 16:49.
chipssss вне форума  
Непрочитано 29.05.2013, 16:50  
ev_genui
Прохожий
 
Регистрация: 29.05.2013
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ev_genui на пути к лучшему
По умолчанию Re: ШИМ на attiny13

нет не тестер, но управлять сервомашинкой собираюсь, в макет пойдет. и + и - не получится, там вместо кнопки я использую сигнал с контроллера
ev_genui вне форума  
Непрочитано 29.05.2013, 17:02  
chipssss
Временная регистрация
 
Регистрация: 08.06.2009
Сообщений: 93
Сказал спасибо: 97
Сказали Спасибо 109 раз(а) в 34 сообщении(ях)
chipssss на пути к лучшему
По умолчанию Re: ШИМ на attiny13

Код:
while (1){

 int temp=1000;

if (!PINB.0){ //Кнопка нажата
  if(temp‹2000)temp+=20;
PORTB.1 = 1;
 delay_us(temp);
PORTB.1 = 0;
delay_ms(19);
}
else{ //Кнопка отпущена
 if(temp›1000)temp-=20;
PORTB.1 = 1;
 delay_us(temp);
PORTB.1 = 0;
delay_ms(1;
}
};
мож както так

а вобще нада использовать апаратный шим, а в основном цикле изменять эту самую длительность плюс защита от дребезга и т.д.

Последний раз редактировалось chipssss; 29.05.2013 в 17:16.
chipssss вне форума  
Непрочитано 29.05.2013, 17:50  
ev_genui
Прохожий
 
Регистрация: 29.05.2013
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ev_genui на пути к лучшему
По умолчанию Re: ШИМ на attiny13

Спасибо. вот так сделал:
while (1){
if (!PINB.0){ //Кнопка нажата

if (delay›1000) delay-=10;
PORTB.1 = 1;
delay_us(delay);
PORTB.1 = 0;
delay_us(20000-delay);
}
else{ //Кнопка отпущена
if (delay‹2000) delay+=10;
PORTB.1 = 1;
delay_ms(delay);
PORTB.1 = 0;
delay_ms(20000-delay);
}
};
}
ev_genui вне форума  
Непрочитано 29.05.2013, 17:51  
ev_genui
Прохожий
 
Регистрация: 29.05.2013
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
ev_genui на пути к лучшему
По умолчанию Re: ШИМ на attiny13

а дребезг зачем я кнопок не ставлю, беру сигнал с контроллера вместо кнопки.
ev_genui вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Fast ШИМ на ATTiny13 с переменным TOP ajsn AVR 2 23.04.2013 18:40
Режимы сна Атмега-8 putmannn AVR 123 08.03.2013 15:30
ШИМ в STM32F4 sosedi Микроконтроллеры, АЦП, память и т.д 5 15.08.2012 12:20
Управление Сервой Mg995 Через Аппаратный Шим Vyazikov Микроконтроллеры, АЦП, память и т.д 16 06.04.2012 21:06
ШИМ на Attiny13 Daget Микроконтроллеры, АЦП, память и т.д 8 03.04.2011 00:29


Часовой пояс GMT +4, время: 13:03.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.