Luận Văn Nghiên cứu và biên soạn giáo trình kit nhúng KM9260 trên nền Linux (436 trang)

Thảo luận trong 'Điện - Điện Tử' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    167
    Điểm thành tích:
    0
    Xu:
    0Xu
    LỜI MỞ ĐẦU
    Thế giới ngày nay với khoa học kĩ thuật phát triển mạnh mẽ cuộc sống con người
    ngày càng được phát triển tốt hơn. Khoa học kỹ thuật đem lại nhiều tiện ích thiết thực
    hơn cho cuộc sống con người. Góp phần to lớn trong quá trình phát triển của khoa học kỹ
    thuật là sự phát triển mạnh mẽ của vi xử lý. Từ bộ vi xử lý đầu tiên Intel 4004 được sản
    xuất bởi công ty Intel vào năm 1971, đến nay ngành công nghiệp vi xử lý đã phát triển
    vượt bậc và đa dạng với nhiều loại như: 8951, PIC, AVR, ARM, Pentium,Core i7, .
    Cùng với sự phát triển đa dạng về chủng loại thì tài nguyên của vi xử lý cũng được
    nâng cao. Các vi xử lý ngày nay cung cấp cho người dùng một nguồn tài nguyên rộng lớn
    và phong phú. Có thể đáp ứng được nhiều yêu cầu khác nhau trong thưc tế. Để giúp cho
    người dùng sử dụng hiệu quả và triệt để các tài nguyên này thì hệ thống nhúng ra đời. Hệ
    thống nhúng (Embedded system) là một thuật ngữ để chỉ một hệ thống có khả năng tự trị
    được nhúng vào trong một môi trường hay một hệ thống mẹ. Đó là các hệ thống tích hợp
    cả phần cứng và phần phềm phục vụ các bài toán chuyên dụng trong nhiều lĩnh vực công
    nghiệp, tự động hoá điều khiển, quan trắc và truyền tin. Với sự ra đời của hệ thống nhúng
    thì vi xử lý ngày càng được ứng dụng rộng rãi trong đời sống cũng như trong công
    nghiệp vì khả năng xử lý nhanh, đa dạng, tiết kiệm năng lượng và độ ổn định của hệ
    thống nhúng.
    Những năm gần đây, sự năng động và tích cực hội nhập quốc tế đã đem về hơi thở
    mới cho Việt Nam về mọi mặt: kinh tế, xã hội, văn hóa, nghệ thuật Lĩnh vực kỹ thuật
    nói chung và kỹ thuật điện tử nói riêng cũng có những thay đổi theo chiều hướng tích
    cực. Bên cạnh việc áp dụng những kỹ thuật mới (chủ yếu mua từ nước ngoài) vào sản
    xuất, nhiều công ty ở Việt Nam đã chú trọng đến việc phát triển đội ngũ R&D (Research
    And Development) để tự chế tạo sản phẩm hoàn thiện cung ứng cho thị trường. Một
    trong những sản phẩm đó là kit KM9260 là một kit nhúng được tích hợp cao trên nền vi
    điều khiển AT91SAM9260.
    Tuy hệ thống nhúng rất phổ biến trên toàn thế giới và là hướng phát triển của ngành
    Điện tử sau này nhưng hiện nay ở Việt Nam độ ngũ kỹ sư hiểu biết về hệ thống nhúng
    còn rất hạn chế không đáp ứng được nhu cầu nhân lực trong lĩnh vực này. Trước tình
    iii




    hình thiếu nhân lực như thế này, trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí
    Minh với tư cách là một trong những trường sư phạm kỹ thuật đứng đầu của Việt Nam
    đã nghiên cứu về lĩnh vực hệ thống nhúng và sẽ đưa vào hệ thống môn học đào tạo trong
    tương lai gần nhất.
    Vì vậy việc biên soạn giáo trình về hệ thống nhúng là một yêu cầu cần thiết trong
    thời điểm hiện tại cũng như trong tương lai. Nhận thấy được nhu cầu cấp thiết đó nên
    sinh viên thực hiện đã chọn đề tài: “NGHIÊN CỨU VÀ BIÊN SOẠN GIÁO TRÌNH
    KIT NHÚNG KM9260 TRÊN NỀN LINUX
    ” để làm đồ án tốt nghiệp cho mình.
    Những kiến thức, năng lực đạt được trong quá trình học tập ở trường sẽ được đánh
    giá qua đợt bảo vệ đồ án cuối khóa. Vì vậy sinh viên thực hiện đề tài cố gắng tận dụng
    những kiến thức đã học ở trường cùng với sự tìm tòi, nghiên cứu cùng với sự hướng dẫn
    tận tình của Giáo viên hướng dẫn cùng Thầy/Cô thuộc Khoa Điện-Điện Tử để có thể
    hoàn thành tốt đồ án này.
    Mặc dù sinh viên thực hiện đề tài đã cố gắng hoàn thành nhiệm vụ đề tài đặt ra và
    đúng thời hạn nhưng chắc chắn sẽ không tránh khỏi những thiếu sót, mong quý Thầy/Cô
    và các bạn sinh viên thông cảm. Sinh viên thực hiện đề tài mong nhận được những ý kiến
    đóng góp của quý Thầy/Cô và các bạn sinh viên.


    MỤC LỤC
    NỘI DUNG TRANG
    PHẦN A: GIỚI THIỆU .
    Trang bìa . i
    Nhiệm vụ đồ án . . ii
    Lời mở đầu . . iii
    Lời cảm ơn . . iv
    Mục lục . . v
    Liệt kê hình vẽ . . ix
    Liệt kê bảng xii
    PHẦN B: NỘI DUNG .
    CHƯƠNG I: DẪN NHẬP . 1
    1.1. Đặt vấn đề . . 2
    1.2. Lý do chọn đề tài. . 2
    1.3. Đối tượng nghiên cứu . . 3
    1.4. Giới hạn đề tài . . 3
    1.5. Dàn ý nghiên cứu . 3
    1.6. Tình hình nghiên cứu . 4
    1.7.Ý nghĩa thực tiển. . 5
    CHƯƠNG V:
    KẾT QUẢ NGHIÊN CỨU-KẾT LUẬN-HƯỚNG PHÁT TRIỂN. . 116
    5.1 Kết quả nghiên cứu. 117
    5.2 Kết luận . 117
    5.3 Hướng phát triển . . 118
    PHẦN C: PHU LỤC . 119
    vi


    1.1. ĐẶT VẤN ĐỀ
    Trên thế giới hệ thống nhúng (embeded system) đã xuất hiện và có mặt trên thị
    trường vào những năm 1960, cho đến nay đã hơn nữa thế kỷ hình thành và phát triển. Với
    những ưu điểm mà các hệ thống khác không có như tính gọn nhẹ, đáp ứng nhanh, độ tin
    cậy cao, và quan trọng là khả năng linh hoạt trong nhiều ứng dụng tạo điều kiện thuận lợi
    cho sản xuất hàng loạt dẫn đến giá thành giảm, . Hệ thống nhúng được sử dụng đa dạng
    trong mọi lĩnh vực như: dân dụng, quân sự, y tế, . Doanh thu mà các hệ thống nhúng
    mang lại là vô cùng lớn. Theo thống kê của một hãng nghiên cứu của Canada thì đến năm
    2009, tổng thị trường của các hệ thống nhúng toàn cầu đạt 88 tỷ USD. Trong đó phần
    cứng đạt 78 tỷ và phần mềm đạt 3.5 tỷ. Trong tương lai lượng doanh thu này sẽ còn tăng
    lên đáng kể. Lĩnh vực này đã và đang là một cơ hội và thách thức vô cùng lớn cho các
    doanh nghiệp trong và ngoài Việt Nam.
    Tại Việt Nam, việc bắt tay vào nghiên cứu và phát triển phần mềm cũng như phần
    cứng hệ thống nhúng chỉ mới bắt đầu trong vài năm trở lại đây và được xem là một “cơ
    hội vàng” cho các công ty điện tử nghiên cứu và phát triển ứng dụng vào các sản phẩm
    công nghệ cao. Nhiều công ty xem việc phát triển phần cứng và phần mềm hệ thống
    nhúng là “đích ngắm trong tương lai” và không ngừng đầu tư hợp tác với các đối tác
    nước ngoài để tiếp thu và phát triển. Trong bối cảnh đất nước ta đang trên đường hội
    nhập phát triển, việc đầu tư mở các nhà máy công xưởng chuyên về sản xuất hệ thống
    nhúng và tìm kiếm đối tác lớn từ nước ngoài có kinh nghiệm trong lĩnh vực này là không
    khó. Thế nhưng liệu chúng ta có đủ yếu tố con người để làm việc trong những môi trường
    này hay không?
    Hiện nay đội ngũ nhân lực của nước ta trong lĩnh vực thiết kế hệ thống nhúng còn
    hạn chế, chưa có một kiến thức đủ rộng và sâu để có thể hợp tác phát. Việt Nam bước
    đầu đã có những chương trình hợp tác với các hãng điện tử lớn như Toshiba, Samsung,
    Panasonic, . tuy nhiên những chương trình như thế còn rất hạn chế và không có một
    định hướng chiến lược chung. Việt Nam cần phải đẩy mạnh hơn nữa vấn đề định hướng
    nghiên cứu và phát triển cho ngành hệ thống nhúng từ trong các trường đại học và trung
    tâm nghiên cứu, cũng như trang bị những kiến thức về lý thuyết và thực hành cho
    những sinh viên trẻ, đáp ứng nhu cầu ngày càng cao của nhà tuyển dụng. Muốn vậy vấn
    đề đặt ra là phải có một chương trình được thiết kế chuyên sâu cả về lý thuyết và thực
    hành trong các cơ sở đào tạo chính quy để định hướng ban đầu cho các sinh viên

    theo học tại trường có một niềm đam mê lĩnh vực lập trình nhúng đầy tiềm năng này, tạo
    một nền tảng vững chắc cho sự phát triển bền vững và nhanh chóng trong tương lai.
    Một trong những yếu tố quan trong nhất quyết định đến chất lượng thành công của
    chương trình đào tạo là tài liệu hướng dẫn thực hiện chương trình đào tạo đó. Vì thế việc
    biên soạn một giáo trình đầy đủ, chuyên sâu, giảng dạy song hành giữa lý thuyết và thực
    hành để người học không chỉ nắm vững nguyên lý hoạt động mà còn có thể thao tác điều
    khiển vào những ứng dụng thực tế của hệ thống nhúng, từ đó tự mình có thể nghiên cứu
    phát triển trong các môi trường chuyên nghiệp sau này là một nhu cầu cấp thiết.
    1.2. LÝ DO CHỌN ĐỀ TÀI
    Tên đề tài của nhóm là “NGHIÊN CỨU VÀ BIÊN SOẠN GIÁO TRÌNH KIT
    NHÚNG KM9260 TRÊN NỀN LINUX”.
    Khi một họ CHIP vi điều khiển mới được ra đời, cùng với những tính năng vượt trội
    hơn so với các vi điều khiển khác, nhà sản xuất thường cho ra đời các kit nhúng sử dụng
    ngay những CHIP này để làm nổi bật những tính năng mà nó hỗ trợ. Kit nghiệm KM9260
    là một loại như thế. Được xây dựng dựa vào cấu trúc hệ thống nhúng at91sam9260-ek
    của hãng Atmel, kit được tích hơp rất nhiều ngoại vi thích hợp với những đặc điểm của
    hệ thống nhúng để nhóm chúng em chọn làm đề tài nghiên cứu của mình.
    Việc lựa chọn một kit cụ thể để viết giáo trình hướng dẫn lập trình ứng dụng trong
    hệ thống nhúng được quyết định bởi ba lý do sau:
     Thứ nhất, đa số các hệ thống nhúng (bao gồm phần cứng và phần mềm) được
    xây dựng theo một chuẩn nhất định. Nghiên cứu một đối tượng cụ thể trong
    chuẩn này có nghĩa rằng tất cả các đối tượng khác cũng đang được nghiên cứu.
    Tiếp cận theo hướng cụ thể sẽ giúp cho người học có nhiều kinh nghiệm lập
    trình từ thực tiễn, rút ra kiến thức tổng quát từ những thao tác được hướng dẫn,
    . tạo nền tảng cho việc nghiên cứu các hệ thống khác. Nếu tiếp cận theo hướng
    chung nhất, mặc dù người học có thể hiểu rõ nguyên tắc hoạt động của hệ thống
    nhưng sẽ không thể áp dụng vào bất kỳ một hệ thống thực tế nào.
     Thứ hai, độ tin cậy cao, giá thành và thời gian thiết kế giảm. Đa số các kit thí
    nghiệm được nghiên cứu và kiểm tra qua nhiều công đoạn trước khi xuất hiện
    trên thị trường đại trà vì thế hệ thống hoạt động với độ ổn định cao. Do sản xuất
    với số lượng lớn nên chi phí thiết kế sẽ giảm, thời gian thực hiện được rút ngắn.

     Thứ ba, các kit thí nghiệm được sản xuất với rất nhiều ngoại vi khác nhau tích
    hợp trên một board mạch, nhiều chân cắm mở rộng, . thích hợp cho việc ứng
    dụng kết hợp với các kit thí nghiệm hiện có tránh lãng phí trong quá trình
    chuyển giao thay đổi công nghệ.
    Một hệ thống nhúng có thể chạy trên nhiều hệ điều hành khác nhau như WinCE,
    Android, Linux, .nhưng nhóm chúng em chọn hệ điều hành Linux để nghiên cứu và
    triển khai các bài thí nghiệm trong giáo trình vì hệ điều hành này có nhiều ưu điểm mà
    các hệ điều hành khác không có.
     Ưu điểm đầu tiên là Linux có mã nguồn mở, chúng ta có thể thao tác chỉnh sửa
    mã nguồn này để phù hợp với hệ thống. Hiện này Linux hỗ trợ cho rất nhiều
    dòng vi điều khiển khác nhau như: ARM, AVR, .nên khi nghiên cứu linux
    chúng ta có thể dễ dàng làm việc trên nhiều hệ thống khác.
     Linux được xây dựng hoàn toàn bằng ngôn ngữ lập trình C. Đây là ngôn ngữ
    thông dụng và phổ biến. Người học khi nghiên cứu sẽ dễ dàng tiếp thu được
    thuật toán chương trình điều khiển và nguyên lý làm việc của hệ thống.
     Có rất nhiều sách hay và thông tin bàn luận về hệ điều hành này trên internet.
    Do đó khi nghiên cứu người học có thể tìm hiểu trên mọi kênh thông tin để nắm
    vững nội dung của bài học.
     Và còn rất nhiều ưu điểm khác, những ưu điểm này sẽ được người học nhận ra
    trong quá trình sử dụng.
    Với những lý do trên nhóm chúng em chọn đề tài : ”NGHIÊN CỨU VÀ BIÊN
    SOẠN GIÁO TRÌNH KIT NHÚNG KM9260 TRÊN NỀN LINUX” làm đề tài tốt
    nghiệp của mình. Với mục đích làm tài liệu nghiên cứu cho các bạn sinh viên mong
    muốn tìm hiểu thế giới lập trình nhúng đầy thú vị, góp phần làm cho môn học này được
    phát triển rộng rãi trong đội ngũ kỹ sư trẻ của nước ta, nâng cao chất lượng của nguồn
    nhân lực.
    1.3. ĐỐI TƯỢNG NGHIÊN CỨU
    Đề tài này tập trung nghiên cứu chủ yếu là phần mềm hệ thống nhúng linux trên kit
    ARM KM9260. Những kiến thức về hệ điều hành nhúng bao gồm driver và application
    được hiện thực hóa thông qua các bài thực hành trên kit thí nghiệm. Các bài thực hành
    được xây dựng từ đơn giản đến nâng cao điều khiển các thiết bị ngoại vi được tích hợp

    trên kit để người học có thể hiểu và ứng dụng vào các dự án lớn hơn ngoài thực tế.
    Do đây là tài liệu hướng dẫn lập trình hệ thống nhúng dựa trên nền hệ điều hành linux
    nên những kiến thức về lập trình hợp ngữ, những chương trình không mang tính chất hệ
    điều hành không được đề cập và áp dụng trong những bài thực hành của giáo trình.
    1.4. GIỚI HẠN ĐỀ TÀI
    Nội dung của đề tài (giáo trình) bao gồm 3 vấn đề:
     Lập trình hệ thống nhúng căn bản:
    Trình bày những kiến căn bản nhất về hệ thống nhúng, làm cơ sở để người học tiếp
    cận phần lập trình hệ thống nhúng nâng cao. Bao gồm lý thuyết về hệ điều hành Linux, lý
    thuyết về hệ thống nhúng, hướng dẫn các phần mềm hổ trợ trong quá trình sử dụng kit
    nhúng, hướng dẫn nạp các phần mềm hệ thống nhúng và biên dịch phần mềm ứng dụng.
    - Phần lý thuyết về hệ điều hành Linux sẽ trình bày các kiến thức căn bản của
    Linux: phân vùng đĩa trong Linux, cách truy xuất phân vùng trong Linux, các thư
    mục hệ thống trong Linux, màn hình Terminal. Ngoài ra phần này còn trình bày
    các thao tác cơ bản trong Linux như: khởi động lại hệ thống, tắt hệ thống, tạo thư
    mục tập tin, sao chép thư mục tập tin, di chuyển thư mục tập tin, phân quyền quản
    lý tập tin thư mục, . Cuối cùng phần này trình bày trình soạn thảo trong Linux là
    trình soạn thảo VI.
    - Phần lý thuyết hệ thống nhúng sẽ trình bày về phần cứng của kit nhúng KM9260,
    trình bày về các phần mềm hệ thống của kit nhúng bao gồm Romcode,
    Bootstrapcode, U-boot, Kernel, Rootfs.
    - Phần hướng dẫn các phần mềm hổ trợ trong quá trình sử dụng kit nhúng sẽ trình
    bày các phần mềm cần thiết như: Vmware Workstation, Samba, Putty, tftpd32,
    SSH SECURE SHELL CLIENT.
    - Và phần cuối cùng sẽ hướng dẫn nạp các phần mềm hệ thống vào các vùng nhớ
    tương ứng trên kit để kit có thể chạy hệ điều hành nhúng thành công. Phần này
    còn trình bày cách biên dịch, chạy một chương trình ứng dụng và cách biên dịch,
    cài đặt một driver.
     Lập trình hệ thống nhúng nâng cao:
    Bao gồm kiến thức về mối quan hệ giữa hai lớp user và kernel trong hệ thống phần
    mềm nhúng.

    - Đối với lớp user, đề tài cung cấp những thông tin các hàm hỗ trợ trong quản lý
    thời gian thực của hệ thống, các lệnh hỗ trợ lập trình đa tuyến và tiến trình. Cho
    người học có một tầm nhìn tổng quát trong phương pháp lập trình bằng hệ điều
    hành. Đề tài không đi sâu tìm hiểu vấn đề xung đột trong truy xuất dữ liệu giữa
    các tuyến và các tiến trình với nhau mà chỉ nêu những kiến thức đủ để thực hiện
    các bài tập ví dụ trong đề tài.
    - Đối với lớp kernel, đề tài cung cấp những thông tin chủ yếu về driver, vai trò, vị
    trí và phân loại driver trong hệ thống phẩn mềm nhúng. Đi sâu vào tìm hiểu
    character device driver, các hàm giao diện, các bước hoàn chỉnh để viết và đưa
    một driver (loại character) hoạt động trong hệ thống. Bên cạnh đó đề tài giáo trình
    còn trình bày các hàm thao tác trong gpio, quản lý và truy xuất thời gian thực
    trong kernel làm cơ sở cho điều khiển các thiết bị ngoại vi.
     Thực hành giao tiếp các thiết bị ngoại vị:
    Bao gồm nhiều bài thực hành khác nhau, mỗi bài sẽ điều khiển một loại thiết bị ngoại
    vi. Đề tài sẽ cung cấp mã chương trình ví dụ cho cả hai phần driver và application cho
    mỗi bài ví dụ. Các thiết bị ngoại vi là những linh kiện hiển thị đơn giản, các linh kiện đo
    lường, điều khiển; các chuẩn giao tiếp như UART, I2C, 1-Wire.
    Do hạn chế về thời gian nghiên cứu nên đề tài chỉ đưa ra các chương trình ví dụ nhỏ
    dưới dạng module chưa kết hợp thành một dự án lớn để có thể hiểu hết sức mạnh mà một
    hệ thống nhúng có thể làm. Đề tài chỉ nhằm cung cấp cho người đọc những kiến thức lập
    trình nhúng căn bản và cụ thể nhất để từ đó làm cơ sở để lập trình những ứng dụng lớn
    hơn không phải chỉ một mà là tập hợp những kỹ sư khác nhau cùng nghiên cứu phát
    triển.
    1.5. DÀN Ý NGHIÊN CỨU
    1.5.1. Lập trình nhúng căn bản:
     Giới thiệu về vi điều khiển AT91SAM9260: cung cấp cho người học các kiến
    thức cần thiết về vi điều khiển phục vụ cho việc nghiên cứu sử dụng kit nhúng.
    Phần này bao gồm:
    - Họ vi điều khiển ARM.
    - Vi điều khiển AT91SAM9260:
     Đặc điểm chính

     Sơ đồ chân của AT91SAM9260
     Nguồn cấp cho AT91SAM9260
     Bảng đồ vùng nhớ của AT91SAM9260
     Lý thuyết về hệ điều hành Linux: Cung cấp cho người học các kiến thức cơ bản
    về Linux để ứng dụng cho hệ điều hành nhúng. Phần này bao gồm:
    - Kiến thức ve Linux
    - Các thao tác cơ bản trên hệ điều hành Linux
    - Trình soạn thảo VI
     Lý thuyết về hệ thống nhúng: Cúng cấp cho người học các kiến thức ban đầu về
    hệ thống nhúng. Phần này bao gồm:
    - Phần cứng hệ thống nhúng trên kit km9260
    - Phần mềm hệ thống nhúng trên kit km9260
     Các phần mềm hổ trợ trong quá trình sử dụng kit: Hướng dẫn các thao tác sử
    dụng phần mềm và chức năng của từng phần mềm. Phần này bao gồm:
    - Chương trình máy tính ảo Vmware Workstation
    - Chương trình Samba
    - Chương trình Putty
    - Chương trình tftpd32
    - Chương trình SSH SECURE SHELL CLIENT
     Hướng dẩn nạp phần mềm hệ thống và biên dịch phần mềm ứng dụng cho kit:
    Phần này bao gồm:
    - Trình biên dịch chéo Cross Toolchians
    - Các bước biên dịch Kernel
    - Chỉnh sửa Kernel
    - Các biến môi trường và lệnh cơ bản của U-boot
    - Cài đặt cho hệ thống
    - Các bước biên dịch Driver và cài đặt Driver
    - Các bước biên dịch chương trình ứng dụng và chạy chương trình ứng dụng
    1.5.2. Lập trình nhúng nâng cao:
     Lập trình user application: Cung cấp cho người học những kiến thức cần thiết
    để có thể viết một chương trình ứng dụng chạy trong lớp user. Phần này bao
    gồm những nội dung:

    - Chương trình helloworld: Đây là chương trình đơn giản, cung cấp kiến thức
    về các hàm đơn giản trong C (hàm printf(), hàm exit()) và khắc phục những
    lỗi xảy ra trong quá trình biên dịch chương trình user sao cho có thể chạy
    ổn định.
    - Trì hoãn thời gian trong user: Cung cấp cho người học những kiến thức về
    trì hoãn thời gian trong lớp user có đơn vị từ giây đến nano giây. Người học
    được thao tác với hàm định thời gian tác động alarm(), các hàm truy xuất
    và thao tác thông tin thời gian thực của hệ thống linux.
    - Lập trình đa tiến trình trong user: Người học được làm quen với khái niệm
    tiến trình; cách quản lý tiến trình; các hàm tạo lập, thay thế và nhân đôi tiến
    trình; . trong linux.
    - Lập trình đa tuyến trong user: Trình bày các vấn đề về tuyến; phân biệt
    giữa tuyến và tiến trình; Các hàm tạo lập, đồng bộ hóa hoạt động; Những
    ưu và nhược điểm so với tiến trình; . trong linux.
     Lập trình trong lớp kernel driver: Cung cấp cho người học những kiến thức
    chuyên sâu về driver loại character theo đó họ có thể tự mình viết và đọc hiểu
    các driver khác ngoài thực tế. Phần này bao gồm những nội dung sau:
    - Hệ thống nhúng mối quan hệ giữa driver và application trong phần mềm hệ
    thống nhúng: Nhắc lại những kiến thức về định nghĩa; cấu trúc và vai trò
    từng thành phần trong hệ thống nhúng. So sánh về vai trò, nêu mối quan hệ
    giữa driver và application trong hệ thống nhúng phục vụ cho việc phân phối
    nhiệm vụ thực thi cho hai thành phần này trong hệ thống.
    - Các loại driver nhận dạng từng loại driver trong linux: Xác định vai trò
    của driver; phân loại; cách quản lý driver; các hàm tương tác với số định
    danh driver trong linux;
    - Character device driver: Cung cấp những kiến thức đầy đủ về charater
    device driver bao gồm: Định nghĩa, cách thức tạo số định danh thiết bị, cấu
    trúc và các hàm để đăng ký character driver vào hệ thống linux.
    - Các giao diện chuẩn trong driver: Trình bày cấu trúc, giải thích các tham
    số lệnh của giao diện hàm trong driver linux như read(), write() và ioctl()
    phục vụ cho việc viết hoàn chỉnh một character device driver;
    - Các bước để viết một character driver: Căn cứ vào những kiến thức lý
     

    Các file đính kèm:

Đang tải...