求51单片机的硬件设计步骤?

本人欲设计一单片机同时控制两个电机,但苦于对单片机的硬件开发知识知之甚少,请高手支招,指点一二。最好有详细的硬件设计步骤及附图说明。谢谢! 也可推荐几个比较好的单片机学习网址!万分感谢!

ORG 00H JMP MAIN ORG 0BH LJMP INTS_T0 ORG 30H MAIN: CLR EA MOV R2,#0 MOV R1,#16 ;16个字符 MOV R0,#40H MOV DPTR,#TAB ;把全部字符复制到40H MOVEDATA: MOV A,R2 MOVC A,@A+DPTR MOV @R0,A INC R2 INC R0 DJNZ R1,MOVEDATA MOV TMOD,#01H ;定时器0工作方式1 MOV TL0,#0FFH ;置计数初值 MOV TH0,#03CH ;0FFFFH-3CAFH=50000,50MS MOV R7,#5 ;软件计数器,循环5次 SETB ET0 ;允许T0中断 CLR ET1 ;禁止T1中断 SETB EA SETB TR0 MOV SCON,#00H ;串行口工作模式0 CLR P3.2 MOV SP,#60H MOV R3,#080H ;第一行 A0: MOV R2,#08H MOV R0,#40H LOOP: MOV DPTR,#TAB ;字符首地址 MOV R1,#2 MOV A,R3 RR A ;行码右移一位转下一行 MOV R3,A MOV SBUF,A ;发送行码 WAIT1: JNB TI,WAIT1 ;等待一帧发送完 CLR TI A1: MOV A,@R0 MOV SBUF,A WAIT2: JNB TI,WAIT2 CLR TI INC R0 DJNZ R1,A1 SETB P3.2 ;显示一行 CLR P3.2 DJNZ R2,LOOP ;下一行 JMP A0 JMP $ INTS_T0: CLR EA PUSH 00H PUSH 01H PUSH 02H DJNZ R7,BACK ;软件次数,次数不到返回 MOV R7,#5 MOV R0,#40H MOV R1,#8 SHIFT1: MOV R2,#2 CLR C PUSH 00H MOV A,R0 ADD A,#1 MOV R0,A MOV A,@R0 POP 00H RLC A SHIFT2: MOV A,@R0 RLC A MOV @R0,A INC R0 DJNZ R2,SHIFT2 DJNZ R1,SHIFT1 BACK: POP 02H POP 01H POP 00H MOV TMOD,#01H ;定时器0工作方式1 MOV TL0,#0FFH MOV TH0,#03CH ;0FFFFH-3CAFH=50000。50MS SETB ET0 ;禁止T0中断 CLR ET1 ;禁止T1中断 SETB EA SETB TR0 RETI TAB: DB 0FFH,0FFH ;箭头符号 DB 0DFH,0FFH DB 0BFH,0FFH DB 001H,0FFH DB 0BFH,0FFH DB 0DFH,0FFH DB 0FFH,0FFH END 51单片机汇编程序,我以前调试好的,希望你能够用上,
温馨提示:答案为网友推荐,仅供参考
相似回答