본문 바로가기

교육/ATmega2560

ATmega2560 - 7 Segment연결



아트메가 128에 사용하였던 소스를 가져와 아트메가 2560을 동작시키고있다. 
이렇게 소스를 가져와 조금 수정하여 쓰는 것을 쿼팅이라한다.
  • 쿼팅 - 비슷한소스를 활용하여 쓰는 것 



     
                

7 Segment - 8을 이루고있는 선의 총 합이 7개라서 7세그먼트라 부른다. ( 7개의 선은 각각 LED로 이루어져 있다. )
지금 사용하고 있는 7 Segment는 왼쪽 회로도를 참고하여야 한다.

  • LED이기 때문에 GND와 VCC만 연결하여 주면 불이 들어온다. ( 옆에 .도 LED임 )
  • (GND와 VCC에 각각 연결할 다리 2쌍씩이 필요하다.) 


common - anode type의 경우 밑 그림과 같이 GND값을 넣어주면 된다.




 
















b번 다리에 GND를 넣어 b번의 불을 킨 연결 셋팅이다.


지금 사용하고 있는 7 Segment는 common - anode type이기 때문에 가운데 다리가 VCC이므로 저항을 연결하여 VCC셋팅을 해주어야 한다.











7 Segment 는 PORTA ~ PORTH 중 한 포트를 이용하여야 하는데 

LCD -> PORTC / PORTA
INT -> PORTE
USART -> PORTE 0번

PORTA / PORTC / PORTE는 이미 사용하고 있기 때문에 이 PORT들이 아닌 다른 PORT를 써야한다 

PORTB를 사용하여 연결한다.


smart.h
#define PORTB       (*((volatile unsigned char *) 0x25))
#define DDRB         (*((volatile unsigned char *) 0x24))
#define PINB          (*((volatile unsigned char *) 0x23)) 



-지금 사용하고 있는 7 Segment는 0V를 줘야 불이 켜지는 모델이기 때문에 
PORTB 에 0을 입력하여 준다.

  • DDRB는 입출력 결정이기 때문에 바꾸지 않아도 된다.








회로로 표현하면 이렇게 된다.




(숫자와 문자 표현 방식)





0~9 까지의 숫자를 반복적으로 교체시키는 코드




  • ↓소스코드