Thiết bị đo tốc độ động cơ

Chia sẻ: Hoang Nhan | Ngày: | Loại File: PDF | Số trang:13

0
328
lượt xem
130
download

Thiết bị đo tốc độ động cơ

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ
Lưu

Nội dung Text: Thiết bị đo tốc độ động cơ

  1. thiết bị đo tốc độ động cơ
  2. Ảnh đã được thu nhỏ. Bấm vào đây để xem hình cỡ đầy đủ. Hình gốc cỡ 634x603 và dung lượng 12KB.
  3. Code: #include void delay_ms( unsigned int ms ) { unsigned int i,j;
  4. for (i=0;i
  5. x=k/1; LCD_PutCmd(0x86); digit=(x/10000)+0x30;LCD_PutChar(digit); digit=((x/1000)%10)+0x30;LCD_PutChar(digit); digit=((x/100)%10)+0x30;LCD_PutChar(digit); digit=((x/10)%10)+0x30;LCD_PutChar(digit); digit=(x%10)+0x30;LCD_PutChar(digit); LCD_PutChar(','); y=(k-x)*ham_mu(10,4); x=y/1; digit=((x/1000)%10)+0x30;LCD_PutChar(digit); digit=((x/100)%10)+0x30;LCD_PutChar(digit); digit=((x/10)%10)+0x30;LCD_PutChar(digit); digit=(x%10)+0x30;LCD_PutChar(digit); }//+++++++++++++++++++++++++++++++++++++++++++++++ //========= key ===================== sbit Y1 = 0x80; sbit Y2 = 0x81; sbit OK = 0x82; sbit D_A = 0x90;// P1_0 sbit D_B = 0x91;// P1_1 sbit D_C = 0x92;// P1_2 unsigned char count=0; unsigned char key[10]=0; void scan_key() { Y1=Y2=1;D_A=0;D_B=0;D_C=0; if(!Y1){delay_ms(10);while(!Y1);delay_ms(10);//7 LCD_PutChar('7');key[count++]=7; }; if(!Y2){delay_ms(10);while(!Y2);delay_ms(10);//8 LCD_PutChar('8');key[count++]=8; }; Y1=Y2=1;D_A=0;D_B=0;D_C=1; if(!Y1){delay_ms(10);while(!Y1);delay_ms(10);//3 LCD_PutChar('3');key[count++]=3; };
  6. Y1=Y2=1;D_A=0;D_B=1;D_C=0; if(!Y1){delay_ms(10);while(!Y1);delay_ms(10);//4 LCD_PutChar('4');key[count++]=4; }; if(!Y2){delay_ms(10);while(!Y2);delay_ms(10); LCD_PutChar('.'); }; Y1=Y2=1;D_A=0;D_B=1;D_C=1; if(!Y1){delay_ms(10);while(!Y1);delay_ms(10);//1 LCD_PutChar('1');key[count++]=1; }; Y1=Y2=1;D_A=1;D_B=0;D_C=0; if(!Y1){delay_ms(10);while(!Y1);delay_ms(10);//6 LCD_PutChar('6');key[count++]=6; }; if(!Y2){delay_ms(10);while(!Y2);delay_ms(10);//9 LCD_PutChar('9');key[count++]=9; }; Y1=Y2=1;D_A=1;D_B=0;D_C=1; if(!Y1){delay_ms(10);while(!Y1);delay_ms(10);//2 LCD_PutChar('2');key[count++]=2; }; Y1=Y2=1;D_A=1;D_B=1;D_C=0; if(!Y1){delay_ms(10);while(!Y1);delay_ms(10);//5 LCD_PutChar('5');key[count++]=5; }; Y1=Y2=1;D_A=1;D_B=1;D_C=1; if(!Y1){delay_ms(10);while(!Y1);delay_ms(10);//0 LCD_PutChar('0');key[count++]=0; }; } //=============== encoder ============= float gtri[]=0; float gtri_TB=0; unsigned char so_lan=0;
  7. unsigned char gtri_dia=0; unsigned int gtri_truc=0; unsigned char he_so=1; setup_interrupts() { EA = 1; //cho phep cac ngat xay ra ET0 = 1; //cho phep ngat counter0 TR0 = 1; //chay counter0 TMOD = 0x26; //counter 0 in mode 2 (8bit reload), TL0=TH0=0; //timer 1 in mode 2 (auto reload from TH1) TH1 = 6; //start counter from 6-256 ET1 = 1; //cho phep ngat tran timer1 TR1 = 1; //chay timer1 PT0 = 1; //uu tien ngat counter0 PT1 = 0; } chuan_mau() interrupt 3 //timer 1 interrupt { so_lan++; gtri[4]=gtri[3]; gtri[3]=gtri[2]; gtri[2]=gtri[1]; gtri[1]=gtri[0]; gtri[0]=TL0+count*256; TL0=0; count=0; if(so_lan==5) {gtri_TB =((gtri[0]+gtri[1]+gtri[2]+gtri[3]+gtri[4])/(5*100*250*so_l an))*he_so; update_tocdo(gtri_TB); so_lan=0; }; //---nhan OK de dung lai xem gia tri ----------------- --------- if(!OK){TR0=TR1=ET0=ET1=0;gtri[0]=gtri[1]=gtri[2]=gtri [3]=gtri[4]=0;
  8. count=so_lan=0;TL0=TH0=0; delay_ms(50);while(!OK);delay_ms(10); while(OK); delay_ms(50);while(!OK);delay_ms(10);ET0=TR0=ET1=TR1=1 ; }; } dem_xung() interrupt 1 //counter 0 interrupt {count++; TL0=0; } void serial_init() { TMOD = 0x20; SCON = 0x50; TH1 = 0xFD; TR1 = 1; RI = 1; TI = 1; } void main() { Y1=Y2=OK=1; P3_3 = 1; P3_4 = 1; int_LCD(); LCD_PutCmd(0x84); while(OK)scan_key(); // OK lan 1 : nhap gtri dgkinh banh dia delay_ms(50);while(!OK);delay_ms(50); so_lan=count; for(count=0;count
  9. delay_ms(10);while(!OK);delay_ms(10); so_lan=count; for(count=0;count

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản