1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lập trình hệ nhúng: Chương 6 - Phạm Ngọc Hưng

27 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Bài giảng Lập trình hệ nhúng - Chương 6: Lập trình nền tảng QT trình bày các kiến thức giúp sinh viên nắm được các vấn đề cơ bản, đặc trưng của nền tảng Qt; cài đặt Qt Creator (Qt SDK) trên máy phát triển (Ubuntu); làm quen với lập trình ứng dụng giao diện đồ họa sử dụng nền tảng Qt; cài đặt Qt Everywhere để phát triển ứng dụng cho nền tảng Arm Embedded Linux. Mời các bạn cùng tham khảo nội dung chi tiết.

Bài số Lập trình tảng QT Lập trình nhúng ARM-Linux 162 Mục tiêu học số  Sau kết thúc b{i học n{y, sinh viên • Nắm c|c vấn đề bản, đặc trưng tảng Qt • C{i đặt Qt Creator (Qt SDK) m|y ph|t triển (Ubuntu) • L{m quen với lập trình ứng dụng giao diện đồ họa sử dụng tảng Qt • C{i đặt Qt Everywhere để ph|t triển ứng dụng cho tảng Arm Embedded Linux Lập trình nhúng ARM-Linux 163 Nội dung học 6.1 Giới thiệu QT 6.2 C{i đặt môi trường ph|t triển Qt 6.3 L{m quen với lập trình QT 6.4 C{i đặt Qt Everywhere (Qt Embedded) Lập trình nhúng ARM-Linux 164 6.1 Giới thiệu Qt  Qt Development Frameworks s|ng lập năm 1994 TrollTech  2008: TrollTech s|p nhập v{o Nokia  Qt l{ Framework ph|t triển ứng dụng đa tảng (desktop, mobile, embedded)  Hỗ trợ c|c tảng: Windows, Linux, Embedded Linux, Win CE, Symbian, Maemo… Lập trình nhúng ARM-Linux 165 Giới thiệu QT  Qt cho phép viết ứng dụng lần v{ biên dịch chéo nhiều tảng hệ điều h{nh khác mà viết lại m~ Tuy nhiên, m~ nguồn cần biên dịch tảng m{ muốn ứng dụng thực thi  Lập trình Qt theo chuẩn C++ Lập trình nhúng ARM-Linux 166 Giới thiệu QT  Qt Framework bao gồm: • a cross-platform class library (Thư viện c|c lớp hướng đối tượng) • integrated development tools (C|c cơng cụ ph|t triển tích hợp) • a cross-platform IDE (Môi trường ph|t triển ứng dụng)  Tham khảo: qt.nokia.com; qtcentre.org Lập trình nhúng ARM-Linux 167 QT sử dụng rộng rãi Lập trình nhúng ARM-Linux 168 Kiến trúc Qt Lập trình nhúng ARM-Linux 169 6.2 Cài đặt Qt SDK  C{i đặt Qt SDK m|y ph|t triển (Linux, Windows, MacOS)  File c{i đặt qt-sdk-linux-x86-opensource-2010.05.1.bin (http://qt.nokia.com/downloads)  Thực thi file c{i đặt: $ /qt-sdk-linux-x86-opensource-2010.05.1.bin  Đợi qu| trình c{i đặt diễn th{nh cơng, mặc định thư mục c{i đặt chứa $HOME/qtsdk-2010.01/qt/bin Lập trình nhúng ARM-Linux 170 Cài đặt Qt SDK  Sau c{i đặt xong Qt SDK, công cụ Qt Creator cho phép ph|t triển ứng dụng với lựa chọn mặc định biên dịch m|y tính Linux Để biên dịch chéo ứng dụng thực thi KIT FriendlyArm (Embedded Linux) cần c{i đặt Qt Everywhere Lập trình nhúng ARM-Linux 171 Các thành phần Qt Creator Lập trình nhúng ARM-Linux 174 Các điều khiển (widgets)         QLabel QPushButton QLineEdit QTextEdit QSpinBox QComboBox Qslider V.v… Lập trình nhúng ARM-Linux 175 Chương trình HelloQt  Tạo project HelloQt  Trong file main.c bổ sung đoạn m~:  Biên dịch, chạy chương trình: #include #include int main(int argc, char *argv[]) { QApplication app(argc, argv); QLabel *label = new QLabel("Hello Qt!"); label->show(); return app.exec(); } Lập trình nhúng ARM-Linux 176 Chương trình HelloQt  Giải thích ?  Sửa đoạn m~ với HTML style #include #include int main(int argc, char *argv[]) { QApplication app(argc, argv); //QLabel *label = new QLabel("Hello Qt!"); QLabel *label = new QLabel("Hello " "Qt!"); label->show(); return app.exec(); } Lập trình nhúng ARM-Linux 177 Cơ chế signals - slot  Cơ chế event – handler  Xử lý c|c kiện (sự kiện tương t|c người dùng, kiện hệ thống)  Cho phép tạo c|c kết nối (connections) kiện (signals) với h{m xử lý (slot)  Có c|ch tạo: • Tạo tự động (wizard) • Tạo tay (manual, hand-code) Lập trình nhúng ARM-Linux 178 Minh họa chế signals/slot  Tạo code (dùng phương thức Qobject::connect) Lập trình nhúng ARM-Linux 179 Minh họa chế Signals/Slot  Tạo code connect(sender, SIGNAL(signal), receiver, SLOT(slot));  Trong đó: sender, receiver l{ trỏ Qobjects, signal v{ slot l{ c|c tên h{m khơng có tham số • Các macro SIGNAL() SLOT() biến đổi tham số thành string VD: đồng điều khiển slider v{ spinBox Lập trình nhúng ARM-Linux 180 Minh họa chế Signals/Slot  Tạo tự động (wizard): chuột phải v{o đối tượng muốn xử lý kiện, chọn Go to slot, tìm slot l{ h{m xử lý kiện tương ứng muốn dùng  Ví dụ xử lý kiện nút bấm (QPushButton) Lập trình nhúng ARM-Linux 181 Quản lý layout ứng dụng Qt  Kỹ thuật lay out: Cho phép xếp c|c điều khiển (widgets) form Kích thước v{ vị trí thay đổi linh hoạt form thay đổi kích thước  Có c|c kiểu lay out: • • • • Horizontal lay out Vertical lay out Grid lay out Form lay out Lập trình nhúng ARM-Linux 182 Chương trình TextFinder  X}y dựng ứng dụng TextFinder Lập trình nhúng ARM-Linux 183 Qt Documentations  Documentation in Qt Assistant (or QtCreator)  Qt’s examples  Qt developer network: • http://developer.qt.nokia.com/  Qt Center Forum: • http://www.qtcentre.org Lập trình nhúng ARM-Linux 184 6.4 Cài đặt Qt Everywhere  Bước 1: Cài đặt QT Embedded (QT Everywhere) (Xem hướng dẫn chi tiết kèm theo)  Bước 2: Copy file thư viện cần thiết xuống KIT • thư viện quan trọng (VD: copy xuống thư mục /opt/qte/lib)  libQtCore.so.4  libQtGui.so.4  libQtNetwork.so.4 • Copy fonts vào thư mục /opt/qte/lib/fonts  Bước 3: Chỉnh file cấu hình /etc/init.d/rcS, tắt Qtopia để tránh tranh chấp Lập trình nhúng ARM-Linux 185 Cấu hình trình dịch Qmake cho Kit  Bước 4: Tạo cấu hình biên dịch cho Mini2440, trỏ tới Qmake đ~ biên dịch Lập trình nhúng ARM-Linux 186 Cấu hình trình dịch Qmake cho Kit  Bước 5: Dịch chương trình QT cho KIT • Chọn biên dịch Qmake cho QT Embedded Lập trình nhúng ARM-Linux 187 Thảo luận Lập trình nhúng ARM-Linux 188 ... cross-platform IDE (Mơi trường ph|t triển ứng dụng)  Tham khảo: qt.nokia.com; qtcentre.org Lập trình nhúng ARM-Linux 167 QT sử dụng rộng rãi Lập trình nhúng ARM-Linux 168 Kiến trúc Qt Lập trình. .. file c{i đặt: $ /qt-sdk-linux-x 8 6- opensource-2010.05.1.bin  Đợi qu| trình c{i đặt diễn th{nh công, mặc định thư mục c{i đặt chứa $HOME/qtsdk-2010.01/qt/bin Lập trình nhúng ARM-Linux 170 Cài đặt... Lập trình nhúng ARM-Linux 171 6. 3 Làm quen với lập trình QT     Sử dụng mơi trường ph|t triển Qt Creator (IDE) Chương trình HelloQt Cơ chế Signals/Slot Quản lý layout Lập trình nhúng ARM-Linux

Ngày đăng: 08/05/2021, 19:18

Xem thêm:

TỪ KHÓA LIÊN QUAN