안녕하세요 친구 여러분, 이것은 저의 3년차 BE 프로젝트인 \'DC 모터의 속도 제어\'이며 여러분 모두와 공유하고 싶습니다.
여기에서는 LCD, 육각 키보드 및 모터를 연결하는 방법을 배웁니다.
코드는 단순화하기 위해 어셈블리로 작성되었습니다. 먼저 LCD 인터페이스 16진수 키보드 인터페이스와 L293D와의 모터 인터페이스에 대해 설명했습니다. 시작하자! ! !
* Lumia 52 * LCD * 육각형 키보드 * DC 모터 293d 브리지 모터 드라이버 어셈블리에서 8051 프로그래밍에 대한 기본 지식이 있다고 생각하므로
IC를 사용하면 시계 방향과 시계 반대 방향으로 제어할 수 있는 두 개의 DC 모터를 연결할 수 있고, PWM 활성화 핀을 제공하여 각 DC 모터의 속도를 제어할 수 있습니다.
L293D의 출력 전류는 600mA이고 피크 출력 전류는 채널당 1.2A입니다.
또한, 역전위 출력 다이오드의 영향으로부터 회로를 보호하기 위해 집적회로도 포함되어 있습니다.
출력 전원 공급 장치(VCC2)
의 넓은 범위가 있으므로 L293D는 DC 모터 드라이브에 가장 적합한 선택입니다.
4.5V ~ 36V
회로에서 볼 수 있듯이 DC 모터(A, B, Enable)를 연결하려면 3개의 핀이 필요합니다.
속도를 제어하려면 활성화 핀을 마이크로 컨트롤러의 PWM 핀에 연결합니다.
모터 하나만 연결하고 활성화 핀을 사용하여 DC 모터의 속도를 제어했습니다.
LCD에 대해서는 너무 큰 주제이므로 자세히 다루지는 않겠습니다. 그리고 16핀 Vss-GND Vdd-
양전압 v-
명암 설정 데이터 핀 LED - 백라이트 핀 LED 및 LED를 포함하여 전체 LCD를 매우 사용하고 있는 일부 사이트를 언급했습니다
. LCD(RS, R/W & EN) 및 8(또는 4) 데이터 라인에는 3개의 제어 라인이 필요합니다. RS가 낮음(0)일 때
데이터는 명령으로 처리됩니다.
RS가 높을 때(1)
, 전송된 데이터는 화면에 표시되어야 하는 텍스트 데이터로 간주됩니다. R/Wi가 로우(0)일 때
데이터 버스의 정보가 LCD에 기록됩니다.
RW가 높을 때(1)
, 프로그램은 LCD에서 효과적으로 읽혀집니다.
대부분의 경우 LCD에서 데이터를 읽을 필요가 없으므로 이 라인을 Gnd에 직접 연결하여 컨트롤러 라인을 절약할 수 있습니다.
Enablepin은 데이터 핀의 데이터를 잠그는 데 사용됩니다. HIGH - Low 신호가 필요합니다.
데이터를 잠그려면
EN 라인이 낮아지면 LCD에서 명령을 설명하고 실행합니다.
절대로 낮게 설정하지 않으면 명령이 실행되지 않습니다. 참조-
키보드는 본질적으로 4 × 4 매트릭스 형태로 배열된 16개의 키 모음입니다.
16진수 키보드에는 일반적으로 숫자 0~9와 문자 A~F를 나타내는 키가 있습니다.
16진수 키보드에는 각각 R1, R2, R3, R4, C1, C2, C3 및 c4의 8개 통신 라인이 있습니다.
R1~R4는 4개의 행을 나타내고, C1~C4는 4개의 열을 나타냅니다.
특정 키를 누르면 해당 키 터미널 연결의 해당 행과 열이 단락됩니다.
예를 들어 1을 누르면 R1 행과 C1 열이 단락되는 식입니다.
프로그램은 열 검색이라는 방법으로 어떤 키를 눌렀는지 식별합니다.
이 방법에서는 특정 행이 낮게 유지됩니다(
다른 행은 높게 유지).
그리고 해당 열이 낮은지 확인합니다.
해당 열이 낮은 것으로 확인되면 해당 열과 해당 행 사이의 연결을 나타내는 키(
라인이 낮게 유지됨)
를 눌렀습니다.
예를 들어, 처음에 행 R1이 낮게 유지되고 열 C1이 스캔 중에 낮게 발견되면 이는 키 1이 눌려졌음을 의미합니다.