1 / 4
文档名称:

舵机控制原理1.doc

格式:doc   页数:4
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

舵机控制原理1.doc

上传人:n22x33 2012/10/25 文件大小:0 KB

下载得到文件列表

舵机控制原理1.doc

文档介绍

文档介绍:;********************************************
; SL-DIY-02-1 通用伺服电机(舵机)实验
; 通用伺服电机(舵机)来回摆动基本工作原理
; 当单片机信号是1ms正脉冲时,通用伺服电机转向0度位置
; ,通用伺服电机转向-60度位置
; 当单片机信号是2ms正脉冲时,通用伺服电机转向+60度位置
; 注意:不同伺服电机控制时序及转动角度是不同的,最好自已实际测试。
; 不同伺服电机控制速度指标也不同,应按技术说明书研究处理。
;********************************************
;* AT90S8515 8MHz
;* PB0 输出舵机信号
;* 双龙电子
;*
;********* SLLG@ **************
;********************************************
.include "" ; 器件配制文件, 本实验使用AT90S8515
.def dt = r22 ; 定义dt等于r22
.org $000 ; 程序首地址
rjmp reset4 ; 跳过中断区

.org $010 ; 主程序首地址,注意,不同器件的中断地址范围是不同的!
reset4:
ldi r17,$02 ;置堆栈指针,AT90S8515的RAM最大地址为$025F, 设堆栈底为$025F
ldi r16,$5f
out sph,r17 ; 高位堆栈sph=$02
out spl,r16 ; 低位堆栈spl=$5f
shiyan4:
ldi r17,$ff
out ddrb,r17 ; pb口方向寄存器设置为输出,1为输出
out portb,r17 ; 设pb口内部上拉
out ddrd,r17 ; pd口方向寄存器设置为输出,1为输出
out portd,r17 ; 设pd口内部上拉

start3: ; 设置舵机摆动周期常数, 即调节节拍常数
LDI R23,$11
LDI R25,$11
;R23=R25=$50摆动周期1S; 如=$
; 如=20-10摆动周期, 也可理解为调节拍范围
;$8强劲舞曲; $18 男儿当自强;$11 少年梦
; 可作自唱自演跳舞机器人设计用。
start6: ; 舵机向-60度方向移动
sbi $18,0 ;
rcall de10 ;1ms,-60度
cbi $18,0 ;
rcall de10 ;1ms,-60度
rcall de185 ;19ms
DEC R23 ;R23-1
CPI R23,$01 ;R23 与立即数$01比较
BRSH start6 ;大于等于则转移到, 小于顺序执行
rcall de200 ; 调用2ms延时程序

start60: ; 舵机向+60度方向移动
sbi $18,0 ;
rcall de20 ;2ms,+60度
cbi $18,0 ; 清pb