Thông báo

Collapse
No announcement yet.

HELP!!! mạch đo tốc độ động cơ dc hiển thị led 7 đoạn

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • HELP!!! mạch đo tốc độ động cơ dc hiển thị led 7 đoạn

    mình đang làm bài tập về đo tốc độ động cơ dc.mô phỏng bằng protues.động cơ có gắn encoder.lập trình trên Keil C.làm hoài sao nó ko chạy.mình có kèm theo code và mạch nguyên lí.mong các a e giúp đỡ với.xem nó sai chổ nào vậy.thanks!!!!!!!!!!!!!!!!
    /////////////////////////////////////////////////////////////////////////
    /* khai bao thu vien*/
    #include <reg52.h>
    #include <stdio.h>
    #include <math.h>
    //////////////////////////////////////////////////////////////////////////
    /* khai bao cac bien*/
    unsigned char donvi,chuc,tram,nghin;
    unsigned char n,f;
    unsigned char M[10]={0xC0,0xf9,0xA4,0xB0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
    unsigned char dem;
    unsigned char i,j;
    ///////////////////////////////////////////////////////////////////////////
    /*ham delay tao khoang thoi gian tre de quet led*/
    void delay (unsigned long int t)
    {
    unsigned long int j;
    for(j=1;j<=t;++j);
    }
    ////////////////////////////////////////////////////////////////////////////
    /* ham hien thi gia tri toc do dong co*/
    void ht_tocdo_dc()
    {
    P2=M[nghin];
    P0=~0x01;
    delay(10);
    P0=~0;
    P2=0xFF;
    P2=M[tram];
    P0=~0x02;
    delay(10);
    P0=~0;
    P2=0xFF;
    P2=M[chuc];
    P0=~0x04;
    delay(10);
    P0=~0;
    P2=0xFF;
    P2=M[donvi];
    P0=~0x08;
    delay(10);
    P0=~0;
    P2=0xFF;
    }
    ////////////////////////////////////////////////////////////////////////////////
    /* chuong trinh chinh*/
    void main()
    {
    TMOD=0x25;//timer 0 lam bo dem,che do 1 dem xung o chan T0; Timer 1
    //lam bo dinh thoi mode 2
    IE=0x88;//cho phep ngat va ngat tu timer 1
    IP=0x08;//uu tien ngat timer 1
    TH1=TL1=-100;//nap gia tri dau cho timer 1
    TH0=TL0=0;//xoa timer 1
    dem=0;
    f=0;
    while(1)
    {
    TR0=TR1=1;
    while(dem<1000);//cho het khoang thoi gian 0.1 giay
    n=TH0*256+TL0;//doi gia tri dem duoc thanh so thap phan
    f=n*10;//don vi Hz.nhan 10 vi dem trong 0.1s
    nghin=f/1000;
    tram= (f%1000)/100;
    chuc= ((f%1000)%100)/10;
    donvi= ((f%1000)%100)%10;
    ht_tocdo_dc();
    }
    }
    void ngatt1 (void) interrupt 3
    {
    dem++;
    TF1=0;//xoa co ngat de timer 0 tiep tuc dem
    TR1=1;
    }
    mạch nguyên lý
    do toc do dongco.rar

  • #2
    p ơi t không dow được mạch nguyên lý p có thể đăng lại không

    Comment

    Về tác giả

    Collapse

    autokhin010 Tìm hiểu thêm về autokhin010

    Bài viết mới nhất

    Collapse

    Đang tải...
    X