<4D F736F F D20B0B3B9DFC8AFB0E65FB4D9BFEEB7CEB5E55FB5F0B9F6B1EBBCB3C1A42E646F63>

Similar documents
DE1-SoC Board

Install stm32cubemx and st-link utility

사용시 기본적인 주의사항 경고 : 전기 기구를 사용할 때는 다음의 기본적인 주의 사항을 반드시 유의하여야 합니다..제품을 사용하기 전에 반드시 사용법을 정독하십시오. 2.물과 가까운 곳, 욕실이나 부엌 그리고 수영장 같은 곳에서 제품을 사용하지 마십시오. 3.이 제품은

Product A4

Microsoft Word - Armjtag_문서1.doc

ISP and CodeVisionAVR C Compiler.hwp

APOGEE Insight_KR_Base_3P11

슬라이드 1

IAR_IDE_LM3S8962_Config_v3.doc

ARM01

슬라이드 1

H3050(aap)

슬라이드 1

슬라이드 1

PowerChute Personal Edition v3.1.0 에이전트 사용 설명서

MAX+plus II Getting Started - 무작정따라하기

삼성955_965_09

대경테크종합카탈로그

K7VT2_QIG_v3

PI ZH-CN

Microsoft Word - Installation and User Manual_CMD V2.2_.doc

마이크로프로세서 Cortex-M

*Revision History 날짜 내용 최초작성 Tel Fax [2] page

슬라이드 1

목차 1. 개요 USB 드라이버 설치 (FTDI DRIVER) FTDI DRIVER 실행파일 USB 드라이버 확인방법 DEVICE-PROGRAMMER 설치 DEVICE-PROGRAMMER

(SW3704) Gingerbread Source Build & Working Guide

Remote UI Guide


목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

Microsoft PowerPoint - ch07.ppt

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT END USERS. Oracle programs, including any oper

Microsoft PowerPoint - AD-USBISP_V03_사용법.pptx

Copyright 0, Oracle and/or its affiliates. All rights reserved.,.,,,,,,,,,,,,.,...,. U.S. GOVERNMENT RIGHTS Programs, software, databases, and related

PowerPoint 프레젠테이션

¹Ìµå¹Ì3Â÷Àμâ

A B C D E F RRC350 RRC Roteo 35

Preliminary spec(K93,K62_Chip_081118).xls

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

PowerPoint 프레젠테이션

Oracle Apps Day_SEM

Microsoft PowerPoint - polling.pptx

PRO1_09E [읽기 전용]

<32B1B3BDC32E687770>

Social Network

chapter4

RealDSP UT 프로그램 메뉴얼

PRO1_04E [읽기 전용]

untitled

- 이 문서는 삼성전자의 기술 자산으로 승인자만이 사용할 수 있습니다 Part Picture Description 5. R emove the memory by pushing the fixed-tap out and Remove the WLAN Antenna. 6. INS

Microsoft PowerPoint - eSlim SV [080116]

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

istay

PCServerMgmt7

How we create value? 안전경영 조직 및 시스템 강화 위원장 위원 간사 CEO 전략사장, CFO, 인사지원실장, 사업부장, 사업장장 안전환경인프라팀장 삼성SDI는 안전사고의 위험성에 대비하고 안전한 근무환경을 조성하기 위해 전담부서 개 편과 업무 관리범위

MPLAB C18 C

TITLE: Education LK Development Team Status S/N Revision V0.1 Date 2011 /08/09 Doc LK임베디드 LK-STM32-M Manual ST-STM32F 모듈매뉴얼 (Model: LK-STM32-M V01) WW

歯CRM개괄_허순영.PDF

T100MD+

Æí¶÷4-¼Ö·ç¼Çc03ÖÁ¾š

별지 제10호 서식

Microsoft PowerPoint - ARM 개발 환경.ppt

solution map_....

Copyright 2012, Oracle and/or its affiliates. All rights reserved.,,,,,,,,,,,,,.,..., U.S. GOVERNMENT END USERS. Oracle programs, including any operat

untitled

1.장인석-ITIL 소개.ppt

0125_ 워크샵 발표자료_완성.key

about_by5

<BBEABEF7B5BFC7E22DA5B12E687770>

_KF_Bulletin webcopy

<4D F736F F D E20B4DCB8BB20C1A1B0CB20B9D720C1B6C4A120B8C5B4BABEF35F76312E335F2E646F63>

인터럽트 (Interrupt) 범용입출력포트에서입출력의내용을처리하기위해매번입출력을요구하는플래그를검사하는일 (Pollong) 에대하여마이크로컨트롤러에게는상당한시간을소비하게만든다. 인터럽트란 CPU가현재처리하고있는일보다급하게처리해야할사건이발생했을때, 현재수행중인일을중단하고

Microsoft PowerPoint APUE(Intro).ppt

2011´ëÇпø2µµ 24p_0628

R50_51_kor_ch1

© Rohde & Schwarz; R&S®CDS Campus Dashboard Software


Microsoft PowerPoint - SY-A3PSK-V1.pptx

SW¹é¼Ł-³¯°³Æ÷ÇÔÇ¥Áö2013

API 매뉴얼

vi 사용법

歯3이화진

Motor Control Solution

_USB JTAG Ver1.0 User's Manual.hwp

비디오 / 그래픽 아답터 네트워크 만약에 ArcGolbe를 사용하는 경우, 추가적인 디스크 공간 필요. ArcGlobe는 캐시파일을 생성하여 사용 24 비트 그래픽 가속기 Oepn GL 2.0 이상을 지원하는 비디오카드 최소 64 MB 이고 256 MB 이상을 메모리

삼성SDI_SR국문_최종

Solaris Express Developer Edition

ecorp-프로젝트제안서작성실무(양식3)

vm-웨어-앞부속

AVR USBISP+ V04 사용자메뉴얼 류대우 뉴티씨 (NEWTC) 대표이사

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Windows 8에서 BioStar 1 설치하기

03.Agile.key

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

Intro to Servlet, EJB, JSP, WS

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

PowerPoint 프레젠테이션

Microsoft Word - MV210_CPUSpec.doc

<B1E2C8B9BEC828BFCFBCBAC1F7C0FC29322E687770>

슬라이드 제목 없음

untitled

Transcription:

1 1. Introduction 1.1. About this Manual This manual is intended to provide the user with an overview of the board and benefits, complete features specifications, and set up procedures. It contains important safety information as well. 1.2. Feedback and Update to this Manual To help our customers make the most of our products, we are continually making additional and updated resources available on the JK Electronics technical support website (). These include manuals, application notes, programming examples, and updated software and hardware. Check in periodically to see what s new! When we are prioritizing work on these updated resources, feedback from customers is the number one influence, If you have questions, comments, or concerns about your product or project, please no hesitate to contact us at mailto:master@deviceshop.net. 1.3. Limited Warranty JK Electronics warrants this product to be free of defects in material and workmanship for a period of six month from date of buy. During this warranty period JK Electronics will repair or replace the defective unit in accordance with the following process: This limited warranty does not cover damages resulting from lighting or other power surges, misuse, abuse, abnormal conditions of operation, or attempts to alter or modify the function of the product. This warranty is limited to the repair or replacement of the defective unit.in no event shall JK Electronics be liable or responsible for any loss or damages, including but not limited to any lost profits, incidental or consequential damages, loss of business, or anticipatory profits arising from the use or inability to use this products. Repairs make after the expiration of the warranty period are subject to a repair charge and the cost of return shipping. Please contact JK Electronics to arrange for any repair service and to obtain repair charge information. 4. License of this manual 이매뉴얼의 JK전자에의해서번역, 수정, 작성되었고소유권또한 JK전자의것입니다. 소유권자의허가를받지않고무단으로수정, 삭제하거나배포할수없습니다.

2 2010 Copyright by JK Electronics.

3 1. 왜 Cortex 인가?... 4 2. 개발환경구축... 6 2.1 컴파일러... 6 2.2 플래시프로그램... 6 2.2.1 시리얼플래시다운로드를이용하는방법... 6 2.2.2 JTAG 다운로드장비를이용하는방법... 10 2.3 Keil MDK 에서 H-JTAG USB 를이용한디버깅... 18 2.4 IAR Workbench(EWARM) 에서 H-JTAG USB 를이용한디버깅... 21

4 STM32 개발환경및플래시다운로드 Cortex-M3 코어중에서도 ST Microelectronics 사의제품인 STM32 MCU에대해서간단하게리뷰를해보고그중에서도 STM32F103VCT6를사용하는개발보드에대해서간단한예제를작성해보면서쉽게접근할수있도록하는것이주요목표이고가능하다면 STM32 MP3개발보드에장착되어있는 VS1003B MP3 Codec을이용해서 SD메모리카드에저장된 MP3파일을플레이해보는것을목표로하도록하겠습니다. 1. 왜 Cortex 인가? 지난 6~7년간일반적인목적의마이크로컨트롤러를위한 CPU로 ARM7, ARM9을채택해왔으며오늘날수많은 ( 약 240개 ) ARM-Based의마이크로컨트롤러가존재합니다. 이러한시점에서 ST Microelectronics 는 ARM Cortex-M3 microcontroller core를기반으로한첫번째제품으로 STM32 라는 MCU 제품군을발표하였습니다. 이새로운 MCU는성능과비용뿐만이아니라저전력의 hard real-time controller 입니다. ARM Cortex family는광범위한기술적인요구사항을충족하기위하여기존의 ARM CPU들과는다른새로운 standard architecture를제공하는데, Cortex family 에는 A, R, M type의 3가지 Profile이있습니다. Cortex-A Series Applications processors for complex OS and user applications. Supports the ARM, Thumb and Thumb-2 instruction sets. Cortex-R Series Real-time systems profile. Supports the ARM, Thumb, and Thumb-2 instruction sets. Cortex-M Series Microcontroller profile optimized for cost-sensitive applications. Supports Thumb-2 instruction set only. STM32 는 Cortex-M3 profile 을기반으로특별히 high system performance 와 low power consumption 를위하여디자인되었으며이것은충분히 8, 16비트마이크로컨트롤러와도가격적인면에서경쟁력이있습니다. ARM7, ARM9은특별이 exception 과 interrupt handling 에서훌륭한성능을가지고있는데, 그것은각각의제조사에서그들만의특별한솔루션을가지고디자인을했기때문입니다. Cortex-M3 는 Interrupt system, Systick timer, Debug system and memory map 등의

5 Standard microcontroller가가지고있는기능을제공하며 4Gbyte 의 address 영역은 code, SRAM, Peripherals and system peripherals 등의영역으로나누어져있습니다. ARM7과다르게 Cortex-M3는 Harvard architecture 구조이고 multiple bus를가지고있어서동시에작업이가능하기때문에 ARM7 보다성능면에서우수합니다.. 이전의 ARM architectures 와달리 Cortex family 는 unaligned data 를 access할수있어서 internal SRAM 을효율적으로사용할수있고또한 bit banding 이라는방법으로 1Mbyte 영역안에서 Bit를 Set하고 Clear할수있어서 peripheral registers 와 SRAM memory 에위치한 Flag 등을효과적으로 set 하고 clear 할수있습니다. STM32의주요핵심부분은 Cortex-M3 processor 이고 Cortex-M3 processor 는 32bit CPU로서 nested interrupt unit과 debug system, standard memory layout을가지고있습니다. Cortex-M3 core의중요한요소의하나로 Nested Vector Interrupt Controller (NVIC) 가있습니다. NVIC는 Cortex core에기반을둔모든마이크로컨트롤러들에게표준적인 interrupt와 exception handling 구조를제공합니다. NVIC는주변기기들로부터 240개가넘는인터럽트벡터를제공하고, 그인터럽트는각각우선순위를정할수있습니다. 인터럽트가발생후인터럽트서비스루틴 ( 함수 ) 의시작코드에도달하는데까지걸리는시간은 12사이클의소요됩니다. 이러한기능은 CPU 안의 microcode 에의해서수행되어지는 automatic stack handling 부분에의해서가능합니다. 연속적인인터럽트서비스의경우 NVIC는 "tail chaining" 기법으로 6사이클안에인터럽트서비스를제공합니다. 인터럽트적층 (stacking) 단계에서 high priority interrupt는 low priority interrupt를추가적인 CPU Cycle 소모없이선점할수있습니다. 또한인터럽트구조는 Cortex-M3 Core의저전력모드에서도잘구성되어있는데이것은자동으로저전력모드로진입하고인터럽트를이용해서 low power mode( 저전력모드 ) 에서벗어나게할수있는구조를가능하게합니다. Cortex core는 24비트 auto reload 타이머를가지고있어서 RTOS kernel을위한 periodic interrupt(sys clock) 를제공합니다. ARM7과 ARM9코어는 32-bit ARM instruction과 16-bit Thumb instruction의 2개의 Instruction set를제공하는데, Cortex family는성능적으로유리한 32-bit instructions과코드집적도가높은 Thumb 16-bit instruction가혼용된 Thumb-2 instruction set를제공합니다.

6 2. 개발환경구축 2.1 컴파일러 Cortex-M3 개발을위한컴파일러로여러가지가있지만주로많이사용하는컴파일러로EWARM IAR Workbench와 KEIL MDK를주로많이사용하는것같습니다. 여기에서는 KEIL MDK 3.80 컴파일러를사용하도록하겠습니다. 2.2 플래시프로그램개발보드에컴파일한바이너리파일을다운로드하기위해서 2가지방법이있습니다. 첫째로 STM32에서기본으로제공하는시리얼플래시다운로드를이용하는방법이있고둘째로 JTAG 다운로드장비를이용하는방법이있습니다. 2가지모두에대해서살펴보도록하겠습니다. 2.2.1 시리얼플래시다운로드를이용하는방법시리얼인터페이스를이용하면별도의비용부담없이 PC의 COM포트를이용해서타겟보드에컴파일한바이너리이미지를다운로드할수있습니다. 하지만비용이들지않는반면에디버깅을할수는없습니다. 시리얼을이용해서다운로드를하려면우선 STM32F103VET6를내부시스템부팅모드로설정해야합니다. 시스템부팅모드에대해서는차후에자세히알아보도록하고우선은개발보드의점퍼를설정 (JP1의점퍼를제거합니다.) 하고바로실습을해보도록하겠습니다. (1) STM32 Flash Loader프로그램실행 참고로 STM32 Flash Loader프로그램과메뉴을은아래경로에서다운받으실수있습니다. http://www.st.com/stonline/products/support/micro/files/um0551.zip http://www.st.com/stonline/products/literature/um/13916.pdf

7 장치관리자에서시리얼포트번호를확인하고 Next 진행.

8 Next 다음진행 Next 다음진행

9 Download to device 를선택하고 hex 파일을선택합니다. Next 다음진행 타겟보드에플래시다운로드완료

10 2.2.2 JTAG 다운로드장비를이용하는방법 STM32를지원하는장비에는 H-JTAG, J-Link, ULINK, ST-Link 등여러가지가있습니다. 시리얼을이용해서바이너리이미지를다운로드할수는있지만개발중에디버깅을할수없다는단점이있습니다. 물론 UART나 LED등을이용해서기본적인내용은확인할수는있지만그리효율이좋지는못합니다. 그래서고가의비용을투자해서 JTAG장비를이용하는것입니다. 여기서는 H-JTAG 장비를이용하는방법에대해서설명하도록하겠습니다. (1) H-JTAG 소프트웨어다운로드하고설치 /H-JTAG V1.0 Release.zip 에서소프트웨어를다운로드하고설치합니다. (2) H-JTAG 드라이버설치 H-JTAG 장비를 PC와연결하면 USB 드라이버를설치해야합니다.

11

12

13 (3) H-JTAG 을개발보드의 JTAG 포트에연결하고 H-JTAG 서버실행 H-JTAG 서버가실행되면서아래와같이 Cortex-M3를 Detect 하게됩니다.

14 Cortex-M3 용 TAP Configuration 설정 STM32F 버튼클릭

15 (4) 바이너리 (Hex) 파일을개발보드에다운로드 H-Flasher 실행 H-Flasher 설정, 아래그림들에서는 STM32F103VC를선택하였지만 Flash를여기개발보드에서는 STM32F103VET6을선택합니다.

16

17 Program 버튼클릭

18 2.3 Keil MDK 에서 H-JTAG USB 를이용한디버깅 - Toolconf 를실행시켜서 Keil MDK의디버거설정에 H-JTAG RDI 인터페이스추가 - Config 버튼클릭 - MDK 디버거설정을위해서 Option for target 아이콘클릭

19 디버거를 H-JTAG CORTEX-M3 로설정한후 Setting 버튼을누르면아래와같이 H-JTAG About 창이나와야합니다. - Flash loader 설정

20 - H-Flasher 설정 ( 디버깅을위해서는 Auto Flash Download 로설정 ) - 디버깅시작 H-Flasher 에서 Auto Flash Download 로설정하면디버깅시작시자동으로 H-Flasher 가호출되어서타겟에이미지를다운로드하게됩니다. 여기서한가지주의할점은 Keil MDK환경에서는디버깅시작시에만이미지를다운로드할수있고이미지만다운로드하기위해서는 H-Flasher에서직접실행해야만합니다.

21 2.4 IAR Workbench(EWARM) 에서 H-JTAG USB 를이용한디버깅 IAR에서디버깅을하기위해서는 5.4 버전이상을사용해야합니다. - RDI 인터페이스 Configure - Target 설정

22

23 - Debugger 설정을 RDI 를선택 - RDI 디라이버를 H-JTAG.dll 로설정

24 - RDI -Configure

25 - 디버깅시작