Ai có sơ đồ mạch về điều khiển động cơ bước ( điều khiển 2 động cơ) bằng 8051 cho xin với! Loai 6 dây (4 dây khiển, 2 dây cấp nguồn),12v. Đang cần gấp!
![42](http://dientuvietnam.net/forums/images/smilies/42.gif)
/************************************************* Chuong trinh dieu khien canh tay robot bang dong co buoc Thuc hien : leemanhj916 Company : Hanoi University of Industry **************************************************/ #include <regx52.h> #include <stdio.h> //#include <intrins.h> sbit NANG = P1^0; sbit HA = P1^1; sbit NHA = P1^2; sbit KEP = P1^3; unsigned char M[] = {0x0e,0x0d,0x0b,0x07}; //unsigned char M[] = {0x11,0x22,0x44,0x88}; int i=0,j=0; //------------------------- void delay(){ unsigned int t,time=10; while(time--) for(t=0;t<1000;t++); } //-------------------------- void dc1_thuan(){ while(NANG){ delay(); P2 = M[i--]; if(i < 0) i = 3; } i++; } //------------------------- void dc1_dao(){ while(HA){ delay(); P2 = M[i++]; if(i > 3) i = 0; } i--; } //-------------------------- void dc2_thuan(){ while(NHA){ delay(); P0 = M[j--]; if(j < 0) j = 3; } j++; } //------------------------- void dc2_dao(){ while(KEP){ delay(); P0 = M[j++]; if(j > 3) j = 0; } j--; } //------------------------- void main(){ P2 = P0 = 0; while(1){ dc1_thuan(); dc1_dao(); dc2_thuan(); dc2_dao(); } }
Comment