Embedded System/AVR

[AVR] Atmel studio 6 sprintf함수 사용하기

임베지수 2017. 4. 2. 14:48

Atmel Studio 6 환경에서 sprintf 함수를 사용하면 LCD에 문자열을 쉽게 표시할 수 있다. 정수를 표현하고 싶다면 그냥 string.h 을 추가하여 그냥 사용해도 되지만 실수형도 표시하고 싶으면 약간의 설정이 필요하다.

 

프로젝트를 켜고 Alt + F7 키를 눌러서 프로젝트 설정창으로 이동한다. 그리고 왼쪽 AVR/GNU Linker의 Libraries를 눌러 아래 그림과 같이 설정해준다. 추가버튼을 눌러서 아래 그림처럼 libprintf_flt 라고 적어주고 OK를 눌러준다.

 

 

 그리고 General로 이동하여 아래 그림에서 빨간 밑줄들을 체크해준다. 그리고 저장하면 사용준비 완료다~!

 

 

간단하게 테스트 해보았다. DC모터 엔코더 값을 출력해 보았다. 먼저 char arr[16]을 선언해주고 아래 소스와 같이 해보았다. sprintf의 사용법은 알거라 생각하고 패스!

 

 

잘 된다. 소수 둘째자리까지 표시하게 했으므로 저렇게 나온다. 그냥 %f라고 하면 소수점 아래 6자리까지 나와서 너무 길다.

sprintf 말고 printf도 사용할 수 있는데 printf함수를 이용하면 uart통신으로 뿌려준다는데 사용안해봐서 모르겠다~

 

 

'Embedded System > AVR' 카테고리의 다른 글

[AVR] 적외선 통신(IR) - 1. 이론  (0) 2017.04.02
[AVR] 다중 ADC 사용시 주의점!  (2) 2017.04.02
[AVR] I2C(TWI) 통신  (0) 2017.04.02
[AVR] ISP 커넥터(6핀, 10핀)  (2) 2017.04.02
[AVR] SPI 통신  (15) 2017.04.02