Lập trình ứng dụng trên LPC1768 (lõi ARM Cortex M3)
LPC1768 chỉ là một ví dụ đưa ra để đưa ra cách lập trình với ARM Cotex M3. Việc sử dụng dòng chíp cụ thể nào là tùy điều kiện cá nhân có thể của ST, có thể của NXP, đến một lúc nào đó ta sẽ nhận ra sự tương đồng giữa các dòng chip này. Đầu tiên là về xung clock.
Xung clock có vai trò với vi điều khiển cũng như trái tim của con người vậy. Tất cả hoạt động của chip đều được giữ nhịp thông qua xung clock.
Nhìn vào sơ đồ ta có thể thấy nguồn xung clock đầu vào có thể lấy thông qua 3 đường
- osc_clk : thạch anh ngoài
- rtc_clk : xung đồng hồ thời gian thực
- irc_osc : bộ dao động nội
Để đạt được nguồn clock tần số cao và ổn định ta thường chọn nguồn xung từ thạch anh ngoài (osc_clk)
Quan sát trong sơ đồ ta có thể thấy các khối nhân tần số (PLL) và các khối chia tần số. Việc thiết lập thông số phù hợp sẽ tạo được tần số mong muốn. Với LPC1768 tần số max đầu ra cclk là 100MHz tương ứng với tốc độ 125 DMIPS.
Bộ PLL1 được sử dụng riêng để tạo tần số phục vụ giao tiếp USB.
Nhìn vào sơ đồ ta có thể định hướng việc tao ra xung clock chung của hệ thống. Ví dụ như ta muốn tạo ra tần số cclk=100MHz với tần số đầu vào là thạch anh 12Mhz.
Bộ PLL0 và "cpu clock divider" được sử dụng.
Việc sử dụng bộ nhân tần số với những ai đã từng làm việc với PIC thì không có gì xa lạ. Khi nhân tần số sẽ có những giới hạn về tần số max mà ta phải tuân thủ. Với ARM cũng vậy.
F_cco0 = (2 * M * F_in) / N
nhận thấy ((12*100)/6)/2=100
M=100, N=6 là kết quả cần tìm
Sau khi tao ra pllclk, xung clock tiếp tục được chia nhỏ và đưa tới các ngoại vi.
BÀI VIẾT LIÊN QUAN:
Bài báo đăng Tạp chí ngành cơ khí Việt Nam
The paper presents the researched results on design and manufacture of ...
Sửa lỗi USB hoặc thẻ nhớ SD không thể format ở Windows 10
Nếu bạn đang gặp phải vấn đề với việc format USB hay thẻ nhớ SD thì bài viết ...