Khóa học “Basic Embedded Linux ” là khóa học embedded linux đầu tiên và sẽ được ưu tiên nhiều nhất về chất lượng nhằm đem đến 1 cái nhìn tổng quan và kiến thức cơ bản về kiến trúc ARM Linux, cách biên dịch , cài đặt OS cho hardware , cũng như cách lập trình cơ bản cho device driver, và ứng dụng graphics trên nền tảng linux.
Bên dưới là nội dung tham khảo của khóa 2016. Trong khóa 2017 này sẽ có 1 số thay đổi để cập nhật theo xu hướng về nội dung , cũng như về dòng chip sẽ được tiếp cận thực hành, cụ thể sẽ không dùng chip iMX6D nữa mà sẽ dùng chip iMX6SX. Điểm đặc biệt ở dòng này là tích hợp cả MCU và MPU bên trong 1 chip, gồm cả core A9 và core M4. Điều đó có nghĩa chip này sẽ hỗ trợ chạy cùng lúc song song linux và rtos sử dụng chung share-memory và peripheral. Các bạn sẽ được tiếp cận và so sánh sâu hơn giữa MPU và MCU, cũng như giữa lập trình firmware và linux. Khi nào cần MCU, khi nào cần MPU hoặc khi nào cần cả hai?
Thông tin khóa học :
I. Lịch học : Sẽ dựa theo số đông lựa chọn, các bạn đăng ký sẽ lựa chọn xem mình có thể tham gia được những option nào , ví dụ như : tối 2-4-6 (6h30-8h30) , tối 3-5-7 (6h30-8h30) hoặc sáng thứ 7 (6h30-8h30) + sáng chủ nhật(8h30-11h30).
II. Tổng thời gian học : mặc định tối thiểu sẽ là 2 tháng nhưng nếu chưa nắm được sẽ được theo học lại miễn phí đến khi nào nắm được thì thôi.
III. Project cuối khóa : Mỗi bạn hoặc mỗi nhóm sẽ phải làm thành công 1 project để áp dụng những gì đã học được. Ý tưởng project này sẽ là tự do, các bạn có quyền tự suy nghĩ hoặc có thể lấy từ đồ án tốt nghiệp các bạn đang làm. Đương nhiên project này sẽ được hướng dẫn nhiệt tình đến khi nào thành công.
IV. Thiết bị thực hành : Nếu không có gì thay đổi thì các bạn sẽ thực hành dựa trên kit marsboard freescale imx6dual được cung cấp miễn phí trong suốt quá trình học ( http://www.embest-tech.com/shop/star/marsboard.html) . Mục đích là vì mình sẽ hạn chế sử dụng những hardware không có tính phổ biến trong các công ty bên ngoài
V. Nội dung chương trình :
1. Giới thiệu về embedded linux platform :
- Giới thiệu về linux.
- So sánh thế mạnh và các ứng dụng thực tiễn.
- Các lệnh cơ bản hay sử dụng, user, group,….
2.Tìm hiểu tổng quan về kit marsboard imx6, các cách nạp và boot linux.
3. Kiến trúc nền tảng embedded linux :
- u-boot, device tree, kernel, rootfs.
- Giới thiệu các tập lệnh và hệ thống file, cấu trúc thư mục trên linux
- Cách viết và biên dịch chương trình trên linux với trình biên dịch
- Cách tạo Makefile trên linux
- ……………
4. Yocto Project for embedded linux :
- Giới thiệu về công cụ yocto project và cách ứng dụng để build linux :
- Setup yocto enviroment trên ubuntu.
- Cách customize và build u-boot, device tree, kernel, rootfs
- Cách nạp và boot linux yocto cho marsboard.
5. Basic device driver :
- Cách viết 1 device driver đơn giản.
- Cách build device driver thông qua makefile.
- Cách load driver vào linux kernel.
- Cách giao tiếp với driver từ userspace.
- Thực thành làm việc với các driver như : gpio, uart, spi, i2c,….
6. Qt/QML Programming basic :
- Hướng dẫn cách build và khởi tạo môi trường Qt từ qt-everywhere-opensource.
- Cách build và load chương trình Qt sau đó chạy trên board.
- Hương dẫn lập trình Qt/C++ cơ bản.
- Thực hành viết chương trình ứng dụng Qt để giao tiếp với device driver.
7. Đồ án cuối khóa :
- Chọn đề tài và hướng dẫn các bước thực hiện để hoàn thành.
- Bảo vệ project cuối khóa sau khi hoàn thành.
Trên đây chỉ là những nội dung mang tính tham khảo, trong quá trình học có thể sẽ bổ sung thêm những nội dung khác nếu cần thiết. Các bạn có thể góp ý để nâng cao thêm chất lượng.
Cuối cùng sẽ là học phí và địa điểm học :
- Học phí : 2,8 triệu
- Địa điểm : Q.Tân Bình, TPHCM (có thể chuyển qua Gò Vấp hoặc Bình Thạnh nếu các bạn ở xa không đi được, sẽ thông báo cụ thể qua mail sau)
- Thời gian khai giảng dự kiến : 01/10/2017 (hoặc sớm hơn khi đủ số lượng)
- Để đăng ký tham gia, mời bạn click vào link sau : Phiếu Đăng Ký Tham Gia
- Website : http://hethongnhung.com ; http://laptrinhnhung.com
Một số hình ảnh của các khóa học trước :