реклама на сайте
подробности

 
 
> На пути к робототехнике, Подскажите как управлять сервомашинкой
Costia
сообщение Jul 5 2008, 18:43
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 24
Регистрация: 23-06-08
Пользователь №: 38 507



Будьте добры помогите разобраться с управлением сервомашинки .

Использую сервомашинку ( ACE RC C1016 )
Питаю от USB управляющий сигнал беру прямо с ножки PORTA.0
МК ATmega16 тактовая частота 1 mHz
Информацию брал с http://vtpablos.narod.ru/robots/servotester/

Задача кода ШИМ на PORTA.0 ( скважность 0.9 мс . частота 20 мс )


.include"m16def.inc"
.list

.cseg
.org 0

ldi r16, high(RAMEND)
out SPH, r16
ldi r16, low(RAMEND)
out SPL, r16


ldi r16, 255
out DDRA, r16
out DDRB, r16

rj0: ldi r16, 224
sbi PORTA, 0

rj1: dec r16
breq rj2
rjmp j1

rj2: cbi PORTA, 0

ldi r16, 20
rj3: dec r16
breq rj0
ldi r17, 250
rj4: dec r17
breq rj3
rjmp rj4





Забыл сказать что на выше изложенные действия машинка не реагирует...

Сообщение отредактировал Costia - Jul 5 2008, 18:46
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Costia
сообщение Jul 6 2008, 07:27
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 24
Регистрация: 23-06-08
Пользователь №: 38 507



да это опечатка . Что касается кто меня так учил то это не законченный девайс а просто способ пошевелить сервомашинкой. И даже с моей бурной фантазией мне ложно представить что будет ( учитывая что прерывания отключены = )
Код
        ldi    r16,    255
        out    DDRA,    r16
        out    DDRB,    r16
    
rj0:    ldi    r16,    224
        sbi    PORTB,    0   //устанавливаю лог 1 на ножке = )

rj1:    dec    r16            // задежка 0.9 мс
        breq    rj2
        rjmp    rj1

rj2:    cbi    PORTB,    0        //лог 0 на ножке

        ldi    r16,    20    //задержка 19.1 мс
rj3:    dec    r16
        breq    rj0
        ldi    r17,    250
rj4:    dec    r17
        breq    rj3
        rjmp    rj4


Сообщение отредактировал Costia - Jul 6 2008, 07:37
Go to the top of the page
 
+Quote Post
VDG
сообщение Jul 6 2008, 12:00
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 845
Регистрация: 10-02-06
Пользователь №: 14 193



Цитата(Costia @ Jul 6 2008, 11:27) *
да это опечатка . Что касается кто меня так учил то это не законченный девайс а просто способ пошевелить сервомашинкой.

Вам же сказали уже - не хватает loop-а.
Код
loop:
;...
; ваш код
;...
  rjmp loop


--------------------
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 06:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.01374 секунд с 7
ELECTRONIX ©2004-2016