当前位置:编程问答 > 汇编语言 >

51单片机汇编语言

问题:我将步进电机的 A B C D四个口分别接到P0.0 P0.1 P0.2 P0.3中 我没有接译码器直接接到了步进电机上 步进电机接12v电源 单片机接5v电源 共地 然后我写上程序 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV P0,#0FEH LCALL DELAY MOV P0,#0FDH LCALL DELAY LCALL DELAY MOV P0,#0FBH LCALL DELAY MOV P0,#0F7H AJMP MAIN DELAY: MOV R7,#200 DL1: MOV R6,#250 DL2: NOP NOP NOP DJNZ R6,DL2 DJNZ R7,DL1 RET END 我认为这个程序对呀 怎么电机就是不转 我初学 不太懂 求教导谢谢
答案:1 步进电机的步进编码 应该为  0101,0110,1010,1001, 才能转起来。
2 单片机直接能驱动的步进电机 应该功率很小很小。
3 单片机不能串入12V 电压。 
        ORG	0000H   ; 修改 的 程序仿真通过   P1 口
	LJMP	MAIN  
	ORG	0030H
MAIN:   MOV	P1,#0F5H
	LCALL	DELAY
	MOV	P1,#0F6H
	LCALL	DELAY
	MOV	P1,#0FAH
	LCALL	DELAY
                MOV	P1,#0F9H
	LCALL	DELAY
	AJMP	MAIN
DELAY:	MOV	R7,#200
DL1:	MOV	R6,#250
DL2:	NOP
	NOP
	NOP
	DJNZ	R6,DL2
	DJNZ	R7,DL1
	RET
	END
其他:wo qq690667357也是初学啊,长讨论 DELAY:	MOV		R7,#200
DL1:		MOV		R6,#250
DL2:		NOP
			NOP
			NOP
	
			DJNZ	R6,DL2
			DJNZ	R7,DL1
			RET
你自己看看你程序都走了多长时间,怎么可能转起来呢 DELAY:	
MOV		R7,#200
DL1:		MOV		R6,#250
DL2:		NOP
			NOP
			NOP
	
			DJNZ	R6,DL2
			DJNZ	R7,DL1
			RET
			END
你的延时程序只持续了0.1S。。如果你的晶振是12M的话 

上一个:用汇编语言编程:已知字符串string包含有32K的内容,将其中的'$'符号替换成空格
下一个:基于单片机的计算器设计 主要程序有什么。最好是汇编的

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,