Thông báo

Collapse
No announcement yet.

sử dụng 74LS595 trong điểu khiển led 7 thanh

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

  • sử dụng 74LS595 trong điểu khiển led 7 thanh

    Tình hình là thầy giáo em giao cho đề tài thực tập chuyên ngành là :sử dụng atmega8,sensor DS18S20,đồng hồ DS1307,IC dịch dùng 74LS595 cùng với 4 cặp led đôi chung anot.Nhưng em hiểu biết kém không biết sử dụng 74LS595 nên tạm thời chưa vẽ được sơ đồ mạch mô phỏng.Mong sớm nhận được sự giúp đỡ của mọi người.

  • #2
    Nguyên văn bởi conghungkun Xem bài viết
    Tình hình là thầy giáo em giao cho đề tài thực tập chuyên ngành là :sử dụng atmega8,sensor DS18S20,đồng hồ DS1307,IC dịch dùng 74LS595 cùng với 4 cặp led đôi chung anot.Nhưng em hiểu biết kém không biết sử dụng 74LS595 nên tạm thời chưa vẽ được sơ đồ mạch mô phỏng.Mong sớm nhận được sự giúp đỡ của mọi người.
    Mạch dưới là dùng cho 4094, cũng là IC thanh ghi dịch như 595. Bạn tham khảo và làm cho tốt nhé.

    Led 7 thanh là loại thiết bị hiển thị được sử dụng khá rộng rãi trong thực tế . Nó có ưu điểm là dễ sử dụng, hiển thị được tất cả các con số từ 0 đến 9, năng lượng tiêu hao khá nhỏ, có nhiều kích thước vật lý để lựa chọn cho phù hợp với mục tiêu sử dụng, không gian sử dụng của người dùng.

    Modul hiển thị Led 7 thanh có thể hiển thị được 4 digits. Modul này hoạt động dựa trên chức năng SPI có sẵn trong Atmega16 và chức năng ghi dịch của IC chuyên dụng : 74HC4094.
    Muốn sử dụng SPI bạn sử dụng 3 chân của Atmega8:
    - Chân đẩy dữ liệu Data.
    - Chân chốt dữ liệu Latch.
    - Chân xung nhịp dữ liệu SCK

    Đây là code mình viết dùng cho mạch này:

    Code:
    unsigned char font[14]= {0x7E, 0x48, 0x3D, 0x6D, 0x4B, 0x67, 0x77, 0x4C, 0x7F, 0x6F, 0x0F, 0x36, 0x01, 0x00 };
    
    /****************************FUNCTION**************************/
    void startdis(void)
    {
         PORTB.0 = 0;
         spi(~font[12]); spi(~font[13]); spi(~font[13]); spi(~font[13]);     
         PORTB.0 = 1;     delay_ms(200); 
    
         PORTB.0 = 0;
         spi(~font[13]); spi(~font[12]); spi(~font[13]); spi(~font[13]);     
         PORTB.0 = 1;     delay_ms(200);
         
         PORTB.0 = 0;
         spi(~font[13]); spi(~font[13]); spi(~font[12]); spi(~font[13]);     
         PORTB.0 = 1;     delay_ms(200);
         
         PORTB.0 = 0;
         spi(~font[13]); spi(~font[13]); spi(~font[13]); spi(~font[12]);     
         PORTB.0 = 1;     delay_ms(200);
    }
    
    void display(unsigned char temp)
    {
         unsigned char a,b;
         PORTB.0 = 0;
         a = temp/10; // phan chuc
         b = temp%10; // phan don vi       
         spi(~font[a]); spi(~font[b]); spi(~font[10]); spi(~font[11]);      
         PORTB.0 = 1; // latch data     
    }
    
    void display_zero(void)
    {
         PORTB.0 = 0;          
         spi(~font[12]); spi(~font[12]); spi(~font[12]); spi(~font[12]);      
         PORTB.0 = 1; // latch data     
    }
    Attached Files
    Last edited by gtvt45; 15-06-2010, 17:31.

    Comment


    • #3
      cám ơn cậu nhiều.Các bạn nào hiểu biết gì nữa thì đóng góp giúp mình nhé.Cám ơn mọi người.

      Comment

      Về tác giả

      Collapse

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

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

      Collapse

      Đang tải...
      X