이 세션에서는 8x8 LED 매트릭스와 ATmega8 마이크로 컨트롤러가 있는 8x8 LED 디스플레이를 디자인 할 것입니다.이 디스플레이 는 알파벳 또는 이름을 표시 할 수 있습니다. 일반적인 8x8 LED 매트릭스는 다음과 같습니다.
8x8 LED 매트릭스에는 매트릭스 형태로 배열 된 64 개의 LED (발광 다이오드)가 포함되어있어 LED 매트릭스라고합니다. 이러한 매트릭스는 64 개의 LED를 회로하여 만들 수 있습니다. 그러나 그 과정은 시간이 많이 걸립니다. 이제는 그림과 같이 컴팩트 한 형태로 제공됩니다. 이 소형 모듈은 다양한 크기와 다양한 색상으로 제공됩니다. 편리하게 선택할 수 있습니다.
모듈 비용은 LED 64 개 비용과 동일하므로 애호가에게는 이것이 작업하기 가장 쉽습니다. 모듈의 PIN 구성은 그림과 같습니다. PIN은 오류를 방지하기 위해 그림에 표시된 것과 정확히 일치해야합니다. 모듈의 내부 회로 구성에 대해 자세히 설명합니다.
구성품
하드웨어: ATMEGA8, 전원 공급 장치 (5v), AVR-ISP PROGRAMMER, 100uF 커패시터 (전원 공급 장치에 연결됨), 1KΩ 저항 (8 개).
소프트웨어: Atmel studio 6.1, progisp 또는 flash magic.
회로도 및 작동
ATMEGA8과 LED 매트릭스 모듈 사이의 연결 은 아래 그림과 같습니다.
PORTD, PIN0 ------------------ LED 모듈의 PIN13
PORTD, PIN1 ------------------ LED 모듈의 PIN03
PORTD, PIN2 ------------------ LED 모듈의 PIN04
PORTD, PIN3 ------------------ LED 모듈의 PIN10
PORTD, PIN4 ------------------ LED 모듈의 PIN06
PORTD, PIN5 ------------------ LED 모듈의 PIN11
PORTD, PIN6 ------------------ LED 모듈의 PIN15
PORTD, PIN7 ------------------ LED 모듈의 PIN16
PORTB, PIN0 ------------------ LED 모듈의 PIN09
PORTB, PIN1 ------------------ LED 모듈의 PIN14
PORTB, PIN2 ------------------ LED 모듈의 PIN08
PORTB, PIN3 ------------------ LED 모듈의 PIN12
PORTC, PIN0 ------------------ LED 모듈의 PIN01
PORTC, PIN1 ------------------ LED 모듈의 PIN07
PORTC, PIN2 ------------------ LED 모듈의 PIN02
PORTC, PIN3 ------------------ PIN05of LED 모듈
8 × 8 LED 매트릭스 디스플레이의 회로도 도 이하에 나타낸다.
매트릭스 형태로 배열 된 64 개의 LED가 있습니다. 따라서 그림과 같이 8 개의 열과 8 개의 행이 있습니다. 이러한 행과 열에 걸쳐 한 행의 모든 양의 터미널이 함께 모입니다. 각 행에는 해당 행의 모든 8 개 LED에 대해 하나의 공통 양극 단자가 있습니다. 아래 그림과 같습니다.
따라서 8 개의 행에 대해 8 개의 공통 양극 단자가 있으므로 첫 번째 행을 고려하십시오. 그림에서 볼 수 있듯이 D1에서 D8까지의 LED는 공통 양극 단자를 가지고 있으며 LED MODULE에서 PIN9로 가져옵니다.
행의 모든 공통 긍정이 LED MODULE에서 정돈 된 방식으로 나오지 않음을 알아야합니다. 모든 경우에 공통 터미널에는 매우 불규칙성이 있습니다. 터미널을 연결할 때 이것을 명심해야합니다.
매트릭스의 첫 번째 행에있는 하나 또는 모든 LED를 켜려면 PIN0이 아닌 LED MATRIX MODULE의 PIN9에 전원을 공급해야합니다.
매트릭스의 세 번째 ROW에있는 하나 또는 모든 LED를 켜려면 PIN2가 아닌 LED MATRIX MODULE의 PIN8에 전원을 공급해야합니다.
따라서 ROW에있는 하나 또는 모든 LED가 켜지 길 원할 때마다 LED MODULE의 해당 핀에 전원이 공급됩니다.
이것은 아직 끝나지 않았습니다. ROWS는 아무 것도 산출하지 않습니다. 다른 쪽 끝을 접지해야합니다. 아래에서 논의 할 것입니다.
이제이 예에서는 일반적인 양수 행을 무시하고 일반적인 음수 열에 중점을 둡니다.
따라서 해당 모듈에서 첫 번째 열의 모든 음극 단자가 PIN13으로 모입니다. 이것은 아래 그림에 나와 있습니다.
여기에서도 모듈의 PIN OUTAGE에 이상이 있습니다. 첫 번째 열 LED 공통 음극은 PIN13에서 나옵니다. 두 번째 열 LED 공통 음극은 PIN3에서 나옵니다.
연결하는 동안 핀에주의를 기울여야합니다. 이제 첫 번째 열의 LED 중 하나 또는 모두를 접지해야하는 경우 MATRIX MODULE의 PIN13이 접지됩니다. 이 방법은 다른 7 개의 일반적인 음수 열에 모두 적용됩니다. 두 경우가 모두 합쳐지면 아래와 같은 회로를 만나게됩니다.
위의 회로 는 LED MODULE 의 완전한 내부 다이어그램입니다. 매트릭스에서 LED D10을 켜려면 모듈의 PIN14에 전원을 공급하고 모듈의 PIN3을 접지해야합니다. 이것으로 D10이 켜집니다. 이것은 아래 그림에 나와 있습니다. MATRIX가 모든 것을 순서대로 알고 있는지 먼저 확인해야합니다.
D1을 켜려면 매트릭스의 PIN9에 전원을 공급하고 PIN13을 접지해야합니다. 그 LED로 D1이 빛납니다. 이 경우의 현재 방향은 아래 그림과 같습니다.
이제 까다로운 부분에 대해 D1과 D10을 동시에 켜고 싶다고 생각해보십시오. 따라서 PIN9, PIN14에 전원을 공급하고 PIN13, PIN3을 접지합니다. 이를 통해 D1 및 D10과 함께 D2 및 D9가 켜집니다. 공통 터미널을 공유하기 때문입니다. 따라서 대각선을 따라 LED를 켜려면 도중에 모든 LED를 켜야합니다. 이것은 아래 그림에 나와 있습니다.
따라서이 문제를 해결하기 위해 한 번에 하나의 LED 만 켤 것입니다. t = 0m SEC에서 LED D1이 켜집니다. t = 1m SEC에서 LED D1이 꺼지고 LED D2가 켜집니다. 다시 t = 2 m SEC에서 LED D2가 꺼지고 LED D1이 켜집니다. 계속됩니다.
이제 트릭은 인간의 눈이 30Hz 이상의 주파수를 포착 할 수 없다는 것입니다. 즉, LED가 30HZ 이상의 속도로 지속적으로 켜지고 꺼지는 경우입니다. 눈은 LED가 계속 켜져있는 것으로 봅니다. 그러나 이것은 사실이 아닙니다. LED는 지속적으로 켜지고 꺼집니다. 이 기술을 멀티플렉싱이라고합니다.
멀티플렉싱을 사용하면 한 번에 한 행만 회전하고 8 개 행을 지속적으로 순환합니다. 이것은 육안으로 완전히 켜진 매트릭스로 시각화되었습니다.
이제 행렬에 "A"를 표시하고 싶다고 가정합니다.
말했듯이 순식간에 한 행을 켭니다.
이때 t = 0m SEC에서 PIN09는 HIGH로 설정 (현재 다른 ROW 핀은 LOW), PIN3, PIN4, PIN10, PIN6, PIN11, PIN15는 접지 (다른 COLUMN 핀은 현재 HIGH)
이때 t = 1m SEC에서 PIN14는 HIGH (다른 ROW 핀은 현재 LOW)로 설정되고, PIN13, PIN3, PIN4, PIN10, PIN6, PIN11, PIN15, PIN16은 접지 (다른 COLUMN 핀은 이때 HIGH입니다.))
t = 2m SEC에서 PIN08은 HIGH로 설정 (현재 다른 ROW 핀은 LOW), 이때 PIN13, PIN3, PIN15, PIN16은 접지 (다른 COLUMN 핀은 현재 HIGH)
t = 3m SEC에서 PIN12는 HIGH로 설정 (현재 다른 ROW 핀은 LOW), 이때 PIN13, PIN3, PIN15, PIN16은 접지 (다른 COLUMN 핀은 현재 HIGH)
이때 t = 4m SEC에서 PIN01은 HIGH로 설정 (현재 다른 ROW 핀은 LOW), PIN13, PIN3, PIN4, PIN10, PIN6, PIN11, PIN15, PIN16은 접지 (다른 COLUMN 핀은이 시점에서 HIGH))
t = 5m SEC에서 PIN07은 HIGH로 설정되고 (현재 다른 ROW 핀은 LOW) 이때 PIN13, PIN3, PIN4, PIN10, PIN6, PIN11, PIN15, PIN16은 접지됩니다 (다른 COLUMN 핀은 이때 HIGH입니다.))
t = 6m SEC에서 PIN02는 HIGH로 설정 (현재 다른 ROW 핀은 LOW 임) 이때 PIN13, PIN3, PIN15, PIN16은 접지 (다른 COLUMN 핀은 현재 HIGH)
t = 7m SEC에서 PIN05는 HIGH로 설정 (현재 다른 ROW 핀은 LOW), 이때 PIN13, PIN3, PIN15, PIN16은 접지 (다른 COLUMN 핀은 현재 HIGH)
이 속도에서는 디스플레이에 "A"문자가 계속 표시됩니다. 그림에 나와 있습니다.
이것은 모든 문자가 디스플레이에 표시되는 방식입니다. 회로도에 표시된대로 적절한 방법으로 회로를 연결 한 후. 이름이 표시되도록 순서대로 멀티플렉싱을 수행하도록 컨트롤러에 직접 명령을 제공 할 수 있습니다.