8255 마이크로프로세서 : 아키텍처, 작동 및 응용

문제를 제거하기 위해 도구를 사용해보십시오





실제로 I/O 장치를 프로세서의 데이터 버스에 직접 연결하는 것은 불가능합니다. 따라서 그 자리에는 8255와 같은 I/O 장치를 연결하기 위해 I/O 포트가 있어야 하는 장치가 있어야 합니다. 마이크로프로세서 . 이 프로세서는 Intel이 설계한 MCS-85 제품군에 속하며 8086 및 8085 마이크로프로세서 . 8255는 마이크로프로세서와 기계 간의 기본 통신 방법을 달성하는 데 사용되는 프로그래밍 가능한 주변 장치 인터페이스 장치입니다. 인터페이스로 작동하도록 프로그래밍된 기계에 사용되는 주변 장치입니다. 이 8255 PPI는 마이크로프로세서와 I/O 장치 간의 인터페이스입니다. 이 문서에서는 8255 마이크로프로세서 – 응용 프로그램 작업.


8255 마이크로프로세서란 무엇입니까?

8255 마이크로프로세서는 매우 널리 사용되는 프로그래밍 가능한 주변 인터페이스 칩 또는 PPI 칩입니다. 8255 마이크로프로세서의 기능은 단순 I/O에서 인터럽트 I/O까지 다양한 조건에서 데이터를 전송하는 것입니다. 이 마이크로프로세서는 또한 CPU를 외부 세계와 인터페이스하도록 설계되었습니다. ADC , 키보드, DAC 등 이 마이크로프로세서는 약간 복잡하지만 경제적이고 기능적이며 유연하여 모든 마이크로프로세서와 함께 사용할 수 있습니다. 이 마이크로 프로세서는 주변 장치를 연결하고 인터페이스하는 데 사용됩니다. 따라서 이 주변 장치는 I/O 장치라고도 합니다. 이 마이크로프로세서의 I/O 포트는 I/O 장치를 연결하는 데 사용되기 때문입니다. 이 프로세서에는 필요에 따라 구성할 수 있는 3개의 8비트 양방향 I/O 포트가 포함되어 있습니다.



  8255 마이크로프로세서
8255 마이크로프로세서

특징

그만큼 8255 마이크로프로세서의 특징 다음을 포함하십시오.

  • 8255 마이크로프로세서는 PPI(programmable peripheral interface) 장치입니다.
  • 여기에는 서로 다른 모드 내에서 프로그래밍되는 3개의 I/O 포트가 포함됩니다.
  • 이 마이크로프로세서는 서로 다른 장치를 연결하기 위한 여러 기능을 제공합니다. 따라서 다른 응용 프로그램에서 자주 사용됩니다.
  • 모드 0(단순 I/O), 모드 1(스트로브 I/O) 및 모드 2(스트로브 양방향 I/O)와 같은 세 가지 모드로 작동합니다.
  • Intel 마이크로프로세서 제품군과 완전히 호환됩니다.
  • TTL과 호환됩니다.
  • 이 마이크로프로세서의 포트-C의 경우 다이렉트 비트 SET/RESET 용량을 사용할 수 있습니다.
  • 여기에는 2~8비트 포트 및 2~4비트 포트로 배치되는 24개의 프로그램 가능한 입력/출력 핀이 포함됩니다.
  • 여기에는 세 개의 8비트 포트가 포함됩니다. 포트 A, 포트 B 및 포트 C.
  • 3개의 I/O 포트에는 각 I/O 포트의 기능 및 작동 모드를 정의하는 제어 레지스터가 포함되어 있습니다.

8255 마이크로프로세서 핀 구성

8255 마이크로프로세서의 핀 다이어그램은 아래와 같습니다. 이 마이크로프로세서는 PA7-PA0, PC7-PC0, PC3-PC0, PB0-PB7, RD, WR, CS, A1 & A0, D0-D7 및 RESET과 같은 40핀을 포함합니다. 이러한 핀은 아래에서 설명합니다.

  핀 다이어그램
핀 구성 8255

PA7 ~ PA0(PortA 핀)

PA7 ~ PA0은 포트 A 데이터 라인 핀(1 ~ 4 및 37 ~ 40)이며 마이크로프로세서 상단의 양쪽에 균등하게 분배됩니다. 이 8개의 포트 A 핀은 제어 워드 레지스터에 로드된 제어 워드를 기반으로 버퍼링된 입력 라인 또는 래치된 출력으로 작동합니다.

PB0 ~ PB7(포트 B 핀)

18에서 25까지의 PB0에서 PB7은 포트 B 데이터를 전달하는 데이터 라인 핀입니다.

  PCBWay

PC0 ~ PC7(포트 C 핀)

PC0 ~ PC7 핀은 포트 A 데이터 비트를 전달하는 핀 10 ~ 핀 17을 포함하는 포트 C 핀입니다. 거기에서 핀 10 – 핀 13은 포트 C 위쪽 핀으로 알려져 있고 핀 14 ~ 핀 17은 아래쪽 핀으로 알려져 있습니다. 이 두 섹션의 핀은 두 개의 개별 포트 C 부분을 사용하여 4 데이터 비트를 전송하는 데 개별적으로 사용될 수 있습니다.

D0 ~ D7(데이터 버스 핀)

이 D0 ~ D7 핀은 27핀 ~ 34핀을 포함하는 데이터 I/O 라인입니다. 이 핀은 8비트 바이너리 코드를 전달하는 데 사용되며 전체 IC 작업을 교육하는 데 사용됩니다. 이러한 핀은 공동으로 제어 워드의 데이터를 전달하는 제어 레지스터/제어 워드로 알려져 있습니다.

A0 & A1

pin8 및 pin9의 A0 및 A1 핀은 단순히 데이터 전송에 선호되는 포트를 결정합니다.

A0 = 0 & A1=0이면 Port-A가 선택됩니다.
A0 = 0 & A1=1이면 포트 B가 선택됩니다.
A0 = 1 & A1=0이면 Port-C가 선택됩니다.
A0 = 1 & A1=1이면 제어 레지스터가 선택됩니다.

씨에스'

CS'와 같은 6번 핀은 칩 선택을 담당하는 칩 선택 입력 핀이다. CS' 핀의 낮은 신호는 단순히 8255와 프로세서 사이의 통신을 허용합니다. 즉, 이 핀에서 데이터 전송 작업은 활성 낮은 신호에 의해 허용됩니다.

RD'

RD'와 같은 5번 핀은 칩을 읽기 모드로 전환하는 읽기 입력 핀입니다. 이 RD 핀의 낮은 신호는 데이터 버퍼를 통해 CPU에 데이터를 제공합니다.

WR'

WR' 핀과 같은 pin36은 칩을 쓰기 모드로 전환하는 쓰기 입력 핀입니다. 따라서 WR' 핀의 신호가 낮으면 CPU가 데이터 버스 버퍼를 통해 마이크로프로세서의 제어 레지스터 포트 위에서 쓰기 작업을 실행할 수 있습니다.

초기화

RESET 핀과 같은 35번 핀은 설정 모드에 있을 때 모든 키에서 사용 가능한 전체 데이터를 기본값으로 재설정합니다. RESET 핀의 높은 신호가 제어 레지스터를 지우고 포트가 입력 모드 내에 배치되는 활성 높은 신호입니다.

GND

pin7은 IC의 GND 핀입니다.

VCC

VCC와 같은 26번 핀은 IC의 5V 입력 핀이다.

8255 마이크로프로세서 아키텍처

8255 마이크로프로세서의 아키텍처는 아래와 같습니다.

  8255 아키텍처

8255 아키텍처

데이터 버스 버퍼:

데이터 버스 버퍼는 주로 마이크로프로세서의 내부 버스를 시스템 버스와 연결하여 이 둘 사이에 적절한 인터페이스를 설정할 수 있도록 하는 데 사용됩니다. 이 버퍼는 단순히 읽기 또는 쓰기 작업이 CPU에서 실행되거나 CPU에서 실행되도록 허용합니다. 이 버퍼는 쓰기 작업의 경우 제어 레지스터 또는 포트에서 CPU로 공급되는 데이터를 허용하고 읽기 작업의 경우 CPU에서 상태 레지스터 또는 포트로 데이터를 허용합니다.

읽기/쓰기 제어 로직:

읽기 또는 쓰기 제어 논리 장치는 내부 시스템 작동을 제어합니다. 이 장치는 내부 및 외부에서 데이터 전송 및 상태 또는 제어 단어를 모두 관리하는 기능을 보유합니다. 가져올 데이터가 필요하면 버스에서 8255로 제공된 주소를 허용하고 특정 작업을 위해 두 제어 그룹에 즉시 명령을 생성합니다.

그룹 A 및 그룹 B 컨트롤:

이 두 그룹은 모두 CPU에서 관리하며 CPU에서 생성된 명령을 기반으로 작동합니다. 이 CPU는 이 두 그룹으로 제어 단어를 전송하고 적절한 명령을 특정 포트로 연속 전송합니다. 그룹 A는 상위 포트 C 비트로 포트 A를 제어하는 ​​반면 그룹 B는 하위 포트 C 비트로 포트 B를 제어합니다.

포트 A 및 포트 B

포트 A 및 포트 B에는 8비트 입력 래치와 8비트 버퍼 또는 래치 출력이 포함됩니다. 이러한 포트의 주요 기능은 작동 모드와도 무관합니다. 포트 A는 모드 0, 1, 2와 같은 3가지 모드로 프로그래밍할 수 있고 포트 B는 모드 0 및 모드 1로 프로그래밍할 수 있습니다.

포트 C

포트 C에는 8비트 데이터 입력 버퍼와 8비트 양방향 데이터 o/p 래치 또는 버퍼가 포함됩니다. 이 포트는 주로 포트 C 상단 PCU와 포트 C 하단 PC의 두 섹션으로 나뉩니다. 따라서 이 두 섹션은 주로 프로그래밍되어 4비트 I/O 포트로 별도로 사용됩니다. 이 포트는 핸드셰이크 신호, 단순 I/O 및 상태 신호 입력에 사용됩니다. 이 포트는 상태 및 핸드셰이킹 신호 모두에 대해 포트 A 및 포트 B와 함께 사용됩니다. 이 포트는 직접만 제공하지만 용량을 설정하거나 재설정합니다.

8255 마이크로프로세서 작동 모드

8255 마이크로프로세서에는 아래에서 설명하는 비트 세트 재설정 모드 및 입력/출력 모드와 같은 두 가지 작동 모드가 있습니다.

비트 세트 리셋 모드

비트 설정-재설정 모드는 주로 Port-C 비트만 설정/재설정하는 데 사용됩니다. 이러한 유형의 작동 모드에서는 포트 C의 1비트 시간에만 영향을 미칩니다. 사용자가 비트를 설정하면 사용자가 설정을 해제할 때까지 설정된 상태를 유지합니다. 사용자는 비트를 수정하기 위해 제어 레지스터 내에 비트 패턴을 로드해야 합니다. 포트 C가 상태/제어 작업에 사용되면 OUT 명령을 전송하여 모든 개별 포트 C 비트를 설정/재설정할 수 있습니다.

I/O 모드

I/O 모드에는 모드 0, 모드 1 및 모드 2와 같은 세 가지 모드가 있으며 각 모드는 아래에서 설명합니다.

모드 0:

이것은 i/p 또는 o/p 포트와 같은 각 포트의 프로그래밍을 허용하는 8255의 I/O 모드입니다. 따라서 이 모드의 I/O 기능에는 다음이 포함됩니다.

  • i/p 포트는 o/ps가 래치될 때마다 버퍼링됩니다.
  • 인터럽트 기능/핸드쉐이킹을 지원하지 않습니다.

모드 1:

8255의 모드 1은 핸드셰이킹이 있는 I/O이므로 이 유형의 모드에서는 포트 A 및 포트 B와 같은 두 포트가 모두 I/O 포트로 사용되고 포트 C는 핸드셰이킹에 사용됩니다. 따라서 이 모드는 i/p 또는 o/p 모드로 프로그래밍된 포트에 의한 핸드쉐이킹을 지원합니다. 핸드셰이킹 신호는 주로 서로 다른 속도로 작동하는 두 장치 간에 데이터 전송을 동기화하는 데 사용됩니다. 이 모드의 입력 및 출력은 래치되며 이 모드에는 CPU 및 IO 장치의 속도와 일치하도록 처리 및 신호 제어를 중단하는 기능도 있습니다.

모드 2:

Mode2는 핸드셰이킹이 있는 양방향 I/O 포트입니다. 따라서 이러한 유형의 모드에 있는 포트는 핸드셰이킹 신호를 통한 양방향 데이터 흐름에 사용할 수 있습니다. 그룹 A 핀은 양방향 데이터 버스처럼 작동하도록 프로그래밍할 수 있으며 포트 C의 PC7 – PC4는 핸드쉐이킹 신호를 통해 사용됩니다. 나머지 하위 포트 C 비트는 입력/출력 작업에 사용됩니다. 이 모드에는 인터럽트 처리 기능이 있습니다.

8255 마이크로프로세서 작동

8255 마이크로프로세서는 주로 필요에 따라 특정 조건에서 I/O에서 인터럽트 I/O로 데이터를 전송하도록 설계된 범용 프로그래밍 가능 I/O 장치입니다. 이것은 거의 모든 마이크로 프로세서와 함께 사용할 수 있습니다. 이 마이크로프로세서는 포트 A, 포트 B 및 포트 C와 같은 요구 사항에 따라 배열할 수 있는 3개의 8비트 양방향 I/O 포트를 포함합니다. 이 PPI 8255는 주로 키보드, ADC와 같은 외부 세계와 CPU를 인터페이스하도록 설계되었습니다. DAC 등 이 마이크로프로세서는 특정 조건에 따라 프로그래밍할 수 있습니다.

8086과 8255 PPI 인터페이스

8255 PPI를 8086 마이크로프로세서와 인터페이스하기 위한 필요성은 다음과 같습니다. 8086 마이크로프로세서는 8255 포트 내에서 사용 가능한 데이터를 읽어야 하는 경우 8255의 입력 RD 핀을 트리거합니다. 8255의 경우 액티브 로우 i/p 핀입니다. 이 핀은 8086 마이크로프로세서의 WR o/p에 연결됩니다. 8086 마이크로프로세서는 8255 포트에 데이터를 써야 할 때 8255의 WR i/p를 트리거합니다.

8255는 8비트 데이터 버스로 데이터를 8086 마이크로프로세서로 전송합니다. 직렬 통신 프로토콜은 8086과 8255 사이의 통신에 사용됩니다. 두 개의 주소 라인 A1과 A0은 8255 내에서 내부 선택을 하는 데 사용됩니다. D0에서 D7과 같은 8255의 데이터 버스 핀은 8086 마이크로프로세서의 데이터 라인, 읽기 입력 핀에 연결됩니다. like RD' & write 입력 핀은 WR'과 같이 8086의 I/O read와 I/O write에 연결된다.

PA, PB, PC 및 제어 단어를 선택하는 4개의 기본 포트가 있습니다. 이 포트는 주로 데이터 전송에 사용되며 제어 워드는 신호 전송에 선택됩니다. I/O 신호 및 BSR 신호와 같이 두 가지 신호가 8255로 전송됩니다. I/O 신호는 포트의 모드 및 방향을 초기화하는 데 사용되는 반면 BSR은 신호 라인을 설정 및 재설정하는 데 유용합니다.

다음 장치에서 연결된 장치를 입력 장치로 가정합니다. 처음에 이 장치는 데이터를 전송할 수 있도록 PPI의 권한을 찾습니다.

  8086과 8255 PPI 인터페이스
8086과 8255 PPI 인터페이스

8255 PPI를 사용하면 8086 프로세서로 전송해야 하는 8255 내에 남아 있는 데이터가 없을 때마다 입력 장치가 데이터를 전송할 수 있습니다. 8255 PPI에 일부 이전 왼쪽 데이터가 있는 경우 여전히 8086 마이크로프로세서로 전송되지 않고 입력 장치를 허용하지 않습니다.

8255 PPI가 입력 장치를 허용하면 데이터를 가져와 8255 PPI의 임시 레지스터에 저장합니다. 8255 PPI가 일부 데이터를 보유하고 있으면 8086 마이크로프로세서로 전송한 다음 신호를 PPI로 전송해야 합니다.

8086 마이크로프로세서가 정보를 얻을 수 있게 되면 8086은 다시 신호를 전송하고 8255와 8086 사이에서 데이터 전송이 발생합니다. 8086 마이크로프로세서로 전송되지 않으므로 8255 PPI는 기존 데이터를 덮어쓰기 때문에 입력 장치가 데이터를 전송하는 것을 허용하지 않습니다. 위의 다이어그램에 표시된 곡선 화살표 신호를 핸드셰이크 신호라고 합니다. 따라서 이 데이터 전송 프로세스를 핸드셰이킹이라고 합니다.

8255와의 인터페이스를 위해 고려해야 할 요소

아래에서 설명하는 8255를 인터페이스하는 동안 고려해야 할 많은 사항이 있습니다.

  • 프로그래밍되지 않은 상태의 8255 포트는 구성되지 않은 상태의 o/p 포트인 경우 모든 i/p 장치가 포트에 연결되기 때문에 입력 포트입니다. 입력 장치는 포트 라인 및 8255에서 출력도 생성합니다. 또한 출력을 생성합니다. 두 개의 출력이 함께 연결되면 하나/두 장치가 모두 파괴됩니다.
  • 8255 출력 핀은 필요한 구동 전류를 공급할 수 없기 때문에 장치의 전원을 켜는 데 사용할 수 없습니다.
  • 모터나 램프 또는 스피커가 8255에 연결될 때마다 장치 및 8255의 현재 정격을 확인해야 합니다.
  • 8255가 필요한 구동 전류를 공급할 수 없으면 다음과 같이 반전을 사용하십시오. 7406 그리고 비반전 증폭기 처럼 7407. 큰 전류 요구 사항이 있는 경우 Darlington 쌍 구성에 트랜지스터를 사용할 수 있습니다.
  • 언제든지 DC 모터 8255에 인터페이스 한 다음 적합한 선택 H-브리지 H-브리지는 DC 모터가 모든 방향으로 작동할 수 있도록 하기 때문에 모터 사양에 따라 달라집니다.
  • 포트 A와 포트 B는 8비트 포트로만 사용할 수 있으므로 이 포트의 모든 핀은 입력 또는 출력이어야 합니다.
  • AC 전원 장치가 8255에 연결되면 계전기 보호용으로 사용해야 합니다.
  • 포트 A 및 B가 모드 1 또는 모드 2 내에서 프로그래밍되면 포트 C는 일반 I/O 포트로 작동할 수 없습니다.

장점

그만큼 8255 마이크로프로세서의 장점 다음을 포함하십시오.

  • 8255 마이크로프로세서는 거의 모든 마이크로프로세서와 함께 사용할 수 있습니다.
  • 다양한 포트를 I/O 기능으로 할당할 수 있습니다.
  • +5V 조정 전원 공급 장치로 작동합니다.
  • 널리 사용되는 보조 프로세서입니다.
  • 8255 보조 프로세서는 병렬 데이터 전송을 위해 마이크로 프로세서와 주변 장치 간의 인터페이스 역할을 합니다.

애플리케이션

그만큼 8255 마이크로프로세서의 응용 다음을 포함하십시오.

  • 8255 마이크로 프로세서는 주변 장치 및 LED 연결에 사용됩니다. 계전기 상호 작용, 스테퍼 모터 인터페이스 , 디스플레이 인터페이스, 키보드 인터페이스, ADC 또는 DAC 인터페이스, 교통 신호 컨트롤러, 리프트 컨트롤러 등
  • 8255는 널리 사용되는 프로그래밍 가능한 주변 장치 인터페이스 장치입니다.
  • 이 마이크로 프로세서는 다른 조건에서 데이터를 전송하는 데 사용됩니다.
  • 와 인터페이스하는 데 사용됩니다. 스테퍼 모터 & DC 모터.
  • 8255 마이크로프로세서는 모든 MSX 모델 및 SV-328과 같은 가정용 컴퓨터뿐만 아니라 다양한 마이크로컨트롤러 또는 마이크로컴퓨터 시스템에서 광범위하게 사용됩니다.
  • 이 마이크로프로세서는 원래 PC/XT, IBM-PC, PC/jr 및 N8VEM과 같은 다양한 가정용 컴퓨터와 함께 복제품에서도 사용할 수 있습니다.

따라서 이것은 8255 마이크로프로세서 개요 – 아키텍처, 애플리케이션 작업. 82C55 마이크로프로세서는 다양한 마이크로프로세서와 함께 사용되는 범용 프로그래밍 가능 I/O 장치입니다. 고성능 82C55 마이크로프로세서가 있는 산업 표준 구성은 8086과 잘 어울립니다. 여기 질문이 있습니다. 8086 마이크로프로세서 ?