Thông báo

Collapse
No announcement yet.

Dong ho so dung 2led 7 thanh.

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

  • Dong ho so dung 2led 7 thanh.

    Đề bài như sau:

    Thiết kế dàn đèn cho Bể cá.
    Một bể cá, cần được điều chỉnh lượng ánh sáng trong ngày như sau:
    7h00: sáng 4 Led; 10h tắt hết LD; 14h: bật 3 Led; 17h: sáng hết 8 LD, 22h: tắt hết các LD.
    Yêu cầu:
     Yêu cầu các linh kiện: 08 Led thường; 02 Led 7 vạch; 01 bàn phím 2x2.
     Hiển thị đếm thời gian trên LED 7 vạch (đếm giờ hoặc phút hoặc giây).
     Nhấn phím 1: hiện số đếm giây, phím 2: phút, phím 3: giờ; mặc định: giây.
    Bài Làm của em như sau,mong anh chị giúp đỡ nhiều.em sắp phải nộp rùi,mà chưa mô phong đươc,
    Em dùng con AT89c51..mà chưa mo phong duoc.
    em mac 2 led 7 thanh vao port 0 va port 2.con 8 led don em mac vao port0.3 button em mắc vào P3_0,P3_1,P3_2.

    thanks nhiều.
    Code:
    #include <regx51.h>
    #define bat	0
    #define tat 1
    char mt[10]={0XC0,0xF9,0xA4,0XB0,0x99,0X92,0x82,0xF8,0x80,0x90};
    sbit led1=P1^0;
    sbit led2=P2^1;
    sbit led3=P2^2;
    sbit led4=P2^3 ;
    sbit led5=P2^4;
    sbit led6=P2^5;
    sbit led7=P2^6 ;
    sbit led8=P2^7 ;
    void delay(char t)
    { int i;
    for(i=0;i<=t;i++);
     }
     void dongho()
     {	int i,j,gio=0,ch=0,dv=0,dvgio=0,chgio=0;
     while(1)
     {	if (P3_0==0)
    	 for (i=0;i<=9;i++)
     for(j=0;j<=6;j++) 
     P2=mt[i];
     P0=mt[j];   
     delay(300);
     if(P0==mt[0]&&P2==mt[6])
     {
     dv++;
      }
     if(dv==0)
     {
     ch ++ ;
      }
      if(ch==6&&dv==0)
     {
     	gio ++;
    	dvgio ++;
    	if(dvgio==0)
      {chgio ++;
    	}
        }
     if (gio==7)
     { led1=led2=led3=led4=bat;}
     if(gio==10)
     {
     led1=led2=led3=led4=led5=led6=led7=led8=tat;
     }
     if(gio==17)
     {
     led1=led2=led3=led4=led5=led6=led7=led8= bat;
      }
     if(P3_1==0&&dv<=9&&ch<=6)
     {for(i=0;i<=dv;i++)
     for(j=0;j<=ch;j++)
     P2=mt[dv];
     P0=mt[ch];
     }
     if(P3_2==0&&gio<=24)
     {for(i=0;i<=gio;i++)
     P2=mt[gio];
     P0=0X00;
     }
     }}
     void main()
     {	 P0=0xff;P2=0xff;
    dongho();
    }
    Last edited by codientu668; 28-03-2011, 11:25.

  • #2
    đây là mạch mô phỏng dùng thời gian thực ds1307
    http://www.mediafire.com/?5otd4da2zgfuzth
    đây là mạch mô phỏng dùng timer của 89
    http://www.mediafire.com/?zxbix58ukg61jf9
    :
    mail:
    dd: 0973423905 - ĐH CÔNG NGHIỆP HÀ NỘI

    Comment


    • #3
      cam ơn anh nhiều.Nhưng trong bài anh gửi không thấy code.chỉ có file hex thôi.
      Nên em chưa hiểu thuật toán trong đó thế nào.
      ĐỒng thời bài của em chỉ dùng 2 con led 7 thanh thôi.đây là bài tập lớn của bọn em

      Comment


      • #4
        hichic.sao ít người quan tâm thế này

        Comment


        • #5
          Admin cho mình xin file code với thank trước
          gmail :dancongnghe94@gmail.com

          Comment

          Về tác giả

          Collapse

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

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

          Collapse

          Đang tải...
          X