LED를 8051 마이크로 컨트롤러와 인터페이스하는 방법

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





우리는“Hello world!”에 매우 익숙합니다. 초기 단계의 기본 프로그램 코드 프로그래밍 언어 몇 가지 기본적인 것을 배우기 위해. 8051 마이크로 컨트롤러를 시작하기 위해 LED 인터페이싱은 마이크로 컨트롤러 인터페이싱 프로그래밍의 기본입니다. 각 마이크로 컨트롤러는 아키텍처가 다르지만 인터페이스 개념은 모든 마이크로 컨트롤러에 대해 거의 동일합니다. 이 튜토리얼은 8051과 연결되는 LED를 제공합니다.

인터페이스는 마이크로 컨트롤러와 인터페이스 장치 간의 통신을 제공하는 방법입니다. 인터페이스는 입력 장치, 출력 장치, 저장 장치 또는 처리 장치입니다.




입력 인터페이스 장치 : 푸시 버튼 스위치, 키패드, 적외선 센서, 온도 센서 , 가스 센서 등. 이러한 장치는 마이크로 컨트롤러에 몇 가지 정보를 제공하며이를 입력 데이터라고합니다.

출력 인터페이스 장치 : LED, LCD, 부저, 릴레이 드라이버 , DC 모터 드라이버, 7 세그먼트 디스플레이 등



저장 인터페이스 장치 : 데이터 (예 : SD 카드, EEPROM, DataFlash, 실시간 클록

마이크로 컨트롤러 인터페이스 모델

마이크로 컨트롤러 인터페이스 모델

LED와 8051의 인터페이스

인터페이스는 하드웨어 (인터페이스 장치) 및 소프트웨어 (통신 할 소스 코드, 드라이버라고도 함)로 구성됩니다. 간단히 LED를 출력 장치로 사용하려면 LED를 마이크로 컨트롤러 포트에 연결하고 MC를 내부에 프로그래밍하여 LED를 켜거나 끄거나 깜박이거나 어둡게해야합니다. 이 프로그램을 드라이버 / 펌웨어라고합니다. 드라이버 소프트웨어는 어셈블리와 같은 프로그래밍 언어 , C 등


8051 마이크로 컨트롤러

8051 마이크로 컨트롤러는 1980 년대 인텔이 발명했습니다. 그 기반은 Harvard 아키텍처를 기반으로하며이 마이크로 컨트롤러는 주로 임베디드 시스템에서 사용할 수 있도록 개발되었습니다. 우리는 이전에 논의했습니다 8051 마이크로 컨트롤러 역사 및 기본 사항 . 40 핀 PDIP (플라스틱 듀얼 인라인 패키지)입니다.

8051에는 온칩 오실레이터가 있지만이를 실행하려면 외부 클록이 필요합니다. 석영 크리스탈 MC의 XTAL 핀 사이에 연결됩니다. 이 크리스탈은 원하는 주파수의 클록 신호를 생성하기 위해 두 개의 동일한 값 커패시터 (33pF)가 필요합니다. 8051 마이크로 컨트롤러의 기능은 이전 기사에서 설명했습니다.

마이크로 컨트롤러 크리스탈 연결

마이크로 컨트롤러 크리스탈 연결

LED (발광 다이오드)

LED는 반도체 장치 많은 전자 장치에 사용되며 주로 신호 ​​전송 / 전력 표시 목적으로 사용됩니다. 다양한 모양, 색상 및 크기로 매우 저렴하고 쉽게 구할 수 있습니다. LED는 디자인 메시지 디스플레이 보드 및 교통 제어 신호등 등에 사용됩니다.

그림과 같이 두 개의 단자가 양극과 음극입니다.

LED 극성

LED 극성

극성을 알 수있는 유일한 방법은 멀티 미터로 테스트하거나 LED 내부를주의 깊게 관찰하는 것입니다. LED 내부의 큰 끝은 -ve (음극)이고 짧은 쪽은 + ve (양극)입니다. 이것이 LED의 극성을 알아내는 방법입니다. 극성을 인식하는 또 다른 방법은 리드를 연결하는 것입니다. POSITIVE 단자는 NEGATIVE 단자보다 길이가 더 깁니다.

8051에 연결하는 LED

마이크로 컨트롤러 8051에 LED를 인터페이스 할 수있는 두 가지 방법이 있습니다. 그러나 연결 및 프로그래밍 기술은 다릅니다. 이 기사에서는 8051과 LED 인터페이스 및 AT89C52 / AT89C51 마이크로 컨트롤러의 LED 깜박임 코드에 대한 정보를 제공합니다.

LED를 8051 방법에 연결

LED를 8051 방법에 연결

5v의 입력 전압이 LED의 양극 단자에 연결되어 있으므로 인터페이스 LED 2가 순방향 바이어스 상태에 있는지주의 깊게 관찰하십시오. 따라서 여기에서 마이크로 컨트롤러 핀은 LOW 레벨이어야합니다. 인터페이스 1 연결과 반대의 경우도 마찬가지입니다.

저항은 흐르는 전류를 제한하고 LED 및 / 또는 MCU의 손상을 방지하기 위해 LED 인터페이싱에서 중요합니다.

  • 인터페이스 1은 전류가 접지로 흐를 때 MC의 PIN 값이 HIGH 인 경우에만 LED가 켜집니다.
  • 인터페이스 2는 낮은 전위로 인해 전류가 PIN쪽으로 흐르기 때문에 MC의 PIN 값이 LOW 인 경우에만 LED가 켜집니다.

회로도는 아래와 같습니다. LED는 포트 1의 핀 -0에 연결됩니다.

Proteus 시뮬레이션 회로

Proteus 시뮬레이션 회로

프로그램 코드에 대해 자세히 설명하겠습니다. 또한이 링크 ' Keil 언어를 사용한 임베디드 C 프로그래밍 자습서 ”. 클록 생성을 위해 11.0592MHz의 크리스탈이 연결됩니다. 8051 마이크로 컨트롤러는 12 CPU 사이클 [1]에서 명령을 실행하므로이 11.0592Mhz 크리스탈은이 8051을 0.92 MIPS (초당 백만 명령)로 실행합니다.

아래 코드에서 LED는 포트 1의 핀 0으로 정의됩니다. 주 기능에서 LED는 0.5 초마다 토글됩니다. 'delay'함수는 실행될 때마다 null 문을 실행합니다.

값 60000 (Keil micro-vision4 소프트웨어를 사용하여 컴파일 됨)은 11.0592MHz 크리스탈이 사용되는 경우 약 1 초 (지연 시간) null 문 실행 시간을 생성합니다. 이와 같이 P1.0 핀에 부착 된 LED는 아래와 같은 코드를 사용하여 점멸하게됩니다.

암호

#포함

sbit LED = P1 ^ 0 // port1의 pin0은 LED로 명명됩니다.

// 함수 선언

무효 cct_init (무효)

무효 지연 (int a)

int main (void)

{

cct_init ()

동안 (1)

{

LED = 0

지연 (60000)

LED = 1

지연 (60000)

}

}

무효 cct_init (무효)

{

P0 = 0x00

P1 = 0x00

P2 = 0x00

P3 = 0x00

}

무효 지연 (int a)

{

int i

for (i = 0 i

}

이 기사는 LED가 8051과 어떻게 인터페이스하는지에 대한 정보를 제공합니다. 이것은 8051 마이크로 컨트롤러 프로젝트의 기본적인 인터페이스 개념입니다.

이 기사를 읽음으로써 LED 모듈을 8051과 인터페이스하는 방법에 대한 기본 지식을 얻었기를 바랍니다.이 기사 또는 관련 질문이있는 경우 마이크로 컨트롤러 프로젝트 , 주저하지 마시고 아래 섹션에 의견을 남겨주세요.