a) Giới thiệu chung
MRF24J40 là một bộ truyền nhận dữ liệu không dây theo chuẩn IEEE802.15.4 hoạt động ở dải tần 2,4GHz [1]. Nó tích hợp hai chức năng là PHY và MAC trên cùng một chip đơn. Chip MRF24J40 được phát triển bởi công ty Microchip, vì vậy nó dễ dàng giao tiếp với nhiều dòng vi điều khiển PIC khác nhau thông qua giao diện 4 dây SPI, ngắt, wake và reset. Module MRF24J40 cho phép tạo ra các thiết bị WPAN hoạt động với tốc độ truyền dữ liệu không cao (250 – 625kbps) nhưng với chi phí thấp và tiêu thụ ít năng lượng. Sơ đồ khối tổng quát của module này được chỉ ra như trong Hình 3.1.
Hình 3.1. Sơ đồ khối tổng quát của MRF24J40 trong một node mạng.
Về mặt phần cứng, MRF24J40 hỗ trợ các chức năng: - Tự động dò năng lượng.
- Chế độ Carrier Sense. - Hỗ trợ 3 chế độ CCA.
- Hỗ trợ thuật toán CSMA-CA. - Tự động truyền lại gói tin. - Tự động bắt tay.
- Hỗ trợ các chế độ truyền độc lập, beacon và GTS FIFO buffer. - Có cơ chế bảo mật hỗ trợ mã hóa và giải mã ở lớp MAC và lớp trên. Sơ đồ chân của MRF24J40 được mô tả như ở trong Hình 3.2.
Hình 3.2. Sơ đồ chân của MRF24J40.
b) Mô tả phần cứng
Về mặt kiến trúc phần cứng, module MRF24J40 bao gồm các khối cơ bản như được chỉ ra ở trong Hình 3.3. Tần số hoạt động của module này là 2,4GHz và được tổng hợp từ xung nhịp 20MHz của một thạch anh ngoài.
Khối nhận bao gồm một bộ khuếch đại nhiễu thấp (Low Noise Amplifier – LNA), một bộ trộn tín hiệu chuyển đổi, các bộ lọc kênh đa pha, và một số bộ khuếch đại giới hạn băng gốc. Bộ phát là một kiến trúc chuyển đổi trực tiếp tín hiệu ra với công suất ra cực đại là 0dB và dải công suất điều khiển là 36dB. Một bộ chuyển mạch truyền/nhận sẽ cho phép kết hợp các mạch truyền và mạch nhận vào hai chân khác nhau là RFP và RFN. Các chân này sẽ nối với anten thông qua một mạch phối hợp trở kháng. Các bộ khuếch đại công suất hoặc các bộ khuếch đại nhiễu thấp có thể được nối với module này và được điều khiển thông qua các chân vào ra đa mục đích (GPIO).
Hình 3.3. Sơ đồ khối mô tả kiến trúc của MRF24J40.
Chức năng của một số chân quan trọng của MRF24J40 được mô tả như ở phần sau: Chân khởi động lại (RESET\)
MRF24J40 có thể được reset ngoài bằng cách gửi một tín hiệu ở mức thấp đến chân 13 (RESET\). Chip MRF24J40 sẽ được tái khởi động sau khoảng thời gian 250µs kể từ khi chân RESET\ ở mức thấp.
Chân ngắt ngoài (INT)
Vi điều khiển có thể gửi một tín hiệu ngắt ngoài đến MRF24J40 thông qua chân 13 của chip này (chân INT). Mức phân cực ngắt của tín hiệu gửi đến có thể được lập trình thông qua bit INTEDGE ở thanh ghi SLPCON0 (0x211<1>). Trước khi tín hiệu ngắt được gửi đến thì các cờ ngắt trong MRF24J40 phải được kích hoạt và xóa.
Chân đánh thức (WAKE)
Vi điều khiển có thể gửi một tín hiệu đánh thức (WAKE) đến MRF24J40 để chuyển chip này từ trạng thái ngủ sang trạng thái sẵn sàng hoạt động. Tín hiệu đánh thức từ vi điều khiển sẽ được đưa vào chip này thông qua chân WAKE (chân số 15). Chức năng này được sử dụng khi kích hoạt chế độ SLEEP của MRF24J40.
Các chân vào ra đa mục đích (GPIO)
Các chân GPIO có thể được cấu hình để phục vụ việc vào ra dữ liệu nhằm thực hiện các quá trình điều khiển hoặc quan sát trạng thái hệ thống. Việc lựa chọn chức năng vào/ra của các chân GPIO được thực hiện thông qua việc cấu hình thanh ghi TRISGPIO ở địa chỉ 0x34. Các dữ liệu vào ra trên những chân này được đọc hoặc ghi thông qua thanh ghi GPIO ở địa chỉ 0x33.
MRF24J40 giao tiếp với vi điều khiển chính thông qua giao diện nối tiếp 4-dây SPI và hoạt động như một thiết bị tớ. MRF24J40 hỗ trợ giao tiếp SPI ở chế độ 0-0 nên nó yêu cầu tín hiệu SCK ở trạng thái thấp khi không hoạt động. Tín hiệu CS\ cũng phải được giữ ở mức thấp khi thực hiện quá trình truyền thông với vi điều khiển chủ. Giản đồ thời gian của hoạt động ghi được chỉ ra như ở trên Hình 3.4. Dữ liệu được nhận thông qua chân SDI khi có khởi phát một cạnh lên của SCK. Hình 3.5 mô tả hoạt động đọc dữ liệu, trong đó dữ liệu được gửi bởi MRF24J40 thông qua chân SDO khi có khởi phát một cạnh xuống của SCK.
Hình 3.4. Hoạt động ghi dữ liệu qua SPI.
Hình 3.5. Hoạt động đọc dữ liệu qua SPI.