- 필요한 재료
- 16 × 2 도트 매트릭스 LCD 디스플레이에 대한 간략한 소개
- TIVA Launchpad의 ADC
- 회로도 및 연결
- Energia IDE를 사용하여 LCD 용 TIVA TM4C Launchpad 프로그래밍
- TIVA Launchpad가있는 16x2 LCD 디스플레이
이전 튜토리얼에서는 TIVA TM4C Launchpad에 대해 배우고 Energia IDE를 사용하여 디지털 입력 및 출력 핀을 제어하는 방법을 배우기 시작했습니다. 이제이 자습서에서는 유용한 정보와 센서 데이터를 표시하기 위해이 보드와 16x2 도트 매트릭스 LCD 디스플레이의 인터페이스에 대해 알아 봅니다.
16x2 LCD 디스플레이는 우리 대부분이 공공 PCO를 통해이 문제를 접했거나 다른 전자 프로젝트에서 사용했을 것입니다. 16x2 LCD는 모든 전자 애플리케이션에서 데이터 또는 기타 디버깅 정보를 표시하는 데 매우 편리한 저비용 디스플레이 모듈입니다. 여기에서는 16x2 LCD 디스플레이와 TIVA C 시리즈 TM4C123G LaunchPad를 연결 합니다. 여기 에서는 LCD 디스플레이에 ADC 값과 전압 레벨 을 표시합니다. ADC 값을 변경하기 위해 전위차계가 부착되어 있습니다. 여기에서 16x2 LCD 디스플레이 및 핀에 대해 자세히 알아보십시오.
필요한 재료
- Texas Instruments의 TIVA TM4C LaunchPad
- 16 × 2 도트 매트릭스 LCD 디스플레이
- 전선 연결
16 × 2 도트 매트릭스 LCD 디스플레이에 대한 간략한 소개
앞서 말했듯이 Energia IDE는 인터페이스를 케이크 조각으로 만드는 아름다운 라이브러리를 제공하므로 디스플레이 모듈에 대해 아는 것이 필수가 아닙니다. 하지만 우리가 무엇을 사용하고 있는지 보여주는 것이 흥미롭지 않았을까요 !!
16 × 2라는 이름은 디스플레이에 16 개의 열과 2 개의 행이 있으며 함께 (16 * 2) 32 개의 상자를 형성 함을 의미합니다. 하나의 상자는 아래 그림과 같이 보입니다.
단일 상자에는 5 행과 8 열의 행렬 순서로 40 픽셀 (도트)이 있으며이 40 픽셀은 함께 하나의 문자를 형성합니다. 마찬가지로 모든 상자를 사용하여 32자를 표시 할 수 있습니다. 이제 핀아웃을 살펴 보겠습니다.
LCD에는 위와 같이 총 16 개의 핀이 있으며 다음과 같이 4 개의 그룹으로 나눌 수 있습니다.
소스 핀 (1, 2 및 3): 이 핀은 디스플레이의 전원 및 대비 레벨을 제공합니다.
제어 핀 (4, 5 및 6): 이 핀은 LCD 인터페이스 IC의 레지스터를 설정 / 제어합니다 (자세한 내용은 아래 링크에서 찾을 수 있음).
데이터 / 명령 핀 (7 ~ 14): 이 핀은 LCD에 표시되어야하는 정보에 대한 데이터를 제공합니다.
LED 핀 (15 및 16): 이 핀은 필요한 경우 LCD 백라이트를 비추는 데 사용됩니다 (옵션).
이 모든 16 핀 중에서 LCD 디스플레이에 대해 더 많이 알고 싶다면 LCD의 올바른 작동을 위해 10 개의 핀만 필수로 사용해야합니다.
다른 많은 마이크로 컨트롤러와 16x2 LCD 디스플레이의 인터페이스도 확인하십시오.
- 4 비트 모드에서 16x2 LCD와 Atmega16 AVR 마이크로 컨트롤러 인터페이스
- MPLABX 및 XC8을 사용하여 PIC 마이크로 컨트롤러와 LCD 인터페이스
- 16x2 LCD와 STM32F103C8T6 인터페이스
- MSP430G2 LaunchPad와 LCD 인터페이스
- 8051 마이크로 컨트롤러와 LCD 인터페이스
- Arduino와 16x2 LCD 인터페이스
- Python을 사용하여 Raspberry Pi와 16x2 LCD 인터페이스
TIVA Launchpad의 ADC
전위차계는 아날로그 출력을 제공하므로 Launchpad의 디지털 핀에 연결할 수 없습니다. 따라서 MCU의 아날로그 또는 ADC 핀은 출력이 아날로그 인 모든 센서를 인터페이스하는 데 사용됩니다. TIVA TM4C에는 12 비트 출력의 2 개의 ADC 채널이 있습니다. 즉, 센서 또는 전위차계의 아날로그 값을 0에서 2 ^ 12 (4096) 사이에서 매핑하여 디지털 값으로 변환 할 수 있습니다. 마이크로 컨트롤러의 아날로그에서 디지털로의 변환에 대해 자세히 알아 보려면 링크를 따르십시오.
아래 그림과 같이 TIVA Launchpad 에는 12 개의 아날로그 입력 핀 (A0-A11)이 있습니다.
회로도 및 연결
TIVA Launchpad TM4C와 16x2 도트 매트릭스 LCD 디스플레이 를 인터페이스하는 전체 회로 다이어그램 은 다음과 같습니다.
이러한 LCD를 인터페이스하는 데있어 한 가지 주요 제약 사항은 작동 전압입니다. LCD 디스플레이의 작동 전압은 + 5V이고 TM4C는 3.6V로만 작동합니다. 다행히도 LCD 인터페이스 IC (HD44780U)의 데이터 핀은 2.7V ~ 5.5V의 넓은 작동 전압을 가지고 있습니다. 따라서 데이터 핀은 3.6V에서도 작동 할 수있는 반면 LCD의 Vdd (핀 2) 만 걱정하면됩니다.
기본적으로 TIVA 보드에는 + 5V 핀이 없으므로 LCD 작동 을 위해 외부 전원 공급 장치를 사용해야합니다. Arduino 보드의 전원 공급 장치를 사용하거나 7805 전압 조정기를 사용하십시오. 전원 공급 장치의 접지를 TIVA 보드의 접지와 연결해야합니다.
아래는 LCD와 TIVA Launchpad 간의 연결을 보여주는 표입니다.
LCD 핀 이름 | TIVA 런치 패드 |
대 | 바닥 |
Vdd | + 5V 전원 공급 장치 |
Rs | TIVA의 PC_6 핀 |
R / W | 바닥 |
활성화 | TIVA의 PB_7 핀 |
D4 | TIVA의 핀 PA_2 |
D5 | TIVA의 핀 PA_3 |
D6 | TIVA의 핀 PA_4 |
D7 | TIVA의 PB_6 핀 |
LCD에 전위차계 값 을 표시하려면 Pot 출력을 아날로그 핀 (PE2)에 연결하십시오.
Energia IDE를 사용하여 LCD 용 TIVA TM4C Launchpad 프로그래밍
설명을 진행하기 전에이 프로젝트에 사용 된 핀을 기록해 두십시오. 위에 주어진 회로도 및 TIVA 핀아웃 다이어그램을 살펴보십시오. 작동하는 비디오 가 포함 된 완전한 코드 는이 튜토리얼의 끝에 첨부됩니다.
기본적으로 Energia IDE는 16x2 LCD 용 라이브러리 (LiquidCrystal)와 함께 제공됩니다. 존재하지 않으면이 github 링크에서 다운로드하여 Energia IDE의 라이브러리 폴더에 붙여 넣습니다.
그런 다음 LCD 용 라이브러리를 포함하고 해당 핀을 정의하여 프로그램을 시작합니다.
#포함
다음 단계는 것입니다 LCD에 연결되는 핀 언급 에를 우리가 이미 사용하여 이름대로, #DEFINE을 우리는 이제 단순히 LCD 핀의 이름을 언급 할 수있다. 동일한 순서를 따르십시오.
LiquidCrystal lcd (RS, EN, D4, D5, D6, D7);
크기와 특성에 따라 다양한 유형의 LCD 디스플레이가 있으므로 void setup () 함수에서 먼저 프로젝트에서 사용 하는 LCD 유형을 지정하십시오. 여기에서는 16x2 LCD 디스플레이를 사용했습니다.
lcd.begin (16, 2);
LCD에 무언가를 인쇄하려면 프로그램에서 두 가지를 언급하십시오. 하나는 lcd.setCursor () 줄을 사용하여 언급 할 수있는 텍스트의 위치 이고 다른 하나는 lcd.print ()에서 언급 할 수있는 인쇄 할 내용 입니다. 여기에서 우리는 1 커서 설정하는 일을 행 1 번째 열을.
lcd.setCursor (0,0);
마찬가지로, 우리는 또한 할 수 있습니다
lcd.setCursor (0, 1); // 커서를 첫 번째 열 두 번째 행으로 설정
글씨를 쓴 후 화이트 보드를 지우는 것과 마찬가지로 LCD도 글씨를 쓰면 지워야 합니다. 아래 줄을 사용하여 수행 할 수 있습니다.
lcd.clear ();
에서는 보이드 루프 () 함수를 사용하여 포트 값을 analogRead () 함수 및 다른 변수에이 값을 저장하고이 값을 표시.
sensorValue = analogRead (sensorPin); lcd.setCursor (0, 0); lcd.print ("ADC 값:"); lcd.setCursor (10, 0); lcd.print (sensorValue);
이제이 ADC 값을 3.3으로 곱하는 것만 으로도 전압으로 변환 할 수 있습니다. TIVA 보드 핀에서 허용 할 수있는 가장 높은 전압이기 때문입니다. 그런 다음 곱한 값을 4096으로 나눕니다.
lcd.setCursor (0, 1); lcd.print ("전압:"); 전압 = (sensorValue * 3.3) / 4096; lcd.setCursor (10, 1); lcd.print (전압);
완전한 프로그램은 끝에 찾을 수 있습니다.
TIVA Launchpad가있는 16x2 LCD 디스플레이
하드웨어와 코드가 준비되면 TIVA 보드를 컴퓨터에 연결하고 코드를 보드에 업로드하기 만하면됩니다. TIVA Launchpad에서 코드를 업로드하는 방법을 알아 보려면 이전 자습서를 따르십시오.
코드가 업로드되면 다음과 같은 화면이 표시됩니다.
이제 전위차계를 돌려 ADC 값을 변경하면 아래 그림과 같이 해당 전압 값도 달라지는 것을 볼 수 있습니다.
전체 코드와 자세한 영상은 아래에서 찾을 수 있습니다. 계속해서 LCD 디스플레이에 표시되는 텍스트를 변경해보십시오.