Dong ho so dung 2led 7 thanh.

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • codientu668
    Thành viên mới
    • Jul 2009
    • 7

    #1

    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, 10:25.
  • nvtu13041987
    Thành viên mới
    • Mar 2011
    • 20

    #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

    • codientu668
      Thành viên mới
      • Jul 2009
      • 7

      #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

      • codientu668
        Thành viên mới
        • Jul 2009
        • 7

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

        Comment

        • nam92
          Thành viên mới
          • Nov 2014
          • 1

          #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

          There are no results that meet this criteria.

          Đang tải...