티스토리 뷰

Made with Remarkable!

이 글은
아래의 게시물에 따라 기본적인 개발환경이 갖추어졌다는 가정하에 진행합니다.
Develop Environment
하드웨어 조립


Source Download

Windows/Linux 공통

  • GitHub Code 에서 [Clone or downlaod] - [Download ZIP] 다운로드 후 압축 해제(or 안해도 됨)
  • Git 소프트웨어 사용하여 레퍼지토리 Pull

Linux

터미널(bash)에서,

$ cd (원하는 폴더)
$ git clone https://github.com/oroca/oroca_boy.git


Eclipse에 프로젝트 Import 하기

공통사항

  • 이클립스를 실행합니다
  • [File] - [Import…] 클릭
  • [General] - [Existing Projects into Workspace] 선택 후 [Next >] 클릭
  • [Browse…] 클릭하여 다운받은 프로젝트 폴더 선택
    혹은 [Select archive file]을 선택하여 다운받은 압축파일 선택
  • 프로젝트 선택 후, [Finish] 버튼 클릭
  • [Ctrl + b] 를 입력하여, Build / 결과 확인하기

Build 실패 (PATH를 지정하지 않은 경우)

아래 화면은 GNU ARM Toolchain의 패스가 지정되어 있지 않아 발생한 에러입니다.

  • 프로젝트를 선택하고 [Alt + Enter] 입력
  • [Properties]창에서 [C/C++ Build] - [Environment] 클릭
  • [PATH]를 더블클릭하여 자신의 GNU ARM Toolchain 경로를 지정
    ex) /home/opusk/Workspace/tools/gcc-arm-none-eabi-5_4-2016q2/bin
    여러 패스들에 대한 구분자는 Windows는 ;(세미콜론), Linux는 :(콜론)

  • 빌드 재시도 [Ctrl + b]

make파일 패스가 없어서 오류가 발생하기도 하는데 같은 방식으로 패스를 추가해주면 됩니다.


다운로드/디버깅 하기 - OpenOCD

  • [Run] - [Debug Configurations…] 클릭
  • [GDB OpenOCD Debugging] 더블클릭
  • [Main]탭에 아래와 같이 입력(프로젝트 명에 따라 다름)
  • [Debugger]탭에서 [OpenOCD Setup]의 [Config options]에 아래와 같이 입력
-f interface/stlink-v2-1.cfg -f target/stm32l4x.cfg

  • [Debug] 버튼 클릭
  • 컴파일/빌드/다운로드를 거쳐 아래 화면이 켜지면 정상
  • 빨간색 정지 버튼 옆의 초록색 재생버튼(F8)을 누르면,
    아래와 같이 Thread가 “Running”으로 변경 -> 프로그램 계속 동작


다른 게임은 어떻게 하죠?

[Project Explorer]에서 src/sketch/arduboy로 이동하면,
현재 추가된 게임 폴더들이 있습니다.

이 중에서 원하는 것만 활성화 시키고 나머지는 비활성화 시키고 빌드하면 됩니다.

활성화/비활성화 방법은,
해당 게임폴더를 [우클릭]하여, [Resource Configurations] - [Exclude from Build…] 클릭합니다.
그리고 아래와 같은 화면에서,

  • 체크를 해제하면 [활성화]
  • 체크를 하면 [비활성화]


Main 소스파일은 어디에 있나요?

  • Main 소스파일은 아래에 위치하고 있습니다.
    프로젝트폴더/src/arduino/variants/orocaboy/main.cpp

  • main() 함수와 loop() 함수는 아래의 헤더파일에서 Extern 선언되어 있죠
    프로젝트폴더/src/arduino/cores/arduino/arduino.h

  • 그리고 main()함수와 loop()함수의 정의는 각 게임의 소스파일에 정의되어 있습니다.
    프로젝트폴더/src/sketch/arduboy/(games)/(games).cpp
    ex) BLBA_AB/BLBA_AB.cpp



More Detail

Git 저장소 
GitHub Wiki



저작자 표시 동일 조건 변경 허락
신고
댓글
댓글쓰기 폼