Thông báo! Chúng tôi đang cố gắng khôi phục lại các link download, các bạn vui lòng tải lại sau (dự kiến 10/12/2022 hoàn thành). Cảm ơn các bạn!

Code C điều khiển động cơ điện một chiều

TuanPi | 13.3.15 | | |
. . 3 nhận xét:

Dòng chip 8051 rất phổ biến và được đưa vào giảng dạy ở các trường đại học. Do vậy để các bạn dễ tiếp cận trong quá trình học tập và nghiên cứu 7segone mong muốn chia sẻ thật nhiều những code mẫu để các bạn có thể tham khảo và nâng cao kỹ năng lập trình cho bản thân.
Hôm nay 7segone sẽ chia sẻ một code mẫu về động cơ một chiều được điều khiển bằng nút nhấn.
//------------------------------------------//
// Chuong trinh thuc hien voi chip ho 8051  //
//     DIEU KHIEN DONG CO MOT CHIEU DC      //
//------------------------------------------//
#include<at89x52.h>

// dinh ngia not bam
sbit sw1 = P1^0;
sbit sw2 = P1^1;
sbit sw3 = P1^2;
sbit sw4 = P1^3;
sbit sw5 = P1^4;
// dinh ngia cac chan dau ra
#define DIRA   P3_0
#define DIRB    P3_7
#define out_pwm  P2_0

unsigned char t_on=0,chu_ki=100,pwm= 0;
// chuong trinh ngat time
void timer0() interrupt 1
{
    TR0=0;
    t_on++;
    if(t_ôn>chữ_kí)t_ơn=0;
    //kenh8 = ~kenh8;
    TR0=1;
}

// chuong trinh phim bam
void menu()
{
    if(!sw1) // phim up
    {
       pwm += 5;
       if(pwm > 100) pwm = 0;
       while(!sw1);   
    }
    if(!sw2) // phim down
    {
       pwm -= 5;
       if(pwm <1) pwm = 100;
       while(!sw2);   
    }
    if (!sw3)
    {
       DIRA = 1; 
       DIRB = 0;
       while(!sw3);
    }
    if (!sw4)
    {
       DIRA = 0; 
       DIRB = 1;
       while(!sw4);
    }
    if (!sw5)
    {
       DIRA = 0; 
       DIRB = 0;
       while(!sw5);
    } 
}
void main()
{
     TMOD=0x02; //timer 0 mode 2
     TH0= -20;  //timer 0 chay 100uS
     //TL0=130;
     ET0=1;   //cho phep ngat timer 0
     EA=1;   //cho phep ngat toan cuc
     pwm = 0;
     TR0=1;
     P3 = 0xff;
     while(1)
     {
          menu();
          out_pwm=(pwm>t_on)? 0:1; // cau dieu kien so sanh neu (pwm1>t_on) la dung thi la 0 con sai la 1 
     }
}
7segone hi vọng rằng từ những code mà mình đã chia sẻ sẽ giúp ích phần nào trong quá trình học tập của các bạn. Chúc các bạn thành công!

Đang cập nhật ….

3 nhận xét:

Lên đầu trang