USB контроллер шагового двигателя

Схема


ПБМГ-200-265
Тип двигателя: Шаговый, униполярный.
Угол поворота за один шаг: 1.8 градуса.
Количество шагов на полный оборот вала: 200.
Количество выводов: 6.
Количество обмоток: 2 со средней точкой.
Напряжение питания: 12В.
Сопротивление обмоток: 70Ом.
Потребляемый ток: 0,17А.

Обозначение выводов шагового двигателя
Черный: Общий
Белый: Общий
Красный: 1
Желтый: 2
Зеленый: 3
Синий: 4

 Внешний вид формы
 
 
Текст программы микроконтроллера
 
include "c:\Program Files\Atmel\AVR Tools\AvrAssembler2\Appnotes\m8535def.inc"
 
.def t1      =r16                                ;байт RXС
.def temp    =r17                                                
;=========================================================         
.MACRO outi
                   ldi r16,@1
                   out @0,r16
.ENDMACRO
;=========================================================
.org 0x00
                   rjmp RESET
.org URXCaddr
;=========================================================
UART_RXC:
                   in t1,UDR                     ;чтение байта
                   out PORTA,t1
reti
;=========================================================
RESET:      wdr                                  ;сброс сторожевого таймера
                   ldi temp,0x0A                 ;Watchdog enable, 64mS
                   out WDTCR,temp
                   ldi temp,HIGH(RAMEND)         ;определение начала стека в ОЗУ
                   out SPH,temp                                 
                   ldi temp,LOW(RAMEND)              
                   out SPL,temp
;Настройка порта:
                   ser     temp                  ;temp = 0xFF
                   out    DDRC,temp              ;все линии порта С выходы
                   clr temp                      ;temp = 0x00
                   out    DDRD,temp              ;все линии порта D входы
                   rcall uart_init
;Разрешение прерываний              
                   sei                           ;установка бита I в SREG
;=========================================================
Loop:         wdr                                ;сброс сторожевого таймера
rjmp Loop
 
;=========================================================
uart_init:
 
.equ XTAL = 16000000
.equ baudrate = 9600
.equ bauddivider = XTAL/(16*baudrate)-1
 
outi UBRRL,low(bauddivider)                      ;set baud rate
outi UBRRH,high(bauddivider)
outi UCSRA,0                                     ;no U2X, MPCM
outi UCSRC,1<<URSEL|3<<UCSZ0                     ;8 Bit
outi UCSRB,1<<RXEN|1<<TXEN|1<<RXCIE              ;включить RX, TX
ret

Скачать файлы проекта для AVR Studio 4 (42,9 KB)
Скачать файлы проекта для Delphi 7 (185 KB)
Скачать драйвер и прошивку AT90S2313 (41,8 KB)