Báo cáO ĐỀ TÀI (Môn học: Hệ thống nhúng) giao tiếp chuột và BÀn phíM



tải về 261.44 Kb.
trang1/4
Chuyển đổi dữ liệu19.03.2019
Kích261.44 Kb.
  1   2   3   4



TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HỒ CHÍ MINH



KHOA CÔNG NGHỆ THÔNG TIN





https://fbcdn-sphotos-h-a.akamaihd.net/hphotos-ak-xpf1/v/t1.0-9/10616127_688302477926046_8994194078855958446_n.jpg?oh=f65011daf95d4869870e6fb6f50e8b72&oe=54b31f0d&__gda__=1421331303_adcbf9b0d40111b36c90495c8feb4e27

BÁO CÁO ĐỀ TÀI

(Môn học: Hệ thống nhúng)

GIAO TIẾP CHUỘT VÀ BÀN PHÍM

MÃ HỌC PHẦN:  181ESYS431080

HỌC KỲ: 1 – NĂM HỌC: 2018-2019

GVHD: Th.S Đinh Công Đoan

Thành viên nhóm:

1. Bùi Phan Viết Cường 15110173

2. Huỳnh Thế Cương 15110172

3. Trần Văn Chinh 15110167

TP.HỒ CHÍ MINH – 12/2018

NHẬN XÉT CỦA GIẢNG VIÊN

TPHCM, ngày 18 tháng 12 năm 2017



Giáo viên hướng dẫn

(Ký và ghi rõ họ tên)



MỤC LỤC

MỞ ĐẦU 5

Tóm tắt 5

2. Đặt vấn đề 5

2.1. Những nghiên cứu trong và ngoài nước 5

2.2. Tài liệu và kiến thức liên quan 7

2.3. Tính cấp thiết cần nghiên cứu của đề tài 7

2.4. Tính cấp thiết của đề tài (lý do chọn đề tài) 8

2.5. Mục tiêu đề tài 8

2.6. Đối tượng và phạm vi nghiên cứu 9

2.7. Phương pháp nghiên cứu 9

2.8. Nội dung đề tài 9

II. NỘI DUNG 11

1. Chương 1 : Giới thiệu vi xử lý 11

1.1 Giới thiệu ARM và Dòng ARM Cortex 11

1.2 Giới thiệu về ARM Cortex-M4 11

1.3 Giới thiệu dòng vi xử lý được dùng trong đề tài 12

2. Chương 2 : Cấu trúc chung của Kit 15

2.1. Tổng quan về Kit STM32F429I-DISCOVERY 15

2.1.1. Phần cứng của Kit 15

2.1.2. Tính năng, giao thức kết nối của Kit 16

2.1.3. Yêu cầu hệ thống 17

2.1.4. Công cụ phát triển hỗ trợ Kit 17

2.2. Vị trí các thành phần trên Kit và kích thước 17

2.2.1. Sơ đồ khối của Kit 17

2.2.2. Vị trí của các thành phần trên mạch 18

2.2.3. Kích thước của Kit 20

2.3. Chi tiết phần nhúng ST-LINK/V2 20

2.3.1. Tổng quan về ST-LINK/V2 nhúng 20

2.3.2. Drivers: 21

2.3.3. Sử dụng ST-Link/V2 hoặc V2-B để lập trình/gỡ lỗi tích hợp on-board 21

2.3.4. Sử dụng ST-Link/V2 hoặc V2-B để lập trình/gỡ lỗi ứng dụng STM32 khác 22

2.4. Chi tiết phần cứng 23

2.4.1. Các chân trên Kit 23

2.4.2. Nguồn và vấn đề cấp và chọn nguồn 26

2.4.3. LEDs 27

2.4.4. Nút bấm 28

2.4.5. USB OTG 29

2.4.6. Con quay hồi chuyển MEMS (ST-MEMS L3GD20) 29

2.4.7. QVGA TFT LCD 2.4” 29

2.4.8. 64-Mbit SDRAM 30

2.4.9. JP3 (Idd) 30

2.4.10. Xung nhịp OSC 31

2.4.11. Kết nối mở rộng Kit có hỗ trợ 32

2.5. Các mạch và sơ đồ liên quan đến Kit 36

3. Chương 3: Những kiến thức liên quan 39

3.1. Tổng quan về USB 39

3.1.1. Định nghĩa 39

3.1.2. Đặc điểm kỹ thuật BUS 40

3.1.3. Nguồn cấp cho USB 41

3.1.4. Phân loại USB 41

3.1.5. Các thiết bị endpoints giao tiếp USB 42

3.2. Giao tiếp chuẩn USB 43

3.2.1. Chuẩn tín hiệu 43

3.2.2. USB Host 43

3.2.3. USB HID (Human Interface Device) 44

3.2.4. Kịch bản hoạt động của chuẩn USB 44

3.2.5. Chế độ truyền 46

4. Chương 4: Ứng dụng 47

4.1. Nạp nguồn vào Kit 47

4.2. Nạp chương trình vào Kit 47

4.3. Thư viện sử dụng và kỹ thuật 50

4.4. Project trong Keil uVision 5 51

4.4.1. Tạo Project mới 51

4.4.2. Cấu hình Project 52

4.4.3. Tổ chức chương trình 53

4.5. Cách chương trình hoạt động 54

4.5.1. Cấu hình GPIO 54

4.5.2. Thư viện xử lý tín hiệu chuột và tín hiệu bàn phím 55

4.6. Source code chương trình 56

4.7. Ứng dụng minh họa ứng giao tiếp chuột và bàn phím sử dụng Kit STM32F429-DISCOVERY 63

4.7.1. Giao tiếp với chuột 63

4.7.2. Giao tiếp với bàn phím 65

III. PHẦN KẾT LUẬN 67

1. Kết quả sau khi hoàn thành đề tài 67

2. Ưu, nhược điểm 67

2.1. Ưu điểm 67

2.2. Nhược điểm 67

3. Những khó khăn 68

4. Hướng phát triển của đề tài 68

IV. TÀI LIỆU THAM KHẢO 69



MỞ ĐẦU

Tóm tắt


Nhóm đã thực hiện đề tài là: Tìm hiểu Kit STM32F429I-DISCOVERY và làm ứng dụng minh họa giao tiếp chuột và bàn phím. Sau khi tham khảo tài liệu thì nhóm chọn Kit STM32F429I-DISCOVERY để làm host giao tiếp với chuột và bàn phím. Dùng linh kiện rời là chuột có dây và bàn phím liên kết qua cổng OTG mà Kit có hỗ trợ để tiến hành giao tiếp khi di chuyển chuột và nhấn nút, trái, phải, giữa đèn led trên Kit sẽ sáng theo mức độ tùy thao tác. Khi giao tiếp với bàn phím cũng tương tự nhấn phím ví dụ phím “A” để bật đèn led và bấm một phím khác như phím “N” để tắt đèn led trên Kit. Nhóm chọn Kit này vì Kit hỗ trợ chuẩn giao tiếp USB có thể chia làm 2 chế độ là USB Host và USB HID (Human Interface Devices) bên cạnh đó Kit còn nhiều chức năng có thể nâng cao và phát triển ứng dụng minh họa sau này.

Chức năng chính của ứng dụng minh họa chia làm 2 phần:



  • Giao tiếp với Chuột qua cổng OTG trên Kit: khi nhấn chuột trái đèn lè trên Kit bật sáng, nhấn chuột phải đèn led tắt và nhấn chuột giữa led sẽ nhấp nháy. Khi di chuyển chuột nhanh chậm thì đèn led sáng theo mức độ, di chuyển chuột càng nhanh đèn càng sáng với mức độ cao.

  • Giao tiếp với Bàn phím qua cổng OTG trên Kit: tiến hành chọn 2 phím là nút bật và tắt led, thay phiên nhấn phím “A” và “N” tương ứng là bật đèn led và tắt đèn led trên Kit

2. Đặt vấn đề

2.1. Những nghiên cứu trong và ngoài nước


  • Trong nước

Hiện nay, lĩnh vực hệ thống nhúng tại Việt Nam tuy đã biết đến khá lâu nhưng tốc dộ phát triển vẫn còn khá chậm với rất ít sản phẩm có thể ứng dụng vào thực tế. Công việc chủ yếu vẫn là gia công nghệ phần mềm cho nước ngoài, trong đó chiếm tỉ lệ lớn là các thị trường Nhật, Mỹ và Châu Âu. Rất nhiều hãng sản xuất phần mềm lớn đã và đang đổ bộ vào thị trường Việt Nam để tận dụng lợi thế nguồn nhân lực giá rẻ và khai thác một một thị trường tiềm năng như IBM, Intel, CSC,… Đặc biệt là các khu công nghệ cao nơi chiếm phần lớn thị phần nguồn nhân công về ngành IOT, nhúng khá lớn.

Theo PGS.TS Nguyễn Hiếu Minh, Chủ nhiệm khoa Điện tử Viễn thông, Học viện Kỹ thuật mật mã, Việt Nam hiện nay mới chỉ vài trường có chuyên ngành sâu về Hệ thống nhúng và điều khiển tự động, trong khi nhu cầu nhân lực chuyên sâu về lĩnh vực này đang rất lớn và cấp bách.



  • Ngoài nước

Thuật ngữ hệ thống nhúng hiện đã trở nên khá phổ biến. Thực tế, các sản phẩm như máy vi tính, thiết bị viễn thông, điện tử công nghiệp, điện tử dân dụng... đã và đang phát triển rất nhanh, trong đó các hệ thống nhúng điện tử và vi điện tử là cốt lõi của sự phát triển này. Theo các nhà thống kê trên thế giới, thị trường hệ thống nhúng lớn gấp khoảng 100 lần thị trường PC, trong đó số chip xử lý trong các hệ thống nhúng chiếm tới 99% số chip xử lý được sử dụng. Rất nhiều công ty, tập đoàn lớn trên thế giới đang tập trung phát triển vào lĩnh vực này và kéo theo nhu cầu khổng lồ về nhân lực với mức lương hấp dẫn như Intel, IBM hay mạch được sử dụng phổ biến nhất hiện nay là mạch ARM của công ty Acorn.

Hệ thống nhúng vốn rất đa dạng và phong phú, tuy nhiên có rất ít người biết được tầm quan trọng và sự hiện hữu của chúng trong thế giới quanh ta. Từ những hệ thống phức tạp như hàng không vũ trụ, phòng thủ quân sự, máy móc tự động trong công nghiệp, đến những phương tiện di chuyển thông thường như máy bay, xe điện, xe hơi, các trang thiết bị y tế trong bệnh viện, cho tới những thiết bị truyền hình và điện thoại di động chúng ta sử dụng hằng ngày, đâu đâu cũng có sự hiện diện của hệ thống nhúng.

Trong hơn 9 tỷ bộ vi xử lý được sản xuất hằng năm, chỉ có khoảng 150 triệu bộ (1,5%) được sử dụng cho máy vi tính cá nhân, phần còn lại (98,5%) là dành cho hệ thống nhúng (2).

Theo một thống kê khác của BCC Research Group (4) thì đến năm 2009, tổng doanh số của thị trường hệ thống nhúng trên toàn cầu sẽ đạt khoảng 88 tỷ đô-la Mỹ, với phần cứng chiếm 78 tỷ đô-la Mỹ và phần mềm chiếm 3,5 tỷ đô-la Mỹ, phần còn lại là các bo mạch nhúng. Tốc độ tăng trưởng trung bình hằng năm (AAGR) của phần mềm nhúng hiện đang đạt mức 16%.




2.2. Tài liệu và kiến thức liên quan


Về kiến thức liên quan:

  • Trước khi tìm hiểu đề tài, chúng ta cần trang bị những kiến thức căn bản liên quan đến hệ thống nhúng như board mạch, vi xử lý, vi điều khiển, các giao thức ở trên board nhúng, đặc biệt trong đề tài này cần tìm hiểu về chuẩn giao tiếp USB phân biệt USB Host và USB HID. 2 loại chuẩn USB này giao tiếp với nhau như thế nào.

  • Nắm vững nền tảng các môn học như Điện tử căn bản, Kiến trúc máy tính và hợp ngữ, sơ đồ nguyên lý và hoạt động của board mạch.

  • Phần nội dung trong đề tài này có tham khảo kiến thức từ giáo trình chính thức bộ môn Hệ thống nhúng, các silde trên trang LMS và nguồn tư liệu từ Internet.

Tài liệu liên quan gồm có:

  • 32F429IDISCOVERY Databrief

  • Embedded Systems Architecture - A Comprehensive Guide for Engineers and Programmers.

2.3. Tính cấp thiết cần nghiên cứu của đề tài


Như đã nêu trong phần nghiên cứu trong và ngoài nước sự phát triển mạnh mẽ của khoa học kĩ thuật với nền kinh tế trí thức và xu hướng hội nhập toàn cầu như hiện nay, thế giới và Việt Nam đang thực hiện việc phát triển và ứng dụng các sản phẩm công nghệ thông tin, các sản phẩm công nghệ cao vào đời sống thực tế nhiều hơn với các xu hướng chính là IOT, nhúng, giao tiếp thông minh giữa con người và máy học. Hệ thống nhúng là một hệ thống được tích hợp cả phần cứng và phần mềm công nghệ cao phục vụ cho các bài toán chuyên dụng trong nhiều lĩnh vực công nghiệp, tự động hóa điều khiển và truyền thông. Vì thế việc nghiên cứu về các board mạch để giải quyết một số bài toán áp dụng cho đời sống được rất nhiều người quan tâm. Đề tài giao tiếp chuột và bàn phím mà nhóm thực hiện với Kit STM32F429I-DISCOVERY có liên quan đến hệ thống nhúng giao tiếp với các sản phẩm đời thường hàng ngày như bàn phím, chuột, loa có cổng USB mà từ đó ta có thể làm chủ và thao tác với các thiết bị này một cách thông minh hơn.

2.4. Tính cấp thiết của đề tài (lý do chọn đề tài)


Lý do chọn đề tài của nhóm là tập trung vào việc vận dụng kiến thức đã học trong hệ thống nhúng để giải quyết các bài toán giao tiếp giữa các thiết bị có cổng USB với board mạch, vi xử lý.

Việc kết hợp board giao tiếp với thời gian thực, đọc thời gian thực, hoặc việc đọc dữ liệu và xử lý tín hiệu từ các cảm biến, ở đây là cảm biến hồng ngoại hiện giờ thật sư rất cần thiết. Trong các nhà máy, việc quản lý số lượng sản phẩm trong dây chuyền mà không có sự hỗ trợ của máy móc, của cảm biến thì việc này vô cùng khó khăn để đạt được sự chính xác tuyệt đối, đảm bảo cho quá trình hoạt động hiệu quả của nhà máy. Hoặc về mảng thời gian thực cũng vô cùng quan trọng, một cái đồng hồ điện tử, đồng hồ số trên tường nhà các bạn cũng ra đời trên việc áp dụng mạch thời gian thực kết hợp với việc lập trình để hiển thị thời gian thực để chúng ta có thể thấy được cũng chính là nhờ hệ thống nhúng hỗ trợ chúng ta.



Vì thế tìm hiểu Kit STM32F429I-DISCOVERY và ví dụ minh họa giao tiếp chuột và bàn phím với Kit sẽ làm rõ các vấn đề liên quan về lý thuyết cổng USB, phân biệt USB Host và USB HID từ đó mở ra các ý tưởng sau này để làm việc chuyên sâu hơn với các cổng USB, OTG và các board mạch hỗ trợ.

2.5. Mục tiêu đề tài


Đề tài ra đời với mục đích giúp sinh viên tổng hợp lại các kiến thức đã tiếp thu được trong quá trình học môn Hệ thống nhúng, đồng thời có cái nhìn tổng quan về ngành lập trình nhúng.

Có được kiến thức cơ bản về board mạch, giao tiếp giữa các thiết bị mà ở đây là giao tiếp chuột và bàn phím hay nói chung là giao tiếp chuẩn USB, là bước đệm tốt hướng đến công việc sau khi ra trường.

Hiểu được lý thuyết và áp dụng lý thuyết đó vào một số thí nghiệm với Kit STM32F429I-DISCOVERY.

2.6. Đối tượng và phạm vi nghiên cứu


Đề tài hướng tới sinh viên thuộc các ngành điện tử viễn thông, công nghệ thông tin,… và các đối tượng có niềm đam mê, quan tâm đến nghiên cứu và phát triển hệ thống nhúng.

Phạm vi nghiên cứu chủ yếu là các giao tiếp cơ bản giữa kit STM32F429I-DISCOVERY với các thiết bị sau:



  • Chuột có dây có chuẩn USB có thể kết nối OTG

  • Bàn phím có chuẩn USB có thể kết nối OTG

2.7. Phương pháp nghiên cứu


  • Đi từ những kiến thức cơ bản về board mạch, cách vận hành cấu hình đến lập trình và nhúng.

  • Sử dụng các phần mềm Keil uVision từ đó biết debug và biên dịch ra file hex.

  • Sử dụng phần mềm ST Link để nạp code lên Kit

  • Chuẩn bị kit STM32F429I-DISCOVERY, các linh kiện cần thiết là chuột, bàn phím và các cable kết nối.

  • Tìm hiểu về Kit STM32F429I-DISCOVERY, các linh kiện, thiết bị ngoại vi thông qua các datasheet của Kit và các tài liệu liên quan trên Internet và Youtube.

2.8. Nội dung đề tài


Nội dung đề tài sẽ đi theo các mục chính như sau:

  • Giới thiệu vi xử lý ARM và dòng ARM Cortex.

  • Giới thiệu về kit sử dụng trong đề tài là kit STM32F429I-DISCOVERY gồm các thành phần và cách hoạt động của mạch.

  • Các kiến thức liên quan ở đây là phần lý thuyết về chuẩn giao tiếp USB, phân loại USB Host và USB HID, giao tiếp giữa 2 loại USB trên.

  • Ứng dụng vào ví dụ minh họa giao tiếp chuột và bàn phím kết nối USB qua OTG với kit STM32F429I-DISCOVERY gồm:

    • Cách gắn mạch

    • Chi tiết code

    • Debug và biên dịch mã ra tập tin HEX

    • Nạp code vào Kit

    • Hình ảnh minh họa ứng dụng


  1   2   3   4


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©tieuluan.info 2017
được sử dụng cho việc quản lý

    Quê hương