Cấu trúc và chức năng của các tầng

Một phần của tài liệu (LUẬN văn THẠC sĩ) ứng dụng công nghệ hệ thống dữ liệu vô tuyến RDS trong truyền dẫn dữ liệu số qua hệ thống phát thanh FM tương tự (Trang 25 - 29)

Từ sơ đồ khối ta có thể thấy rõ vị trí và mối liên kết của các tầng. Cũng như kiến trúc cơ bản của hệ điều hành android sơ đồ khối của hệ thống RDS sẽ có cấu trúc và các thành phần như trong Hình 2.1.

Lớp ứng dụng (Application)

Ứng dụng FM RDS App được xây dựng trên nền tảng hệ điều hành Android 5.0.1. Ứng dụng được phát triển bằng ngôn ngữ lập trình Java. Nhiệm vụ trên tầng Application là xử lý về giao diện và tương tác với người dùng.

 Thu sóng FM dải tần 86 – 110 MHz  Lấy và hiển thị thông tin RDS : PS , RT  Lưu danh sách các kênh yêu thích

 Tùy chọn được các kênh theo mong muốn và dò đến kênh có chất lượng tốt tiếp theo.

Lớp nền ứng dụng (Application FW)

Tầng nền ứng dụng tạo ra các phương thức giao tiếp với tầng Middleware. Thông qua các đối tượng được tạo ra từ tầng này, tầng Application có thể dễ dàng kết nối với các tầng ở dưới.

Hình 2.2 Giao tiếp giữa tầng App với tầng dưới.

Từ Hình 2.2 ta có thế thấy các chỉ thị lệnh từ trên tầng Application (Java) sẽ được truyền xuống native code thông qua JNI. Các dữ liệu từ tầng dưới được gửi lên tầng trên thông qua phương thức data callback. Tầng này có nhiệm vụ làm cầu nỗi giữa tầng Application với các service của FM. JNI sẽ được trình bày chi tiết ở

Lớp trung gian của FM ( FM Middleware )

Hình 2.3. Các khối của tầng MiddleWare

Đối tượng IFMRDS được tạo ra để nhận các command lệnh từ trên tầng App rồi send xuống tấng dưới (Tầng HAL : Hardware Abstract layer ) như command yêu cầu turn On/Off app, yêu cầu tìm kiếm kênh, yêu cầu thông tin hiển thị của RDS. Một đối tượng khác được tạo ra để luôn lắng nghe và nhận dữ liệu callback từ tầng dưới là IMRDSEvenlistenner. Các mã lệnh và dữ liệu truyền nhận được thực hiện qua cơ chế của Binder IPC.

Tầng HAL và Kernel

Hình 2.4 Kiến trúc tổng quát của tầng HAL.

Các lệnh từ trên tầng ứng dụng (Application ) sẽ được truyền truyền xuống tầng HAL thông qua các interface (giao diện điều khiển) của Java APIs. Các interface này cho phép tầng App có thể giao tiếp được với V4L2 thông qua tầng JNI.

FM driver được phát triển bằng cách sử dụng kiến trúc FM V4L2. Kiến trúc này hỗ trợ các phương thức: tune, seek, mute …

Giao diện V4L2 được cài đặt cho FM driver dựa trên kiến trúc của Qualcom chip set. Vì vậy nó được mở rộng để hỗ trợ các tính năng mà phiên bản hiện tại của V4L2 không hỗ trợ như: initialization and power up.

Các FM Host đã cung cấp FM java api giúp ta có thể dễ dàng điều khiển FM driver.

Những interface này cho phép tầng Application giao tiếp với FM driver thông qua lớp JNI. Lớp JIN sẽ chuyển đổi java apis để gọi thư viện native C. Thư viện C

này sẽ giao tiếp lần lượt với các interface của FM driver. (Read, write via ioctl function).

Một phần của tài liệu (LUẬN văn THẠC sĩ) ứng dụng công nghệ hệ thống dữ liệu vô tuyến RDS trong truyền dẫn dữ liệu số qua hệ thống phát thanh FM tương tự (Trang 25 - 29)