74HC595 : 시프트 레지스터 IC에 관한 모든 것

El 74HC595 칩이름에서 따온 것처럼 내부에 CMOS 회로를 구현 한 인쇄 회로입니다. 특히 시프트 레지스터입니다. 여전히 이러한 레지스터를 모르는 사람들에게는 기본적으로 순차적 디지털 회로입니다. 즉, 출력의 값은 단순히 입력 값과 저장된 이전 값에 의존합니다.

이는 출력이 입력 값에만 의존한다는 점에서 조합과 구별됩니다. 이 레지스터는 클록 신호에 의해 명령되는 일련의 D 형 플립 플롭 또는 플립 플롭으로 구성됩니다. 그 플립 플랍은 추억 이전 값을 유지합니다. 각각은 약간을 저장하며 이름에서 이동할 수 있다고 추론 할 수도 있습니다. 한 쪽에서 다른쪽으로 비트를 실행하면 매우 흥미로운 디지털 작업을 수행 할 수 있습니다.

시프트 레지스터 유형

시프트 레지스터 다이어그램

에 따르면 변위 유형 저장하는 비트에 대해 수행하는 레지스터는 다양한 유형이 될 수 있습니다. 왼쪽이나 오른쪽으로 움직일 수 있고, 일부는 양방향이지만 순서는 유형을 결정하는 것입니다. 다른 경우에도 입력과 출력이 어떻게 분류되는지에 따라 분류됩니다.

  • 시리즈 시리즈: 첫 번째 플립 플롭 만이 데이터를 수신하고 완전한 레지스터가 채워질 때까지 직렬로 연결되는 것들. 마지막 플립 플롭은 출력에 직접 연결되어 레지스터가 빠져 나가는 것입니다.
  • 병렬 시리즈: 비트는 병렬로 들어가서 모든 플립 플롭에 동시에 저장되지만 직렬로 나갑니다. 직렬에서 병렬로 또는 그 반대로 변환하는 데 사용할 수 있습니다.
  • 직렬 병렬: 이전과 유사하게 모든 출력은 모든 플립 플롭에서 동시에 액세스 할 수 있습니다. 그러나 데이터는 시리즈의 첫 번째 만 입력됩니다.
  • 병렬 병렬: 데이터가 병렬로 가고 병렬로 나갑니다.

가장 잘 알려진 회로 중 우리는 74HC595, 74HC164, 74HC165, 74HC194등 194는 보편적이며 원하는대로 구성 할 수 있습니다. 반면에 165 및 164와 같은 다른 양방향 신호가 있으므로 방향 제어 신호에 지정된대로 왼쪽 또는 오른쪽으로 이동하지만 병렬 입력 및 직렬 출력 및 직렬 입력 및 병렬 출력.

l298n
관련 기사 :
L298N : Arduino 용 모터 제어 모듈

시프트 레지스터 란 무엇입니까?

왜 비트를 이동합니까? 데이터 비트 이동은 매우 실용적 일 수 있습니다. 한 가지 이유는 특정 목적을 위해 값을 이동해야하기 때문입니다. 그러나 시프트에는 저장된 비트에 대해 일부 작업을 수행하는 것도 포함됩니다. 예를 들어, 비트 세트를 왼쪽으로 이동하는 것은 비트를 2로 곱하는 것과 같습니다. 오른쪽으로 이동하는 것은 2로 나누는 것과 같습니다. 따라서 이진 곱셈과 나눗셈을 수행하려면 매우 실용적 일 수 있습니다.

또한 아날로그 / 디지털 변환기에서 널리 사용되는 연속 근사값, 지연 등을 위해 의사 난수 값을 생성하는 데 사용됩니다. 사용 논리 디지털 회로 매우 일반적이므로 일부 프로젝트에서 사용해야하는 경우가 드물지 않습니다.

74HC595 특징

74HC595 핀아웃

El 74HC595는 상당히 간단한 IC입니다.. 이는 8 비트 시프트 레지스터입니다. 즉, 8 비트를 저장하는 8 개의 플립 플롭이 있습니다. 이 칩의 핀아웃 또는 핀은 위의 이미지에서 볼 수 있으며 전원은 Vcc 및 GND이며 데이터는 Q로 표시된 것입니다. 나머지는 클럭 / 제어 신호에 해당합니다.

라스 입력은 직렬로, 병렬로 출력. 따라서 단일 입력으로이 8 개의 출력을 동시에 제어 할 수 있습니다. 사용 된 마이크로 컨트롤러 (예 : Arduino)에서 13 개의 핀만 있으면 구동됩니다. 그것들은 래치, 시계 및 데이터입니다. 이 경우 래치는 핀 11이지만 다를 수 있으므로 제조업체의 데이터 시트를 참조해야합니다. 클럭은 14 또는 기타가 될 수 있으며 데이터 비트는 XNUMX입니다.

La 시계 표시 그것은 그것이 작동 할 비트나 리듬을 결정하기 위해 회로를 공급할 것입니다. 데이터 출력은 칩의 동작을 변경합니다. 예를 들어, LOW에서 HIGH로 변경하고 클럭을 HIGH에서 LOW로 전달하여 새로운 클럭 펄스를 생성 할 때,이 데이터 핀에 입력 된 값인 변위가있는 현재 위치를 기록합니다. 이것을 8 번 반복하면 8 개 위치를 모두 기록하고 0 바이트가 저장됩니다 (Q7-QXNUMX).

Arduino와 함께 사용

74hc595와 Arduino

더 명확하게하기 위해 아마도 Arduino의 예 이론적 데이터를 시작하는 것보다 더 직관적이고 그래픽적인 방식으로 설명합니다. 예를 들어, Arduino 및 74HC595 시프트 레지스터로 간단한 회로를 만들어 일부 조명이나 LED로 재생할 수 있습니다. 다소 더 좋고 간단한 또 ​​다른 옵션은 7 세그먼트 디스플레이를 사용하여 레지스터에서 값을 읽는 것입니다.

2n2222 트랜지스터
관련 기사 :
2N2222 트랜지스터 : 알아야 할 모든 것

다이어그램은 Arduino가 그런 방식으로 연결되면 이전 이미지에서 볼 수있는 것입니다. 74HC595 및 디스플레이, Arduino IDE로 프로그래밍하는 것만 남아 있으며 시프트 레지스터의 가능성을 볼 수 있습니다. 코드는 다음과 같으며 일련의 이진 코드 0bxxxxxxxx가 있습니다. 여기서 x 비트는 다음과 같습니다.

const int latchPin = 8;  // Pin conectado al Pin 12 del 74HC595 (Latch)
const int dataPin  = 9;  // Pin conectado al Pin 14 del 74HC595 (Data)
const int clockPin = 10; // Pin conectado al Pin 11 del 74HC595 (Clock)
int i =0;
                      
const byte numeros[16] = {
                0b11111100,
                0b01100000,
                0b11011010,
                0b11110010,
                0b01100110,
                0b10110110,
                0b10111110,
                0b11100000,
                0b11111110,
                0b11100110,
                0b11101110,
                0b00111110,
                0b10011100,
                0b01111010,
                0b10011110,
                0b10001110
};
                      
void setup() { 
  Serial.begin(9600);
  pinMode(latchPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  pinMode(dataPin, OUTPUT); 
}

void loop() {

                for (i=0;i<16;i++) {
                               delay(1000);
                               digitalWrite(latchPin, LOW);
                               shiftOut(dataPin, clockPin, LSBFIRST, numeros[i]);
                               digitalWrite(latchPin, HIGH);
                }
}

데이터시트

핀 보드

시장에서 찾을 수 있습니다 다른 제조업체의 다른 74HC595 칩. 그중 하나는 신화적인 Texas Instruments 또는 Ti이지만 각 제조업체는 다운로드 할 데이터 시트를 제공해야합니다. 공식 웹 사이트에서. 다음과 같은 다른 것을 찾을 수도 있습니다. 온 세미 컨덕터, 스파크펀, ST 마이크로 일렉트로닉스, NXP 등


코멘트를 첫번째로 올려

코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.