Mạch Khóa Số Điện Tử Mạch Đếm Sản Phẩm Mạch Đèn giao thông Ngã Tư Mạch Trái Tim Final Mạch Trái Tim Final Mạch Trái Tim I Love U

December 2, 2011

Lập trình C Led 7 Đoạn với IC 74HC595

   
Click xem hình full

Video DEMO






CODE


#include<REGX51.H>
#include<stdio.h>
#include<math.h>
#define bat 1
#define tat 0
//=================================
sbit shcp=P3^0;
sbit ds=P3^1;
sbit stcp=P3^2;
sbit led1=P2^0;
sbit led2=P2^1;
sbit led3=P2^2;
sbit led4=P2^3;
sbit led5=P2^4;
sbit led6=P2^5;

//=============Chuong trinh tao tre==============
void delay(int ms)
{
     int a,b;
      for(a=0;a<ms;a++)
          for(b=0;b<125;b++)
         {
         }
}
//================Maled 7 doan anode chung================
int m[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
int donvi1,chuc1;
int donvi2,chuc2;
int donvi3,chuc3;
int giay,phut,gio;
//==========dua data vao595===========
void data(unsigned char data)
{
unsigned char i;
unsigned int k;
k=128;
           for(i=0;i<8;i++)
         {
           if((data&k)==k)
           ds=1;
           else
           ds=0;
           shcp=1;
           shcp=0;
           stcp=1;
           stcp=0;
          k>>=1;
         }
}
//============ hien thi=============

void hienthi(void)
{
       int c;
       for(c=0;c<10;c++)
     {
        chuc1=giay/10;
        donvi1=giay%10;
        data(m[chuc1]);
        led5=bat;
        delay(8);
        led5=tat;
       data(m[donvi1]);
       led6=bat;
      delay(8);
      led6=tat; 
/*====led3 và led 4=phut====*/
        chuc2=phut/10;
        donvi2=phut%10;
        data(m[chuc2]);
        led3=bat;
        delay(8);
        led3=tat;
        data(m[donvi2]);
        led4=bat;
        delay(8);
        led4=tat; 
/*======led 1 va led 2 = gio==*/
       chuc3=gio/10;
       donvi1=gio%10;
      data(m[chuc3]);
      led2=bat;
      delay(8);
      led2=tat;
     data(m[donvi3]);
     led1=bat;
     delay(8);
     led1=tat; 
     }
}
//==============ham chinh=======
void main(void)
{
     while(1)
     {
           gio=phut=giay=0;
          for(gio=0;gio<24;gio++)
         {
             hienthi();
                     for(phut=0;phut<60;phut++)
                          {
                      hienthi();
                           for(giay=0;giay<60;giay++)
                                {
                               hienthi();

                                }
                          }
         }
   }
}





(Nguyên lýt+Code HEX + CODE)
                              Pass:chipkool.tk





2 comments:

van quy pham said...
25/12/12

a chip uj cho e xin ít tài liệu về con ic 74hc595 di. tiện thể cho e lun bài code asm ví dụ về con này đi. và sau mỗi dòng code cho e mấy chữ giải thích nua nhé càng cụ thể càng tốt hj. vì e mới nhập môn nên đang còn mu muội lắm nên e rất cần jai thích cu thể nhu zậy mới hiu dc anh ak. cam on a trước nhé.

van quy pham said...
25/12/12

í wen e dang hk tới led 7 doan nhé. và dây là mail cua em cuongquy90@gmail.com

Post a Comment

Bạn đọc hãy giúp chúng tôi xây dựng cộng đồng bằng cách để lại bình luận, chúng tôi luôn đón nhận mọi ý kiến của các bạn:
» Bình luận nghiêm túc và không chứa các liên kết quảng cáo.
» Vui lòng không Spam nhận xét với mọi hình thức.
» Rất mong bạn đề tên cho nhận xét của chính mình - Bằng cách chọn vào Tên/URL và điền tên bạn vào (Phần URL có thể bỏ trống ).

- Bạn có thể chèn Link nhạc (NCT), video(Youtube),Hình ảnh vào comment bằng cú pháp:
+ [youtube] Link video Youtube [/youtube].
+ [img] Link ảnh( định dạng PNG, JPG,GIF) [/img]
+Chèn link liên kết: <a href="LINK" rel="nofollow">Name</a>
-Bạn copy mã bên cạnh biểu tượng chèn vào nhận xét để bày tỏ cảm xúc!!

:) :( :)) :(( =)) =D> :D :P