Giới Thiệu Về IC Ghi Dịch 74HC595
IC ghi dịch 74HC595
Bài hôm nay chúng ta tiếp tục tìm hiểu một ic họ 74xx nữa rất thông dụng là 74HC595.
Hình dạng thực tế:
1. Chức năng :
Là IC ghi dịch 8bit kết hợp chốt dữ liệu, đầu vào nối tiếp đầu ra song song.
Chức năng: Thường dùng trong các mạch quét led 7, led matrix…để tiết kiệm số chân VDK tối đa (3 chân). Có thể mở rộng số chân vi điều khiển bao nhiêu tùy thích mà không IC nào có thể làm dc bằng việc mắc nối tiếp đầu vào dữ liệu các IC với nhau.
*Giải thích ý nghĩa hoạt động của một số chân quan trọng:
Chân 14 (input) : đầu vào dữ liệu nối tiếp. Tại 1 thời điểm xung clock chỉ đưa vào được 1 bit
QA=>QH : trên các chân (15,1,2,3,4,5,6,7) (output)
Xuất dữ liệu khi chân chân 13 tích cực ở mức thấp và có một xung tích cực ở sườn âm tại chân chốt 12.
Chân 13 (output-enable) : Chân cho phép tích cực ở mức thấp (0) .Khi ở mức cao, tất cả các đầu ra của 74HC595 trở về trạng thái cao trở, không có đầu ra nào được cho phép.
Chân 9 (SQH): Chân dữ liệu nối tiếp. Nếu dùng nhiều 74HC595 mắc nối tiếp nhau thì chân này đưa vào đầu vào của con tiếp theo khi đã dịch đủ 8bit.
Chân 11 (Shift clock): Chân vào xung clock. Khi có 1 xung clock tích cực ở sườn dương(từ 0 lên 1) thì 1bit được dịch vào IC.
Chân 12 (Latch clock): Xung clock chốt dữ liệu. Khi có 1 xung clock tích cực ở sườn dương thì cho phép xuất dữ liệu trên các chân output. Lưu ý có thể xuất dữ liệu bất kỳ lúc nào bạn muốn, ví dụ đầu vào chân 14 dc 2 bit khi có xung clock ở chân 12 thì dữ liệu sẽ ra ở chân QA và QB (chú ý chiều dịch dữ liệu từ QA=>QH).
Chân 10 (Reset): Khi chân này ở mức thấp (mức 0) thì dữ liệu sẽ bị xóa trên chip.
Đây là IC đầu ra hoạt động ở 2 mức 0 &1 dòng ra tầm 35mA. Điện áp hoạt động <=7V. Công suất trung bình 500mW.
Dựa vào bảng tính toán được các thông số khi thiết kế mạch
Dựa vào bảng tính toán được các thông số khi thiết kế mạch
Tại 6V thì tần số vào đáp ứng khoảng 400ns. Dựa vào đó chúng ta sẽ đưa được ra tần số quét hợp lý.
5. Cấu tạo chip :
6. Ví dụ:
Mình sẽ đưa ra một ví dụ cách quét sử dụng 595 .Ở đây là hiển thị các số từ 0=>9 trên led 7.
Code:
Code:
#include"regx52.h"
sbit DATA = P2^1;
sbit SCK = P2^0;
sbit SCL = P2^2;
void quet(unsigned char x)
{
int i,temp;
for(i=0;i<8;i++)
{
temp=x;//gan bien
temp=temp&0x80;//lay ra bit dau tien (bit 7)
if(temp==0x80)//so sanh bit
DATA=1; //bang 1 thi xuat vao chip =1
else
DATA=0; //nguoc lai bang 0
x*=2; //dich bit lay bit trong so thap
SCK=0; //tao xung tren chan 11
SCK=1; //1 xung dua vào 1 bít
}
SCL=0; //xuat du lieu ra output
SCL=1;
}
void delay()
{
unsigned int i;
for(i=0;i<33000;i++);
}
void main()
{
unsigned int i, k=0;
unsigned char ma[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//ma led 7
while(1)
{
for(i=0;i<10;i++)
{
quet(ma[i]);
delay();
}
0 nhận xét:
Đăng nhận xét