본문 바로가기

[ATTiny13] GPIO를 사용한 LED blink 테스트

by rudals.kim 2021. 5. 7. 댓글 개
반응형

ATTiny13의 GPIO를 사용하여 LED blink 테스트를 해 보았습니다.

 

데이터시트에서 GPIO관련 레지스터를 찾아보았습니다. GPIO와 관련된 레지스터는 아래 4가지가 있습니다.

MCUCR : PUD(Pull-up Disable)만 연관이 있으며, 이 비트를 '1'로 설정시 모든 GPIO의 풀업이 해제됩니다.

PORTB : 각 GPIO 포트의 R/W 용도로 사용합니다.

DDRB : 각 GPIO 포트를 Input 또는 Output용으로 설정합니다.

PINB : 각 GPIO 포트의 R/W 용도로 사용합니다.(초기값이 없음)

 

ATTiny13에는 6개의 GPIO를(PB0~PB5) 사용할 수 있습니다. 이 중 PB5는 ATTiny13의 RESET 용도로도 사용됩니다.

따라서 PB5핀을 GPIO로 설정시 이후로부터는 ISP로 펌웨어를 업로드 할 수 없을뿐만 아니라 Fuse설정도 할 수 없으니 사용에 주의하여야 합니다. 

이전에 설정한 VSCode IDE 환경에서 간단히 GPIO를 toggle하는 blink 소스를 작성하였습니다.

터미널창에있는 shell에서 make를 하여 빌드한 후 make program으로 업로드 합니다.

(makefile은 여기에서 다운로드 하여 사용하시면 됩니다.)

아래는 테스트 영상입니다.

반응형

댓글