ARM là gì

Tự học lập trình ARM - Phần 1: Bắt đầu với ARM

Series bài viết ghi lại quá trình bắt đầu tìm hiểu, lập trình vi điều khiển lõi ARM.

Hi vọng sẽ giúp bạn có một cách tiếp cận dễ hơn đến với thế giới ARM. Let’s start!

Cấu trúc ARM (viết tắt từ tên gốc là Advanced RISC Machine) là một loại cấu trúc vi xử lý 32 bit và 64 bit kiểu RISC được sử dụng rộng rãi trong các thiết kế nhúng. Chúng có đặc điểm tiết kiệm năng lượng, vì vậy các bộ CPU ARM chiếm ưu thế trong các sản phẩm điện tử di động.

Lựa chọn phần cứng

Để bắt đầu học về ARM, chúng ta nên có 1 bộ KIT ARM để thực hành ngay những gì học được (dễ nhớ và trực quan). Hiện nay trên thị trường có rất nhiều các loại KIT khác nhau: STM32 (ST), Nuvoton (Nuvoton), Tiva C LaunchPad (TI)… Nếu bạn khó khăn về tài chính thì có thể dùng Simulator (Proteus chẳng hạn) cũng là lựa chọn không tệ.

Phần cứng mà tôi bắt đầu là KIT LaunchPad Tiva C của TI (Giá thành rẻ, chất lượng khá ổn và dễ dàng tìm mua ở VN).

Bộ KIT Tiva C

Trong box mua về đã có dây cable micro USB, board Tiva C và một tờ giới thiệu về phần cứng mà chúng ta có.

Bộ KIT này sử dụng chip ARM TM4C123GH6PM với lõi ARM Cortex M4 mạnh mẽ.

Trên KIT đã bao gồm mạch nạp và MCU và một số ngoại vi đơn giản như nút bấm, LED, giao tiếp USB… công việc còn lại của chúng ta đó là sử dụng ngay mà không cần phải mua thêm bất cứ phụ kiện nào đi kèm.

TM4C123GXL Overview

Sơ đồ nguyên lý bộ KIT Tiva C TM4C123GXL

TivaC LaunchPad SCH 1

TivaC LaunchPad SCH 2

TivaC LaunchPad SCH 3

Chip TM4C123GH6PM

Sơ đồ khối IC TM4C123GH6PM

TM4C123G BlockDiagram

Dạng đóng gói IC

TM4C123G PinDiagram

2. Lựa chọn phần mềm

Lựa chọn IDE

TI (Texas Instrument) đã giới thiệu đến người dùng 2 công cụ rất mạnh mẽ:

Energia

CCS - Code Composer Studio

Ngoài ra còn có phần mềm của hãng thứ 3 khác như IAR, Keil, Mentor… cũng hỗ trợ lập trình ARM rất tốt.

Tôi sẽ lựa chọn cả 2 phần mềm Energia và CCS.

Những phần mềm, tài liệu liên quan tới bộ KIT Tiva C

Bạn cần tải về:

TivaWare

Driver của bộ KIT Tiva C

Tài liệu hướng dẫn

Tài liệu, phần mềm cần thiết các bạn có thể tìm thấy tại đây:

TM4C123G Launchpad Workshop

Tiva™ C Series LaunchPad Evaluation Kit

TM4C123GH6PM Datasheet - Applications

Phần mềm Pin Mux Utility

Tiếp theo: Tự học lập trình ARM - Phần 2: Cài đặt IDE và thiết lập cấu hình