我用的是51单片机(开发板)作为处理器。左右伺服电机(parallax的)分别连接的是p1.0与p1.1。左右QT1传感器连接p2.0与p2.1.
语言是汇编
在单独调试右轮的调速时,可以做到1.3ms顺时针转,1.7ms逆时针转,程序如下。同理与左轮 ORG 0000H START: CLR P1.0 MOV A ,#200 低电平延时 CALL DLY100 SETB P1.0 ;;;youlun MOV A ,#17 高电平延时 CALL DLY100 JMP START DLY100: 延时 MOV R6 ,A DLY1: MOV R7,#49 DLY2: DJNZ R7,DLY2 DJNZ R6 ,DLY1 RET END 但是当我将这两个轮子放在一起调试时会发生两个轮子都逆时针转动,也就是右轮的1.3ms设置没有起作用。这让我十分头疼。望各位大佬解答或者是赐教。谢谢 ORG 0000H JMP ST ORG 1000H ST: CALL y 右轮 call z 左轮 jmp ST z: CLR P1.1 MOV A ,#200 CALL DLY100 SETB P1.1 MOV A ,#17 左轮逆时针 CALL DLY100 ret y: CLR P1.0 MOV A ,#200 CALL DLY100 SETB P1.0 ;;;youlun MOV A ,#13 右轮顺时针 CALL DLY100 ret DLY100: MOV R6 ,A DLY1: MOV R7,#49 DLY2: DJNZ R7,DLY2 DJNZ R6 ,DLY1 RET END
|