:::: MENU ::::
Posts tagged with: 이클립스

System Workbench for STM32

System Workbench for STM32를 설치하는 방법은 2가지이다. 인스톨 프로그램으로 설치하는 방법과 기존에 설치되어 있는 이클립스에 설치하는 방법이 있다.

인스톨 프로그램

  • System Workbench for STM32를 링크에서 다운로드 한다.
  • 다운로드 받은 바이너리 파일의  퍼미션을 수정후 파일을 실행한다.

chmod 755 install_sw4stm32.run then ./install_sw4stm32.run

문제는 이렇게 설치를 하다가 다음과 같은 에러메시지가 나오고 더 이상 진행이 되지 않는다.

이클립스에서 추가하는 방법

  • 이클립스에서“Help >> Install New Software”를 선택
  • http://ac6-tools.com/Eclipse-updates/org.openstm32.system-workbench.update-site-v2를 입력하고, 이름은 System Workbench for STM32 – Bare Machine edition으로 한다.

  • 인스톨 전에 다음과 같이 맥의 게이트키퍼를 disable후 설치를 하고, 설치후 enable한다.

#To disable
sudo spctl –master-disable
#To enable
sudo spctl –master-enable

시작하기

  • File -> New -> Project… -> C/C++ -> C Project
  • 프로젝트 이름을 정하고, 프로젝트 타입은 AC6 STM32 MCU project를 선택한다.

  • 다음 스텝에서 프로그래밍을 할 보드를 선택한다.
  •  StdPeriph 또는 Cube Hal을 사용할 수 있다.

기타

참고


Freescale FRDM-K82F 보드

Freescale FRDM-K82F 보드의 개발 환경설정

1. 이클립스 업데이트 파일 설치

“Help”->Check for Updates를 누르고, Processor Expert for Kinetis만 선택하고 업데이트 한다.

“Help” -> “Install New Software”를 선택하고 Add 버튼 > Archive 버튼을 눌러서 SDK 설치 폴더 아래 /tools/eclipse_update 폴더에서 KSDK_<version>_Eclipse_Update_zip file. 를 선택한다

2. 플랫폼 라이브러리 빌드하기

“File->Import”를 선택후 “General”을 눌러서 “Existing Projects into Workspace”를 선택한다.
루트 디렉토리는 <install_dir>/lib/ksdk_platform_lib/kds/K82F25615 를 선택하고 finish를 클릭한다.
메뉴에 헤머 아이콘을 눌러 빌드한다.

3. 데모 프로그램을 빌드하기

<install_dir>/examples/frdmk82f/demo_apps/<demo_name>/kds 아래있는 데모 프로그램을 플랫폼 라이브러리 빌드 할때와 마찬가지로 빌드한다.

예를 들면 hello_world의 경우 <install_dir>/examples/frdmk82f/demo_apps/hello_world/kds
메뉴에 헤머 아이콘을 눌러 빌드한다.

4. 데모 프로그램을 다운로드 및 디버깅

FRDM-K82F는 기본적으로 mbed/CMSIS-DAP debug interface 가 설치가 되어있으므로 KDS에서 다운로드 디버깅을 하기위해서는 J-Link OpenSDAv2.1를 설치해야 한다. 리셋 버튼을 누른상태에서 “SDA USB” USB 포트를 연결해서 전원을 연결한다. 그러면 BOOTLOADER로 폴더가 잡힌다.
https://www.segger.com/opensda.html 여기에서 OpenSDA V2.1: Download JLink_OpenSDA_V2_1_2015-10-13.zip 을 다운로드후 압축을 풀고 bin파일을 BOOTLOADER 폴더에 넣으면 다시 JLINK라는 폴더로 잡힌다.

Run > Debug Configurations에서 맨 아래있는 GDB SEGGER J-Link를 선택하고 디버깅을 한다.
Hellow World의 경우 시리얼 터미널 설정은 115200. 보드의 전원 및 디버깅을 위해서 USB SDA 포트와 PC를 연결한다.

관련 튜토리얼 페이지


아두이노 & 이클립스 (Arduino & Eclipse)

지난번 포스팅 ‘이클립스(Eclipse)에서 아두이노(Arduino)사용하기’ 은 이클립스에서 플러그인을 설치해서 아두이노를 사용하는 것이었다. 하지만 아두이노는 command line에서 컴파일을 지원하므로 이런 플러그인 없이도 make 파일의 위치, 컴파일러 정보등만 이클립스에 설정하면 사용이 가능하다.

1. 프로젝트 만들기

File > New > Makefile Project with Existing Code를 선택후 Project Name을 설정하고 Existing Code Location을 설정한다.

2. Project Properties

C/C++ Build항목에서 Build location의 Build directoty 설정은 makefile이 있는 위치를 지정한다.

C/C++ General 항목의 Path and Symbols에서 Include할 폴더들을 입력하고  Symbol에도 미리 정의돼야 할 심볼을 입력한다.

3. MakeFile

정작중요한 것은 MakeFile이다. 여기에 제대로된 설정이 되어 있는지 확인해야 함.


이클립스 팁 – 줄번호 표시, 테마설정

이클립스에서 줄 번호 설정: Preference >> General >> Editors >> Text Editors에서 “Show line numbers“를 선택한다.

테마 설정: http://eclipsecolorthemes.org/?view=plugin 여기에서 Color Theme를 받을 수 있다. 아니면 Help >> Eclipse Market Place…  “Color Theme”를 검색을 해서 플러그인 설치

테마중에 SubllimeText의 테마가 있는데, 사용해 보니 Obsidian 이 보다 더 좋은 느낌.. 

 


이클립스(Eclipse)에서 아두이노(Arduino)사용하기

이클립스 개발환경에서 아두이노사용하기

  1. 이클립스(Eclipse) 설치 http://www.eclipse.org/downloads/ Eclipse IDE for C/C++ Developers 를 설치
  2. 아두이노 이클립스 플러그인:  저작자의 홈페이지Installation advice, 가 있으니 참고. 플러그인 설치는 이클립스를 실행후 Help >> Install New Software…를 실행후 “http://www.baeyens.it/eclipse/update” 주소를 입력하고 Add 버튼을 누른다. 그러면 Arduino Eclipse extensions 이 나타나는데 이것을 선택하면 설치가 된다.
  3. Preferences > General > Workspace를 선택하고 “Save automatically before build”를 선택 
  4. Arduino항목에서 Arduino가 설치된 path와 library path 를 입력하고, Use Arduino ODE tools in eclipse를 선택한다. 그리고 test serial dll를 클릭해서 serial drive가 동작하는 지 확인한다.
  5. 아두이노 프로젝트 만들기: New >> Project >> Arduino >> New Arduino sketch를 선택, 프로젝트 이름를 설정, 보드와 COM port를 설정하면 setup()과 loop()함수가 만들어진 빈 프로젝트가 생긴다.
  6. 간단한 blink 예제를 만들고 Project >> Build All하면 컴파일이되고, AVR >> Upload Project to Target Device를 선택하면 아두이노 보드에 프로그래밍이된다.

ARM 개발 환경

hex to bin / bin to hex

MAC에서 개발 환경을 세팅하다보니 윈도우즈 기반의 툴들에서 쉽게 찾던 것들을 구글링하게 된다. ARM 이클립스 개발환경에서 hex, bin을 만들어 주는 툴은 arm-none-eabi-objcopy 인테, 다음과 같이 hex와 binary간의 변환이 가능하다.

arm-none-eabi-objcopy -I binary -O ihex filename.bin filename.hex

arm-none-eabi-objcopy -I ihex -O binary filename.hex filename.bin

물론 이클립스의 프로젝트 설정에서 Cross ARM GNU Create Flash Image설정에서 Raw binary 또는 Intel Hex를 설정이 가능함.

flash downloader demonstrator

STM32 칩들은 내부에 시리얼 부트로더가 있어서 쉽게 flash를 업데이트 가능하다. ST에서도 flash downloader demonstrator라는 프로그램을 제공하는데 윈도우즈만 제공한다. Mac에서 사용할 수 있는 것은 stm32loader scryptstm32ld program이다.

stm32loader의 사용법 (-e : erase, -w: write, -v: verify)

./stm32loader.py -e -w -v example/main.bin