роботы робототехника микроконтроллеры


 Страниц (2): « 1 [2]   

> Без описания
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



Не буду спорить, мой инглиш этого не позволяет, я и встрял то как раз потому что тоже не очень понимаю как устроен аппаратный шим на авээрках. (по моему у них строгая пила-подъем, спуск.)
 
 Top
mihail Post Id



Гуру


Сообщений всего: 1065
Дата рег-ции: Март 2010  



Программный ШИМ. Сначала плавно увеличивается от 0% до 100%. Достигнув максимального значения начинает плавно уменьшаться от 100% до 0%. Затем все повторяется снова. Жалкое подобие аппаратного Fast PWM. Настоятельно рекомендуется компилировать при нулевой степени оптимизации.
/*******************************************
Program : pwm
Compiler : AVR GCC
Chip type : ATmega8
System Clock : 1 MHz
*******************************************/

#include <avr/io.h>

int main(void)
{
unsigned char i = 0;
unsigned char j = 0;

unsigned char flag = 0;

unsigned char pwm = 0;

DDRD = 0b00000001; // PD0 out
PORTD = 0b00000000; // PD0 "0"

for(;;)
{
PORTD |= 0b00000001; // PD0 "1"

i = 0;
while( i != 255 )
{
if ( i == pwm )
{
PORTD &= 0b11111110; // PD0 "0"
}

i += 1;

// --- begin delay ---
j = 0;
while( j != 20 )
{
j += 1;
}
// --- end delay ---
}

if ( flag == 0 ) pwm += 5;
if ( flag == 1 ) pwm -= 5;
if ( pwm == 255 ) flag = 1;
if ( pwm == 0 ) flag = 0;
}

return 0;
}

(Добавление)
Реальное устройство имеет ограничения на частоту ШИМ. Это необходимо учитывать. Иначе устройство сломается.
 
 Top
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



Почему это 1Мгц у меги8? Вроде 8 как раз и должно быть?
 
 Top
mihail Post Id



Гуру


Сообщений всего: 1065
Дата рег-ции: Март 2010  



В данном случае это неважно. Это порождение моего сумрачного гения создает ШИМ на PD0 без использования какой либо периферии МК. Микроконтроллер может быть любым. Хоть ATtiny2313. Тогда в программе потребуется изменить лишь строчку комментария указывающую на используемый МК.
(Добавление)
От реальной частоты МК зависит частота ШИМ. После программы я написал о важности этого параметра. Сам я никаких расчетов не проводил. Тут многое зависит от используемого железа. Например, драйвера двигателя.
 
 Top
Perdimonocle Post Id


Лейтенант


Сообщений всего: 20
Дата рег-ции: Дек. 2010  



mihail, огромное спасибо!
 
 Top
cjA Post Id



Генерал


Сообщений всего: 3291
Дата рег-ции: Янв. 2010  



Ну так если это внешний кварц- покажи тогда и как фьюзы выставить. Ну и мэйкфайл кидай.
("сумрачный гений", зописал, хе-хе)
(Добавление)
Вообщето, да, у моторов очень большая индуктивность, шимиться они будут максимум на звуковых частотах.
(Добавление)
У коллекторных моторов, шаговики больше с шимом дружат...
 
 Top
Страниц (2): « 1 [2]
« С чего начать? »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown
  Яндекс.Метрика   Рейтинг@Mail.ru