반응형

기본적인 ATtiny 프로그래밍 방법은 아래 링크에서 확인 할 수 있다.

 

2020.04.02 - [Raspberry Pi & Arduino] - Programming ATtiny13/85 with Arduino Uno - 아두이노로 ATtiny13/85 프로그래밍 하기

 

 

링크의 소스를 사용해 위 그림과 같이 저항과 LED만 연결한 간단한 회로도 LED on시 9.25mA, LED off시 0.98mA의 전류를 소비한다. delay()로 MCU가 아무것도 안하는 상황에서 0.98mA의 전류를 소비하는 것이다. 전원이 계속 공급되는 상황이라면 문제될게 없겠지만 배터리를 사용한다면 전류 사용량을 최소화해서 배터리가 오래 가도록 하는게 좋다.

 

아두이노로 ATtiny를 프로그래밍 할 수 있도록 준비 한다.

 

 

 

 

dealy()가 아닌 sleep_cpu()를 사용해 MCU가 Sleep Mode로 들어 갈 수 있도록 소스를 작성 한다. 64마이크로초 동안 켜졌다 2초 동안 꺼지는 소스이다. 멀티미터로 전류 사용량을 확인해 보면 LED on시 8.34mA, LED off시 0.00mA로 표시 된다. LED off시에는 0.01mA의 전류도 사용하지 않는 것이다. 아주 짧은 시간 동안만 LED가 켜지고 대부분의 시간은 0.01mA 이하의 전류만 사용 하므로 배터리 사용 시간이 훨씬 더 길어지게 된다.

 

반응형
Posted by J-sean
:
반응형

아두이노를 이용해 ATtiny13/85를 프로그래밍 할 수 있다. USBASP를 이용한 프로그래밍은 아래 링크를 참고 한다.

 

2020/05/07 - [Raspberry Pi & Arduino] - Programming ATtiny13 with USBASP - USBASP로 ATtiny13 프로그래밍 하기

 

 

 

 

Arduino를 실행 한다.

 

File - Examples - 11.ArduinoISP - ArduinoISP를 선택 한다.

 

Arduino Uno를 연결하고 Upload한다.

 

 

 

 

Upload가 완료 되면 새로운 sketch에서 File - Preferences를 선택 한다.

 

Additional Boards Manager URLs:에 아래 링크를 입력하고 OK를 클릭 한다.

 

https://mcudude.github.io/MicroCore/package_MCUdude_MicroCore_index.json

 

Tools - Board - Boards Manager...를 선택 한다.

 

Attiny를 검색하고 ATtiny13 board를 설치 한다.

 

 

 

 

Tools에서 아래와 같이 설정을 변경 한다.

 

Board: ATtiny13

BOD: BOD 4.3v

Clock: 1.2 MHz internal osc.

Port: (Your Arduino port)

Programmer: Arduino as ISP

 

위 사진과 같이 연결 한다.

 

Attiny13 Pin Configuration

 

Ardunio pin 10 - ATtiny pin 1

Arduino pin 11 - ATtiny pin 5

Arduino pin 12 - ATtiny pin 6

Arduino pin 13 - ATtiny pin 7

Arduino 5V - ATtiny pin 8

Arduino GND - ATtiny pin 4

 

Optional:

ATtiny pin 4(GND) - Negative side of the LED

ATTiny pin 3 - Resistor (330 Ohm) - Positive side of the LED

 

그리고 Tools - Burn Bootloader를 클릭해 부트 로더를 굽는다.

 

 

 

이제 모든 준비가 끝났다. 원하는 코드를 입력하고 업로드 하면 ATtiny에 프로그램이 업로드 된다.

위와 같이 LED가 1초 주기로 깜빡이는 소스를 입력 하고 Upload 해 보자. Upload가 끝나면 LED가 1초 주기로 깜빡인다.

Arduino IDE 2.X를 사용한다면 그냥 Upload 버튼으로 업로드 할 수 없다. 아래 내용을 참고한다.

 

케이블을 모두 제거 하고 3.0V 배터리만 연결해도 최대 10MHz의 속도로 작동 한다.

 

 

ATTiny85도 특별히 다른 부분은 없다. 같은 방법으로 구성하고 세팅만 위와 같이 바꿔준다.

 

Arduino IDE 2.0 부터는 프로그래머를 이용한 업로드 방법이 바뀌었다. Arduino 1.X처럼 그냥 Upload 하면 A programmer is required to upload. 라는 에러 메세지가 나온다.

위와 같이 Sketch - Upload Using Programmer를 선택해 업로드 해야 한다.

 

반응형
Posted by J-sean
: