Главная » Статьи » Программирование » Программирование в BascomAVR

Управляем моторами с помощью L293D
   На нашем контроллере есть микросхема L293D, вот её та мы сейчас и задействуем. Подключим один мотор к ней на выводы M1. In1 на PD2, In2 на PD3 и En1 на PD4. При таком подключение мы сможем управлять скоростью моторов, если это не требуется, то вывод En1 нужно подключить на +5 вольт. Пишем программу:

Code
$regfile = "m16def.dat"                                     ' файл спецификации Меги16
$crystal = 16000000                                         ' указываем на какой частоте будем работать

'----------------------------------------------------------------------------
Config Timer1 = Pwm , Pwm = 8 , Prescale = 256 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
Config Pind.2 = Output : R Alias Portd.2                    'ногу сконфигурировали как выход и обозвали R
Config Pind.3 = Output : L Alias Portd.3                    'ногу сконфигурировали как выход и обозвали L
Config Pind.4 = Output                                      'ногу ШИМа  сконфигурировали как выход
'----------------------------------------------------------------------------
Dim Speed As Byte

Speed = 80                                                  ' задаём скорость мотору

Do
  R = 1 : Pwm1b = Speed                                     'вращаем в одну сторону 3 секунды
  Wait 3

  R = 0 : Pwm1b = 0                                         'остановка мотора на 3 секунды
  L = 0 : Pwm1b = 0
  Wait 3

  L = 1 : Pwm1b = Speed                                     'вращаем в другую сторону 3 секунды
  Wait 3

  R = 0 : Pwm1b = 0                                         'остановка мотора на 3 секунды
  L = 0 : Pwm1b = 0
  Wait 3
Loop


Так как мы используем аппаратный шим, то должно учитываться, что максимальная скорость(Переменная Speed) будет при значение 255. Ну и больше тут добавить не чего. Программа довольно простая.

Ссылка на предыдущую статью.

Ссылка на следующую статью.

Ссылка на скачивание исходника и прошивки.


Источник: www.enore.ru
Категория: Программирование в BascomAVR | Добавил: Space (31.01.2011) | Автор: Кирилл E W
Просмотров: 1987 | Теги: шим, как управлять моторами, скорость моторов, l293d
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]