Kindle Fire Coupon Kindle Fire Coupon 2012 Kindle DX Coupon 2012 Kindle Fire 2 Coupon Amazon Coupon Codes 2012 Kindle DX Coupon PlayStation Vita Coupon kindle touch coupon amazon coupon code kindle touch discount coupon kindle touch coupon 2012 logitech g27 coupon 2012 amazon discount codes
Facebook RSS Reset

Basic Embedded Linux Training_khóa 2019

Để đăng ký tham gia, mời bạn click vào link sau: https://docs.google.com/forms/d/1W1DjylF4qeh1rak-tzbdX8ey1yZdy3t7Bba8RWaEYr0

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.

embedded-system-training

Trong khóa 2019 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?

Kết quả hình ảnh cho udoo neo

Thông tin khóa học :

I. Lch hc :  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 (6h30-8h30) , tối 3-5 (6h30-8h30).

II. Tng thi gian hc : 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 cui 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 thc 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 UDOO NEO FULL freescale iMX6SX được cung cấp miễn phí trong suốt quá trình học. Dòng iMX6 là dòng chip mang tính thương mại cao, hiện được rất nhiều công ty chọn cho sản phẩm của mình.

V. Ni dung chương trình (Nội dung được thiết kế bởi hethongnhung.com – Vui lòng không sao chép)

1. Gii thiu v embedded linux platform :

  • Hướng dẫn cài đặt và cấu hình các tool/software cần thiết cho khóa học (vmware, ubuntu, winscp, putty, win32diskimager..)
  • Giới thiệu về linux, vì sao cần có OS? Vì sao cần Linux?
  • So sánh nền tảng embedded linux với các platform khác.
  • Các yêu cầu tối thiểu về hardware để có thể chạy được linux.
  • Giới thiệu sơ qua về board udoo neo

2. Kiến thc căn bn v linux .

  • Kiến trúc chung của 1 hệ thống nhúng linux.
  • Khái niệm uboot, kernel, device tree, rootfs.
  • Khái niệm version và distro linux.
  • Phân biệt kernel type uImage và zImage.
  • Cấu trúc file, thư mục trên linux
  • Các thao tác, lệnh cơ bản hay sử dụng trên linux
  • Các phân cấp permission trên linux.
  • Các trình soạn thảo và cách sử dụng
  • Kiến thức về compiler/toolchain
  • Makefile , Compiling and Linking trên linux.
  • Bài tập :

+ Viết chương trình đơn giản và biên dịch bằng cmd trên linux thông qua GCC/ G++

+ Viết chương trình đơn giản và biên dịch thông qua Makefile.

3. Embedded linux trên imx6.

  • Gải thích khái niệm về MPU và MCU. 8 bit MCU/MPU, 32 bit MCU/MPU.
  • Giới thiệu về ARM processor nói chung và ARM cotex-A9/M4 nói riêng.
  • Cách flash và boot linux cho kit udoo neo imx6.
  • Các bước cấu hình và khởi tạo môi trường phát triển cho board udoo neo : usb direct connection, web control panel, ssh, remote VNC, CDC serial,…
  • Linux system boot sequence trên imx6, các kiểu boot linux khác nhau.
  • Trình biên dịch chéo và cách biên dịch ứng dụng cho ARM Linux.
  • Viết một ứng dụng C đơn giản sau đó nạp và chạy trên board udoo neo.
  • Biên dịch lại kernel, device tree cho udoo neo imx6.

4. Basic device driver :

  • Khái niệm user space, kernel space, phân loại và nhận dạng các loại device driver trên linux (character, block, network).
  • Character device driver:

         + Tổng quan về cấu trúc của một character driver thông qua ví dụ đơn giản.

         + Makefile và cách biên dịch driver.

         + Các phương pháp load driver vào hệ thống.

         + Lab 1.1 : kernel module đơn giản với 2 hàm module_init và module_exit

         + Lab 1.2 : số định danh và các hàm đăng ký số định danh register_chrdev_region và alloc_chrdev_region

         + Tạo device file và class  cho driver thông qua các hàm: class_create, device_create, cdev_init, cdev_add

          + Lab 1.3 : Viết driver gpio và application cho udoo neo

          + Lab 1.4 : Cách sửa KConfig và Makefile để đưa một module vào menuconfig

          + Lab 1.5 : Cách trúc file_operation và thực hành với chương trình calculator

          + Bài tập: Gao tiếp LCD 16×2 qua gpio trên udoo neo.

           + Lập trình serial port , cách giao tiếp giữa cotex M4 và cotex A9 sử dụng ttyMCC.

  • Tìm hiểu driver I2C trên linux và các loại sensor tích hợp sẵn trên kit udoo neo gồm: 3-Axis Accelerometer, 3-Axis Magnetometer, 3-Axis Digital Gyroscope
  • Giao tiếp sensor trên udoo neo theo phương pháp 1 : Viết chương trình trên userspace thông qua driver I2C.
  • Giao tiếp sensor trên udoo neo theo phương pháp 2 : Viết chương trình trên userspace thông qua driver của Gyroscope.
  • Giao tiếp sensor trên udoo neo theo phương pháp 3 : Viết chương trình GUI sử dụng Qt thông qua driver I2C. (sau khi học xong Qt)
  • Thực thành làm việc với các driver khác như : uart, i2c, pwm, spi, adc, ….

5. 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 với các widget, object, signal/slots comunication. Chương trình calculator đơn giản.
  • Cách tạo object mới. Ứng dụng tạo object serialport để giao tiếp với device file của driver.
  • Lập trình QML kết hợp javascript để tạo giao diện và animation cho ứng dụng Qt.
  • Thực hành viết chương trình ứng dụng Qt để giao tiếp với device driver.

6. Các chủ đề mở rộng (nếu còn thời gian)

  • Kỹ thuật debug và gỡ lỗi trên linux sử dụng gdb.
  • Lập trình shell trên linux.
  • Tìm hiểu khả năng chạy song song RTOS và Linux trên udoo neo và cách giao tiếp IPC giữa core A9 và M4.
  • Lập trình giao tiếp với cloud IoT để điều khiển và đồng bộ qua internet.
  • Phương pháp đánh giá hiệu năng của ứng dụng để chọn linh kiện phù hợp cho hệ thống

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í : 3 triệu
  • Địa điểm : nhà khách bộ quốc phòng, số 18D Cộng Hòa, Q.Tân Bình, TPHCM
  • Thời gian khai giảng dự kiến : liên tục mỗi tháng, bạn follow fanpage để theo dõi lịch cụ thể nhé
  • Website :  http://hethongnhung.com ;  http://laptrinhnhung.com

Một số hình ảnh của các khóa học trước:

Leave a comment

No comments yet.

Leave a Comment