![]() |
|
Tài trợ cho PIC Vietnam |
Cơ cấu chấp hành (Actuator) Động cơ DC, AC, động cơ không chổi than, động cơ không cảm biến... |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#19 |
Đệ tử 2 túi
Tham gia ngày: Jun 2007
Bài gửi: 43
: |
mình đang có vấn đề với điều khiển động cơ bước đây
nếu nhấn button_direct thì sẽ thay đổi hướng quay của động cơ nếu nhấn button _speed1,speed2,...sẽ làm thay đổi tốc độ nếu nhấn button_stat/stop thì sẽ thay đổi trạng thái Đây là mạch: ![]() Code:#include <16F877A.h> #fuses NOWDT,PUT,XT,NOPROTECT #use delay(clock=4000000) #use fast_io(b) #use fast_io(d) #byte portb=0x06 #byte portd=0x08 #bit RB0=portb.0 #bit RB1=portb.1 #bit RB2=portb.2 #bit RB3=portb.3 //const unsigned char digital[]={0,1,2}; int i=0; int speed = 0; // ma hoa digital duoi dang mang // Chuong trinh ngat #int_ext void ngat_RB0() { while (true) { if(RB0==0 ) { i=(i+1)%3; } while (i!=0) { //change speed if ( RB1==0) { speed = 50; } if ( RB2==0) { speed = 25; } switch (i) { case 1: portd=0b00000101; delay_ms(speed); portd=0b00000001; delay_ms(speed); portd=0b00001001; delay_ms(speed); portd=0b00001000; delay_ms(speed); portd=0b00001010; delay_ms(speed); portd=0b00000010; delay_ms(speed); portd=0b00000110; delay_ms(speed); portd=0b00000100; delay_ms(speed); break; case 2: portd=0b00000101; delay_ms(speed); portd=0b00000100; delay_ms(speed); portd=0b00000110; delay_ms(speed); portd=0b00000010; delay_ms(speed); portd=0b00001010; delay_ms(speed); portd=0b00001000; delay_ms(speed); portd=0b00001001; delay_ms(speed); portd=0b00000001; delay_ms(speed); break; }//end switch } //stop if ( RB3 == 0 ) { portd = 0; } } } //chuong trinh ngat toc do // Chuong trinh chinh main() { set_tris_b(0b00000001); set_tris_d(0); enable_interrupts(global); enable_interrupts(int_ext); ext_int_edge(H_to_L); portd=0b00111111; while(true) { // chi doi ngat nen vong lap nay ko co gi ca ! } } mình chỉ điều khiển được button_direct,còn những cái khác thì over.
__________________
Sống trên đời cần phải có một tấm lòng. thay đổi nội dung bởi: cuopbienquin, 11-10-2007 lúc 08:55 PM. |
![]() |
![]() |
|
|