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

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

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

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

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

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

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

 
Опции темы
Непрочитано 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.RU
 
Аватар для MaxiMuz79
 
Регистрация: 06.04.2010
Адрес: Санкт-Петербург - Волжский
Сообщений: 529
Сказал спасибо: 74
Сказали Спасибо 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, время: 21:00.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot