nRF51822 개발환경 세팅하기 2부 포스팅입니다.
목차
nRF51822
KEIL 설정하기
KEIL uVision을 실행해야 하는데 막막하다. 간단하게 SDK 설치 폴더로 가자. 그리고 아래의 경로를 찾아 들어가 blink 예제를 실행해보자.
(Sdk 경로)examplesperipheralblinkypca10028blankarm5_no_packsblinky_pca10028.uvprojx
그러면 프로그램을 켜보면 뭘 막 설치하라고 뜰 것이다. 그거 설치 안하면 안돌아가니까 설치해줘야한다. 만약에 문제가 생겼다면 Pack Installer를 실행해주면 될 것이다. 상단에 보면 주사위가 모여져 있는 것을 볼 수 있을 것이다.
만약에 문제가 있으면 Pack Installer를 클릭해서 없는 파일들을 다운받아주면 된다.
pca10028 보드는 nRF51822용 보드가 아니다. 더군다나 BLE400 보드와 LED 설정 위치가 다르다. 이번 포스팅에서는 디버거 설정과 타겟 설정하는 것만 배울 것이다.
가운데를 눌러서 타겟 설정을 해준다.
사용하는 칩을 선택해준다.
플래시 툴 설정 버튼을 누른다.
디버그 탭으로 가서 J-Link로 설정해준다.
이렇게 설정해줘도 돌아가는 사람이 있을거고 안돌아 가는 사람이 있을 수도 있다. J-link가 최신버전이면 안돌아가는 듯 하다. 쩝
F7버튼을 눌러서 빌드를 하고 F8버튼을 눌러서 플래싱을 한다. 만약에 플래싱이 안된다면 nRF Studio를 사용해야 한다.
nRF Studio 설정하기
먼저 nRF Studio를 실행한다.
위 처럼 창이 뜰 것이다. 만약에 창을 봤을 때 nRFx Programming 탭이 해제되어 있다면
1)디버거를 연결 한 것이 아니거나, 2)잘못 연결했거나, 3)호환되는 디버거가 아니어서 일 것이다.
만약에 프로그래밍 탭을 눌렀는데 위처럼 설정할 수 없는 창이 나오지 않는다면 Refresh 버튼을 눌러보도록 한다.
맨 처음 플래싱 된 코드는 아마 UART로 무슨 데이터를 막 뿌려주는 코드였는데, 데이터가 깨져서 나와서 알 수가 없었다.
그러나 아마 기초적인 데이터를 설명한 것이 아닐까 싶다.
1 2 3 4 5 6 7 8 9 10 쭉쭉해서 30까지 출력된 것을 보니 제어할 수 있는 핀이 30개가 아니었을까 유추 해보는 것인데 암튼 깔끔하게 지워주고 시작하자.
Erase all을 누르면 깔끔하게 지워준다.
그 다음 Program Application 탭에서 Browse 탭을 눌러서 빌드 된 Hex 파일을 선택해주고 프로그램을 누른다.
동작 결과
그러면 플래싱이 되어서 LED가 차례대로 2개가 켜지고 2개가 꺼지는 동작을 반복할 것이다. 원래 코드를 뜯어보면 4개가 순차적으로 동작을 했어야 하지만, 핀 설정이 잘못되어 2개가 누락되어 있다. 그래서 아마 다음 포스팅에서는 LED를 수정해 5개가 차례대로 켜졌다가 꺼지는 동작을 반복하는 코드를 작성해 보려고 한다. 어느 카페를 가보니 라이브러리를 수정해서 만들어 놓은 것이 있지만, 최대한 라이브러리 수정없이 – 기존 한줄로 된 함수를 없애고 코드를 처음부터 작성을 해보려고 한다.