jlink user guide v1.0

11
CORTEX-M/R J-LINK USER GUIDE Rev 1.0 Created 2012 @ www.arm.vn 1. GII THIU Cortex-M/R J-Link là công cdebug htrcho vic phát tri n, l p trình firmware cho các loi vi điu khin ARM Cortex-M/R. Adapter Cortex-M/R J-Link được thiết kế sdng giao tiếp SWD vì thế đơn gin hóa giao ti ếp gia cable và target, vi ti thi u 3 đường CLK, SWDIO và GND chúng ta có ththc hin vic download firmware và debug MCU, và hoàn toàn làm được như cách thc ca si cable JTAG thông thường. 2. SƠ ĐỒ CHÂN

Upload: minh-thanh

Post on 20-Apr-2015

91 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

1. GIỚI THI ỆU

Cortex-M/R J-Link là công cụ debug hỗ trợ cho việc phát triển, lập trình firmware cho các loại vi điều khiển ARM Cortex-M/R. Adapter Cortex-M/R J-Link được thiết kế sử dụng giao tiếp SWD vì thế đơn giản hóa giao tiếp giữa cable và target, với tối thiểu 3 đường CLK, SWDIO và GND chúng ta có thể thực hiện việc download firmware và debug MCU, và hoàn toàn làm được như cách thức của sợi cable JTAG thông thường.

2. SƠ ĐỒ CHÂN

Page 2: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

Adapter có 4 chân ra bao gồm CLK – SWD – 3V3 – GND tương ứng cho thứ tự

chân 1 – 2 – 3 – 4 của pin header (xem hình). Đường nguồn 3V3 (pin3) là option, có thể cấp nguồn cho target board với dòng điện không vượt quá định mức 500mA. Trường hợp target board đã có nguồn cung cấp sẵn 3V3, để tránh xung đột, ta không được phép kết nối với pin3.

Đối với STM32 hoặc ARM Cortex-M/R, có thể kết nối đơn giản theo sơ đồ sau:

Các chip STM32 thì chân JTAG TMS và CLK tương ứng cho 2 tín hiệu SWD và CLK. Ở trên sơ đồ ta thấy kết nối khá đơn giản, adapter liên kết với target board chỉ với 2 đường tín hiệu, và 1 đường GND. Ngay cả tính hiệu RST cũng không cần thiết ở đây. Vì thế, việc giao tiếp theo kiểu SWD giúp cho chúng ta giảm thiểu tối đa số đường liên kết so với chuẩn JTAG thông thường.

3. CÀI ĐẶT DRIVER

Về driver, các tool IDE thông dụng điều hỗ trợ cho J-LINK, ví dụ như

Keil, ta có thể dễ dàng tìm thấy nó trong đường dẫn: C:\Keil\ARM\Segger\USBDriver

Page 3: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

Lần đầu tiên cắm đầu USB của adapter vào, máy tính sẽ thực hiện enumerate và đưa ra thông báo yêu cầu đường dẫn chứa driver, chúng ta có thể browse tới đường dẫn trên để có thể tiến hành cài đặt driver cho J-LINK.

4. SỬ DỤNG J-FLASH

J-FLASH là công cụ lập trình firmware (standalone programmer) được Segger cung cấp miễn phí, chúng ta có thể lên trang web sau đây để download về:

http://www.segger.com/jflash.html Các bước setup trước khi sử dụng được mô tả như sau: Đầu tiên ta chạy chương trình J-Flash ARM V4.46.e, chọn Options � Project

Settings, hộp thoại “Project Settings” sẽ được hiện ra.

Page 4: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

Ở tab “Target Interface” ta chọn kiểu giao tiếp SWD, các xung clock có thể chọn giá trị cố định hoặc để auto.

Ở tab CPU, chọn radio button cho Device, ấn nút để browse đến chủng loại MCU mà board target đang dung.

Page 5: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

Ở tab Production ta có thể check vào các mục cần thiết để thiết lập các tác vụ trong quá trình nạp firmware.

Page 6: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

Tab Target cho chúng ta 1 số lựa chọn của các thao tác lập trình , ví dụ như kết nối với chip, check blank, earase flash, program flash…

Để lập trình flash, chúng ta có thể mở các file ảnh (bin, hex…) sau đó có thể nạp Image vào flash thông qua việc thực thi mục Program (F5) ở tab Target như trên.

Page 7: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

5. SỬ DỤNG VỚI KEIL IDE

5.1 Cấu hình adapter Keil IDE là môi trường phát triển tích hợp cao, bao gồm C/C++, ASM stype

editor, trình biên dịch RealView, Simulator, các công cụ của các hãng thirdparty ví dụ như Silabs UDA, ST-Link, J-Link, Stelaris ICDI…Sau đây chúng ta sẽ tìm hiểu và sử dụng Cortex-M/R J-LINK như thế nào.

Đầu tiên ta tạo project mới trên Keil theo các hướng dẫn của Wizard thông

thường, sau khi biên dịch thành công source code, ta có thể cấu hình (chỉ thực hiện 1 lần) giao tiếp với công cụ debug để tiến hành download firmware, sửa lỗi…

Trên thanh menu chính, ta chọn Flash � Configure Flash Tools

Ở tab Utilities check nút radio “Use Target Driver for Flash Programming”, ở phần drop box bên dưới, chọn loại adapter Cortex-M/R J-LINK/J-Trace. Dùng chuột click vào nút “Settings” bên phải, hộp thoại target driver setup được hiển thị lên:

Page 8: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

Ta có thể check vào Reset and Run nhằm thông báo với tool thực hiện reset hệ thống sau khi việc flash firmware kết thúc thành công.

Page 9: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

Ở tab Debug, chúng ta chọn Port là SWD, Max Clock từ 5MHz trở xuống . Cuối cùng ta add target CPU cho phù hợp để kết thúc việc cấu hình.

Ấn OK để kết thúc

Page 10: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

5.2 Dowload firmware Ở menu Flash (trên menu chính) bao gồm 3 mục Download, Erase và Configure

Flash Tools (đã thực hiện ở phần trên), đơn giản click chuột cho 2 mục còn lại để thực hiện download firmware hoặc erase chip.

Sau đây là kết quả ở cửa sổ output log:

Từ kết quả trên cho thấy tốc độ download cỡ 4Mb/s mặt dù chúng ta đã config max CLK = 5 MHz.

Target info: ------------ Device: STM32F107RC VTarget = 3.300V State of Pins: TCK: 0, TDI: 0, TDO: 1, TMS: 0, TRES: 1, TRST: 1 Hardware-Breakpoints: 6 Software-Breakpoints: 8192 Watchpoints: 4 JTAG speed: 4000 kHz Erase Done. Programming Done. Verify OK. * JLink Info: Found SWD-DP with ID 0x1BA01477 * JLink Info: TPIU fitted. * JLink Info: ETM fitted. * JLink Info: FPUnit: 6 code (BP) slots and 2 literal slots * JLink Info: Found Cortex-M3 r1p1, Little endian. Application running ...

Page 11: Jlink User Guide V1.0

CORTEX-M/R J-LINK USER GUIDE

Rev 1.0 Created 2012 @ www.arm.vn

5.3 Debug fimware

Để debug , trước tiên ta vào mục Options For Target, ở tab Debug, chọn nút radio theo hình sau:

Sau khi setup xong, ta có thể tiến hành debug bình thường: Menu � Debug �

Start/Stop Debug Session (Ctrl+F5).

Tài liệu và các tool liên quan có thể download theo link sau: http://stm32jlink.googlecode.com/svn/trunk/