View Single Post
Old 19-01-2008, 03:11 PM   #2
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Những khái niệm cơ bản

Tất nhiên để nghiên cứu PIC32, chúng ta cần có tối thiểu hai tài liệu sau:
[1] PIC32MX Family Datasheet: http://ww1.microchip.com/downloads/e..._v1_61143A.pdf
[2] PIC32 Family Reference Manual- All Chapters: http://ww1.microchip.com/downloads/e...l_Chapters.zip

Mở tài liệu [1] ra, ngay những trang đầu tiên chúng ta đã có thể thấy hàng loạt những từ ngữ mới chưa được nhắc đến ở dsPIC hay PIC. Có thể một số bạn mới làm quen cũng không thấy thân thuộc lắm với mấy từ ngữ của dsPIC hay PIC, các bạn muốn lao vào học PIC32 luôn!? Ok, cũng không sao. Nói chung là trong bài viết này F sẽ liệt kê ra đây các từ ngữ mà F cho rằng các bạn có thể sẽ cần phải hỏi, sẽ cần phải giải đáp, sẽ cần...

Sau này các từ ngữ này sẽ được chuyển lên để làm kho định nghĩa trên www.tudiencongnghe.com, nhưng trong thời gian chuẩn bị phát triển từ điển công nghệ, F cũng sẽ triển khai các định nghĩa và giới thiệu ở đây, đồng thời cũng sẽ nhờ các thành viên bổ sung, góp ý để hoàn thiện bài viết. Nó là những cơ sở quan trọng để chúng ta có một cái nhìn chung và tổng quan về PIC32 nói riêng và vi điều khiển, vi xử lý nói chung.

Chỉ cần mở trang đầu tiên của datasheet, các bạn sẽ gặp ngay một số khái niệm sau:

MIPS32 M4K 32-bit Core: Xem file đính kèm

5-Stage Pipeline: 5 tầng pipeline

MIPS16e:
User and Kernel Mode:
Prefetch Cache Module:

Boot Flash Memory:
Multi Power Management:
Fail-Safe Clock:
JTAG:
Unintrusive Hardware-Based Instruction Base:
IEEE Std 1149.2 Compatible (JTAG) Boundary Scan:

DMA Controller: Direct Memory Access Controller
Đây là chức năng truyền nhận giữa một nguồn và một đích nào đó mà không cần đến xử lý của CPU. Có nghĩa là CPU không làm gì ở đây cả.
IrDA encoder and decoder:


Bây giờ, chúng ta lại đi qua một loạt các ký hiệu chân. Các bạn chú ý xem trang 11 của [1], đó là bảng giải thích chi tiết các ký hiệu trên các chân. Vậy chúng ta không còn ngại gì nữa nếu không biết chân nào dùng làm gì thì chúng ta chỉ cần tra cứu trang 11 này là xong.

Cách học mà F đã đề nghị lâu nay, đó là học làm sao để sử dụng tốt các module và các tính năng của chip, còn việc tự nghiên cứu, vận dụng, sáng tạo, có lẽ chúng ta để dành cho các nhà thiết kế chuyên nghiệp (tất nhiên cũng chính là các bạn sinh viên bây giờ, sau khi ra trường). Vả lại, bài viết này cũng không nhằm giúp ích cho các nhà thiết kế chuyên nghiệp, vẫn chỉ dành cho những người mới làm quen với PIC32 mà thôi.

Cách đọc DATASHEET và MANUAL PIC32:

Thực ra điều này không có gì mà phải viết vào, nhưng F vẫn viết vào đây bởi vì có một số bạn "hơi lười" và ngại đọc tiếng Anh.

Cuốn DS và Manual được tổ chức thành từng chương, mỗi chương là một khối chức năng của PIC32. Các chương đầu giới thiệu chủ yếu về kiến trúc, dao động, nguồn,... đây là những yếu tố để một con PIC32 có thể chạy được. Các phần sau giới thiệu các tính năng và chỉ rõ chi tiết những tính năng nào ràng buộc tính năng nào.

Tuy vậy, một người mới học khi cầm vào cuốn DS hay Manual sẽ bị dội, bởi vì khi mở nó ra, những dòng đầu tiên mô tả rất ngắn gọn, sau đó thì hàng loạt thanh ghi, hàng loạt bảng biểu...

Thực chất cuốn DS và Manual dùng cho những người đã làm việc quen thuộc với PIC, họ cần tra cứu nhanh và lướt qua là đã nắm được nội dung. Do vậy, mọi việc họ cần chỉ là vị trí những thanh ghi, và chi tiết các thanh ghi đó để họ tương tác là xong.

Thế nhưng người mới học, các bạn hãy bỏ qua những trang đó bởi vì nó thực sự là một thứ rối bời không cần thiết. Các bạn hãy đi ngay vào phần phía sau (khoảng nửa cuối của chương), đó là phần mô tả tính năng, hoạt động. Nó sẽ hướng dẫn ta từng bước về cấu hình để một chức năng hoạt động như thế nào.

Mọi bước đều rất cụ thể và rõ ràng, thậm chí có một số source code mẫu để chúng ta hình dung.

Sau khi đọc các mục phía sau này, hiểu tính năng của nó, hiểu cách nó tổ chức thanh ghi, thanh ghi nào dùng vào việc gì, bit nào dùng vào việc gì (chỉ cần nhớ tên, tên của nó rất dễ gợi nhớ trong tiếng Anh), sau đó chúng ta mới tra ngược lên xem chi tiết việc cấu hình từng bit đó ra sao.

Như vậy, đọc DS và Manual của PIC32, với những người mới học, các bạn hãy đọc từ giữa chương tới hết, rồi hãy tra cứu ngược để hiểu rõ hơn.


Những câu hỏi?

Phân biệt SYSCLK và PBCLK?

PIC32 sử dụng core của MIPS, vậy MIPS là gì? Trên đời này còn có bao nhiêu core nữa? Tìm hiểu chúng thế nào?

Tại sao PIC32MX lại có tới 2 cặp chân PGC1/PGD1 và PGC2/PGD2? Nó là chức năng ICSP mà tại sao lại phải dùng tới hai cái?

Một số người làm việc với các vi xử lý khác như TI và ARM đã quen với JTAG, vậy JTAG là gì? Enhanced JTAG (EJTAG) là gì? JTAG Boundary Scan là gì? Dùng ICSP thay cho JTAG và ngược lại được không? So sánh giữa JTAG và ICSP?




Chúc vui

thay đổi nội dung bởi: falleaf, 23-01-2008 lúc 05:36 PM.
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn