SlideShare a Scribd company logo
BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
---------------------------------
ĐỒ ÁN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
ĐỀ TÀI:
THIẾT KẾ GAME MINI TRÊN KIT
STM32F746G_DISCOVERY
GVHD: Ths Phan Vân Hoàn
SVTH: Võ Phương Duy
MSSV:14141044
TP Hồ Chí Minh – 06/2018
BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
---------------------------------
ĐỒ ÁN TỐT NGHIỆP
NGÀNH KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
ĐỀ TÀI:
THIẾT KẾ GAME MINI TRÊN KIT
STM32F746G_DISCOVERY
GVHD: Ths Phan Vân Hoàn
SVTH: Võ Phương Duy
MSSV:14141044
TP Hồ Chí Minh – 06/2018
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH iii
TRƯỜNG ĐH. SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TP. HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
Tp. HCM, tháng 03 năm 2018
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Võ Phương Duy MSSV: 14141044
Chuyên ngành: CNKT Điện Tử Truyền Thông Mã ngành: 41
Hệ đào tạo: Đại học chính quy Mã hệ: 1
Khóa: 2014 Lớp: 14141DT1A
I. TÊN ĐỀ TÀI: THIẾT KẾ GAME MINI TRÊN KIT STM32F746G_DISCOVERY
II. NHIỆM VỤ
1. Các số liệu ban đầu:
 Khảo sát các loại vi điều khiển, lựa chọn màn hình cảm ứng, tay cầm PS2, module âm thanh.
 Tìm hiểu và thu thập các số liệu từ các trang mạng và sách về lập trình vi điều khiển ARM.
 Tìm hiểu các tài liệu hướng dẫn sử dụng tay cầm PS2, module giải mã âm thanh.
2. Nội dung thực hiện:
 NỘI DUNG 1: Nghiên cứu tài liệu về module VS1003, tay cầm PS2, KIT STM32F746
DISCOVERY.
 NỘI DUNG 2: Dựa trên các dữ liệu thu thập được, lựa chọn giải pháp thiết kế và thi công
mô hình kết nối các module với KIT điều khiển.
 NỘI DUNG 3: Thiết kế lưu đồ giải thuật và viết chương trình điều khiển cho vi điều khiển,
thiết kế giao diện màn hình chơi game.
 NỘI DUNG 4: Thử nghiệm và điều chỉnh phần mềm cũng như phần cứng để mô hình được
tối ưu, sử dụng dễ dàng. Đánh giá các thông số của mô hình so với thông số thực tế.
 NỘI DUNG 5: Viết báo cáo thực hiện.
III. NGÀY GIAO NHIỆM VỤ: 07/03/2018
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH iv
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 28/06/2018
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS. Phan Vân Hoàn
CÁN BỘ HƯỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH v
TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Y SINH
CỘNG HÒA XÃ HỘI CHỦ NGHĨA
VIỆT NAM
ĐỘC LẬP - TỰ DO - HẠNH PHÚC
----o0o----
Tp. HCM, ngày 28 tháng 6 năm 2018
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Võ Phương Duy
Lớp: 14141DT1A
MSSV:14141044
Tên đề tài: THIẾT KẾ GAME MINI TRÊN KIT STM32F746G_DISCOVERY
Tuần/ngày Nội dung
Xác nhận
GVHD
Tuần 1 Gặp GVHD nhận đề tài
Nhận tài liệu hướng dẫn từ GVHD
Tuần 2 Viết báo cáo Chương 1
Đọc tài liệu kĩ thuật KIT STM32, PS2
Tuần 3 Viết báo cáo Chương 1
Lập trình Game Cờ Caro
Tuần 4 Viết báo cáo Chương 2
Lập trình Game Cờ Caro
Lập trình Game Ball Bing Ball
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH vi
Lập trình giao tiếp tay cầm PS2
Tuần 5 Viết báo cáo Chương 2
Lập trình, chỉnh sửa game Ball Bing Bong
Tìm hiểu phương pháp giao tiếp module
VS1003
Tuần 6 Viết báo cáo Chương 3
Lập trình Game Flappy Bird
Giao tiếp thẻ nhớ nhưng lỗi
Tuần 7 Viết báo cáo Chương 3
Lập trình, chỉnh sửa Game Flappy Bird
Giao tiếp được với thẻ nhớ
Tuần 8 Viết báo cáo Chương 4
Lập trình Game Stick Hero
Giao tiếp thành công module VS1003
Thi công mạch kết nối
Tuần 9 Viết báo cáo Chương 4
Tạo file nhạc cho các Game
Lập trình Game Ai Là Triệu Phú
Tuần 10 Viết báo cáo Chương 5
Lập trình Game Ai Là Triệu Phú
Tuần 11 Viết báo cáo Chương 5
Lập trình Game Vòng Quay Sát Phạt
Tuần 12 Viết báo cáo Chương 6
Lập trình Game Vòng Quay Sát Phạt
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH vii
Lập trình Game Pika Pika
Tuần 13 Chỉnh sửa báo cáo
Chỉnh sửa code
Làm hộp cho mạch
GV HƯỚNG DẪN
(Ký và ghi rõ họ và tên)
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH viii
CAM ĐOAN
Tôi xin cam đoan đề tài được thực hiện dựa trên các tài liệu có trước. Không sao
chép từ bất kỳ nguồn tài liệu hay công trình nào khác.
Tôi xin chịu trách nhiệm với lời cam đoan này.
Người thực hiện
Võ Phương Duy
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH ix
LỜI CÁM ƠN
Tôi xin cám ơn sâu sắc đến thầy Phan Vân Hoàn đã trực tiếp hướng dẫn và tận
tình giúp đỡ, tạo điều kiện để tôi hoàn thành đề tài.
Tôi xin gửi lời chân thành cám ơn các thầy cô trong Khoa Điện - Điện Tử đã giúp
đỡ tôi hoàn thành đề tài. Tôi cũng gửi lời đồng cám ơn đến các bạn lớp 14141DT1A đã
chia sẻ trao đổi kiến thức cũng như những kinh nghiệm quý báu trong thời gian thực
hiện đề tài.
Xin cảm ơn đến cha mẹ.
Xin chân thành cám ơn!
Người thực hiện đề tài
Võ Phương Duy
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH x
MỤC LỤC
BÌA NGOÀI.....................................................................................................................i
BÌA TRONG...................................................................................................................ii
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP..............................................................................iii
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ..................................................... v
CAM ĐOAN................................................................................................................viii
LỜI CÁM ƠN................................................................................................................ix
MỤC LỤC ...................................................................................................................... x
DANH SÁCH HÌNH ....................................................................................................xii
DANH SÁCH BẢNG..................................................................................................xiii
TÓM TẮT..................................................................................................................... xv
Chương 1: TỔNG QUAN ......................................................................................... 1
1.1. ĐẶT VẤN ĐỀ......................................................................................................................... 1
1.2. MỤC TIÊU.............................................................................................................................. 1
1.3. NỘI DUNG NGHIÊN CỨU ................................................................................................... 2
1.4. GIỚI HẠN............................................................................................................................... 2
1.5. BỐ CỤC .................................................................................................................................. 3
Chương 2: CƠ SỞ LÝ THUYẾT.............................................................................. 4
2.1. MÔ TẢ QUÁ TRÌNH HOẠT ĐỘNG..................................................................................... 4
2.2. TỔNG QUAN LÝ THUYẾT.................................................................................................. 4
2.2.1 Tổng quan ARM.............................................................................................................. 4
2.2.2 Giới thiệu về ARM-M7- STM32F746G-DISCOVERY ................................................. 6
2.2.3 Module giải mã âm thanh VS1003-v2............................................................................. 8
2.2.4 Tay cầm game Dualshock 2 .......................................................................................... 10
2.2.5 Chuẩn truyền nhận SPI.................................................................................................. 13
2.2.6 Chuẩn giao tiếp SDMMC.............................................................................................. 15
Chương 3: TÍNH TOÁN_THIẾT KẾ ..................................................................... 18
3.1. GIỚI THIỆU.......................................................................................................................... 18
3.2. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG .......................................................................... 18
3.3.1 Thiết kế sơ đồ khối............................................................................................................ 18
3.3.2 Tính toán và thiết kế mạch ................................................................................................ 19
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xi
a. Khối điều khiển, cảm ứng và hiển thị.................................................................................... 19
b. Khối tay cầm ......................................................................................................................... 23
c. Khối âm thanh ....................................................................................................................... 24
d. Khối nguồn............................................................................................................................ 26
3.3.3 Sơ đồ nguyên lý toàn mạch ............................................................................................... 27
Chương 4: THI CÔNG HỆ THỐNG ...................................................................... 28
4.1. GIỚI THIỆU.......................................................................................................................... 28
4.2. THI CÔNG HỆ THỐNG....................................................................................................... 28
4.2.1 Thi công bo mạch.......................................................................................................... 28
4.2.2 Lắp ráp, hàn linh kiện và kiểm tra................................................................................. 30
4.2.3 Đóng gói sản phẩm........................................................................................................ 31
4.3. LẬP TRÌNH HỆ THỐNG..................................................................................................... 31
4.3.1 Lưu đồ giải thuật ........................................................................................................... 31
a. Game Cờ Caro....................................................................................................................... 33
b. Game Ball Bing Bong ........................................................................................................... 35
c. Game Flappy Bird:................................................................................................................ 39
d. Game Stick Hero:.................................................................................................................. 42
e. Game Ai Là Triệu Phú: ......................................................................................................... 46
f. Game Vòng Quay Sát Phạt:................................................................................................... 47
g. Game Pika Pika: .................................................................................................................... 50
4.3.2 Phần mềm lập trình cho vi điều khiển........................................................................... 52
4.4. TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC:........................................................... 55
Chương 5: KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ ................................................. 61
5.1. KẾT QUẢ ............................................................................................................................. 61
5.2. ĐÁNH GIÁ KẾT QUẢ, NHẬN XÉT VÀ ĐÁNH GIÁ ....................................................... 62
Chương 6: KẾT LUẬN_HƯỚNG PHÁT TRIỂN.................................................. 66
6.1. KẾT LUẬN........................................................................................................................... 66
6.2. HƯỚNG PHÁT TRIỂN ........................................................................................................ 66
TÀI LIỆU THAM KHẢO ............................................................................................ 67
PHỤ LỤC...................................................................................................................... 68
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xii
DANH SÁCH HÌNH
Hình 1-1. Một số game nổi tiếng. ................................................................................... 1
Hình 2-1. Kiến trúc của vi xử lí ARM Cotex-M7. ......................................................... 6
Hình 2-2. KIT STM32F746 Discovery........................................................................... 7
Hình 2-3. Sơ đồ cấu trúc và sơ đồ chân VS1003............................................................ 8
Hình 2-4. Tay cầm PS2................................................................................................. 10
Hình 2-5. Màu và sơ đồ dây đầu cắm PS2.................................................................... 12
Hình 2-6. Sơ đồ kết nối chuẩn SPI Master-Slave......................................................... 14
Hình 2-7 Quá trình truyền nhận SPI. ............................................................................ 15
Hình 2-8. Quá trình đọc dữ hiệu................................................................................... 16
Hình 2-9. Quá trình ghi dữ liệu..................................................................................... 16
Hình 2-10. Sơ đồ khối SDMMC................................................................................... 17
Hình 3-1 Sơ đồ khối hệ thống....................................................................................... 18
Hình 3-2. Mặt trên của KIT. ......................................................................................... 20
Hình 3-3. Sơ đồ bố trí Arduino Connectors, SD card adapter...................................... 22
Hình 3-4. Tay cầm PS2................................................................................................. 23
Hình 3-5. Sơ đồ khối nối STM32F746 với PS2. .......................................................... 24
Hình 3-6. Module VS1003............................................................................................ 25
Hình 3-7. Sơ đồ kết nối STM32F746 với VS1003....................................................... 26
Hình 3-8. Sơ đồ kết nối nguồn ngoài cho STM32F746................................................ 27
Hình 3-9. Sơ đồ nguyên lý chung của hệ thống............................................................ 27
Hình 4-1. Sơ đồ PCB mạch kết nối STM với PS2 và VS1003..................................... 28
Hình 4-2. Sơ đồ PCB 3D mạch kết nối STM với PS2 và VS1003............................... 29
Hình 4-3. Sơ đồ bố trí linh kiện mạch kết nối STM với PS2 và VS1003..................... 29
Hình 4-4. Khung của mạch........................................................................................... 31
Hình 4-5. Lưu đồ chương trình chính........................................................................... 32
Hình 4-6. Lưu đồ đọc/phát nhạc. .................................................................................. 32
Hình 4-7. Lưu đồ chính game Cờ Caro. ....................................................................... 33
Hình 4-8. Lưu đồ xử lý nước đi.................................................................................... 34
Hình 4-9. Lưu đồ vẽ nước đi......................................................................................... 34
Hình 4-10. Lưu đồ chính của game. ............................................................................. 35
Hình 4-11. Lưu đồ chọn chế độ chơi. ........................................................................... 36
Hình 4-12. Lưu đồ xử lý 1 người chơi......................................................................... 37
Hình 4-13. Lưu đồ xử lý 2 người chơi.......................................................................... 38
Hình 4-14. Lưu đồ xử lý thua. ...................................................................................... 39
Hình 4-15. Lưu đồ chính game Flappy Bird................................................................. 40
Hình 4-16. Lưu đồ di chuyển trụ. ................................................................................. 41
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xiii
Hình 4-17. Kiểm tra thua. ............................................................................................. 41
Hình 4-18. Lưu đồ di chuyển Bird lên.......................................................................... 42
Hình 4-19. Lưu đồ chính game Stick Hero................................................................... 43
Hình 4-20. Lưu đồ bước 1............................................................................................. 43
Hình 4-21. Lưu đồ bước 2............................................................................................. 44
Hình 4-22. Lưu đồ bước 3............................................................................................. 44
Hình 4-23. Lưu đồ bước 4............................................................................................. 45
Hình 4-24. Lưu đồ bước 5............................................................................................. 45
Hình 4-25. Lưu đồ game Ai là triệu phú....................................................................... 46
Hình 4-26. Lưu đồ chính Game Vòng Quay Sát Phạt. ................................................. 47
Hình 4-27. Lưu đồ xử lý góc và tốc độ quay................................................................ 48
Hình 4-28. Lưu đồ thông báo kết quả........................................................................... 49
Hình 4-29. Lưu đồ chính game Pika Pika..................................................................... 50
Hình 4-30. Lưu đồ xử lý pikachu nhảy lên................................................................... 51
Hình 4-31.Lưu đồ di chuyển CNV. .............................................................................. 51
Hình 4-32. Lưu đồ kiểm tra pika có đụng CNV hay không. ........................................ 51
Hình 4-33. Giao diện phần mềm Keil C. ...................................................................... 52
Hình 4-34.Giao diện phần mềm STM32CubeMX. ...................................................... 53
Hình 4-35. Thao tác chọn game.................................................................................... 57
Hình 4-36. Thao tác Game Cờ Caro. ............................................................................ 58
Hình 4-37. Thao tác chọn chế độ Game BBB. ............................................................. 58
Hình 4-38. Nút nhấn điều khiển game BBB................................................................. 59
Hình 4-39. Thao tác game Flappy Bird. ....................................................................... 59
Hình 4-40. Thao tác game Stick Hero. ......................................................................... 60
Hình 5-1. Kết quả phần cứng........................................................................................ 61
Hình 5-2. Giao diện chọn Game. .................................................................................. 62
Hình 5-3. Game Cờ Caro.............................................................................................. 62
Hình 5-4. Chọn chế độ Game BBB. ............................................................................. 62
Hình 5-5. Game Ball Bing Bong. ................................................................................. 63
Hình 5-6. Game Flappy Bird. ....................................................................................... 63
Hình 5-7. Game Stick Hero. ......................................................................................... 64
Hình 5-8. Game Vòng Quay Sát Phạt........................................................................... 64
Hình 5-9. Game Ai Là Triệu Phú. ................................................................................ 65
Hình 5-10. Game Pika Pika. ......................................................................................... 65
DANH SÁCH BẢNG
Bảng 2.1. Mô tả sơ đồ chức năng các chân của VS1003................................................ 9
Bảng 2.2. Mô tả sơ đồ chức năng các chân của PS2. ................................................... 10
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xiv
Bảng 2.3. Bảng giá trị các nút nhấn PS2 trả về. ........................................................... 13
Bảng 2.4 :Chức năng các chân của SDMMC. .............................................................. 17
Bảng 3.1: Arduino Connectors. .................................................................................... 20
Bảng 3.2: Mô tả chân kết nối của PS2 với Arduino Connectors.................................. 23
Bảng 3.3 :Mô tả chân kết nối của VS1003 với Arduino Connectors. .......................... 25
Bảng 4.1: Bảng linh kiện sử dụng................................................................................. 29
Bảng 4.2: Các bước lắp ráp linh kiện. .......................................................................... 30
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xv
TÓM TẮT
Sau quá trình tìm hiểu, nghiên cứu lĩnh vực giải trí trong mảng game di động, tôi
nhận thấy nhu cầu về nguồn game hiện tại là rất lớn cũng như nguồn nhân lực cho mảng
ngành này. Từ đó tôi quyết định chọn đề tài này đầu tiên là để thiết kế ra một số game
đáp ứng nhu cầu giải trí của người chơi, sau đó là để tự hoàn thiện khả năng lập trình
của bản thân.
Đề tài này thực hiện lập trình lại những game mà đã có các tác giả viết trước. Ở
đây tôi chỉ mô phỏng lại sao cho giống nhất có thể. Kết hợp thêm 1 số phần cứng rời để
tạo sự khác biệt.
Sau quá trình nghiên cứu thì tôi đã thành công trong việc mô phỏng lại 7 game
mini thao tác đơn giản, đạt độ chính xác khá cao.
Các game được thao tác trên màn hình kết hợp với tay cầm game có phát thêm
nhạc thể hiện khá tốt nội dung game.
TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 1
Chương 1: TỔNG QUAN
1.1. ĐẶT VẤN ĐỀ
Ngày nay, nhu cầu giải trí của con người bằng các thiết bị tiện lợi ngày càng
cao. Trong đó, thiết bị chơi game phát triển một cách nhanh chóng chỉ trong những
năm gần đây đi theo đó là số lượng game được giới thiệu cũng tăng không ngừng.
Nổi bật có thể kể đến những loại game mini chạy trên các thiết bị di động như điện
thoại, ipad, máy chơi game mini...
Với nhu cầu cao như vậy thì ngành nghề thiết kế game đang là một trong số
nghề đang có nhu cầu nhân lực lớn, đem lại lợi nhuận khổng lồ. Có thể kể đến 1
số công ty thiết kế game lớn như Nintendo, Sony, Capcom... với một số tựa game
nổi tiếng như Super Mario, Resident Evil, Contra...Ngoài ra còn có vô số những
tựa game của những cá nhân thiết kế độc lập.
Hình 1-1. Một số game nổi tiếng.
Với ý tưởng muốn tiếp cận một lĩnh vực hay, còn khá mới đối với sinh viên
chuyên ngành điện tử công nghiệp thì trong đề tài này tôi sẽ thực hiện thiết kế mô
phỏng lại một số game mini được đại đa số người biết tới như Flappy Bird, cờ caro
nhằm đáp ứng nhu cầu giải trí, phát triển tư duy cho người chơi game.
1.2. MỤC TIÊU
- Thiết kế và thi công mô hình máy chơi game mini.
- Thiết kế Game mini chạy trên mô hình.
- Sử dụng cảm ứng và tay cầm Dual Shock để điều khiển.
- Phát được nhạc trong chơi lúc với từng trò.
- Game đáp ứng nhu cầu giải trí cơ bản, phát triển trí tuệ cho người chơi.
TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 2
1.3. NỘI DUNG NGHIÊN CỨU
 NỘI DUNG 1: Nghiên cứu tài liệu về module VS1003, tay cầm PS2,
KIT STM32F746 DISCOVERY.
 NỘI DUNG 2: Dựa trên các dữ liệu thu thập được, lựa chọn giải pháp
thiết kế và thi công mô hình kết nối các module với KIT điều khiển.
 NỘI DUNG 3: Thiết kế lưu đồ giải thuật và viết chương trình điều khiển
cho vi điều khiển, thiết kế giao diện màn hình chơi game.
 NỘI DUNG 4: Thử nghiệm và điều chỉnh phần mềm cũng như phần cứng
để mô hình được tối ưu, sử dụng dễ dàng. Đánh giá các thông số của mô
hình so với thông số thực tế.
 NỘI DUNG 5: Viết báo cáo thực hiện.
1.4. GIỚI HẠN
Trong thời gian thực hiện đề tài là hơn 3 tháng, tôi tập trung thực hiện các
công việc bên dưới:
- Thiết kế, thi công mô hình máy chơi game mini.
- Sử dụng module âm thanh VS1003.
- Sử dụng tay cầm Dual Shock Play Station 2(PS2).
- Sử dụng vi điều khiển ARM STM32F746.
- Sử dụng màn hình LCD TFT 4.3-inch hiển thị và thao tác.
Trong đề tài này sẽ thiết kế 7 game chạy trên nền vi điều khiển ARM STM32:
 BALL BING BONG.
 Flappy Bird.
 CỜ CARO.
 STICK HERO.
 AI LÀ TRIỆU PHÚ
 Vòng Quay Sát Phạt
 Pika Pika.
TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 3
1.5. BỐ CỤC
 Chương 1: Tổng quan
Trình bày tổng quan về đề tài, tình hình thực tế, tính cần thiết của đề tài.
 Chương 2: Cơ sở lý thuyết.
Chương này trình bày lý thuyết liên quan đến các phần cứng, các chuẩn
truyền nhận.
 Chương 3: Tính toán và thiết kế.
Chương này tính toán các thông số mạch để lựa chọn các linh kiện phù hợp
với hệ thống.
 Chương 4: Thi công hệ thống.
Trình bày quá trình thi công mạch kết nối giữa các phần cứng với nhau.
Thiết kế lưu đồ cho từng nội dung code sẽ làm.
Viết code dựa theo lưu đồ đã thiết kế trên.
 Chương 5: Kết quả, nhận xét và đánh giá.
Trình bày kết quả thu được của toàn bộ hệ thống, nêu rõ những mặt đã làm
được và chưa làm được so với mục tiêu ban đầu cũng như ưu điểm, hạn chế. Đánh
giá tính ổn định của hệ thống.
 Chương 6: Kết luận và hướng phát triển.
Đưa ra kết luận chung cho hệ thống. So sánh với các hệ thống khác ngoài
thực tế để định được hướng phát triển của đề tài.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 4
Chương 2: CƠ SỞ LÝ THUYẾT
2.1. MÔ TẢ QUÁ TRÌNH HOẠT ĐỘNG
Khi cấp nguồn hệ thống thì màn hình sẽ hiện lên tên các tựa game. Người
chơi chọn game bằng cách nhấn nút trên tay cầm Dual Shock. Vào từng game tùy
vào hướng dẫn sử dụng sẽ có các thao tác riêng bằng PS2 hoặc cảm ứng. Trong
quá trình hoạt động sẽ có phát nhạc phù hợp với từng game.
2.2. TỔNG QUAN LÝ THUYẾT
2.2.1 Tổng quan ARM
Cấu trúc ARM (viết tắt từ tên gốc là Acorn RISC Machine) là một loại cấu
trúc vi xử lý 32 bit kiểu RISC (thuộc kiến trúc Hardvard, có tập lệnh rút gọn) được
sử dụng rộng rãi trong các thiết kế nhúng. Do có đặc điểm tiết kiệm năng lượng,
các bộ CPU ARM chiếm ưu thế trong các sản phẩm điện tử di động mà với các
sản phẩm này việc tiêu tán công suất thấp là một mục tiêu thiết kế quan trọng hàng
đầu.
Việc thiết kế ARM được bắt đầu từ năm 1983 trong một dự án phát triển của
công ty máy tính Acorn. Nhóm thiết kế hoàn thành việc phát triển mẫu gọi là
ARM1 vào năm 1985, và vào năm sau, nhóm hoàn thành sản phẩm “thực’’ gọi là
ARM2 với thiết kế đơn giản chỉ gồm 30.000 transistor. ARM2 có tuyến dữ liệu 32
bit, không gian địa chỉ 26 bit tức cho phép quản lý đến 64 Mbyte địa chỉ và 16
thanh ghi 32 bit. Thế hệ sau, ARM3, được tạo ra với 4KB cache và có chức năng
được cải thiện tốt hơn nữa.
Trải qua nhiều thế hệ nhưng lõi ARM gần như không thay đổi kích thước.
ARM2 có 30.000 transistors trong khi ARM6 chỉ tăng lên đến 35.000. Ý tưởng
của nhà sản xuất lõi ARM là sao cho người sử dụng có thể ghép lõi ARM với một
số bộ phận tùy chọn nào đó để tạo ra một CPU hoàn chỉnh, một loại CPU mà có
thể tạo ra trên những nhà máy sản xuất bán dẫn cũ và vẫn tiếp tục tạo ra được sản
phẩm với nhiều tính năng mà giá thành vẫn thấp.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 5
Ngày nay ARM được ứng dụng rộng rãi trên mọi lĩnh vực của đời sống:
Robot, máy tính, điện thoại, xe hơi, máy giặt…
ARM Cortex được chia làm 3 dòng:
 Cortex-A: Bộ xử lý dành cho hệ điều hành và các ứng dụng phức tạp.
Hỗ trợ tập lệnh ARM, thumb, và thumb-2.
 Cortex-R: Bộ xử lý dành cho hệ thống đòi hỏi khắc khe về đáp ứng thời
gian thực. Hỗ trợ tập lệnh ARM, thumb và thumb-2.
 Cortex-M: Bộ xử lý dành cho dòng vi điều khiển, được thiết kế để tối
ưu về giá thành. Hỗ trợ tập lệnh Thumb-2.
Giá trị số nằm cuối tên của 1 dòng ARM cho biết về mức độ hiệu suất tương
đối của dòng đó. Theo đó dòng ARM mang số 0 sẽ có hiệu suất thấp nhất.
Tập đoàn ST Microelectronic đã cho ra mắt dòng STM32, vi điều khiển đầu
tiên dựa trên nền lõi ARM Cortex-M3 thế hệ mới do hãng ARM thiết kế, lõi ARM
Cortex-M3 là sự cải tiến của lõi ARMv7-M 32bit truyền thống, từng mang lại sự
thành công vang dội cho công ty ARM. Dòng STM32 thiết lập các tiêu chuẩn mới
về hiệu suất, chi phí, cũng như khả năng đáp ứng các ứng dụng tiêu thụ năng lượng
thấp và tính điều khiển thời gian thực khắt khe.
Chip ARM Cortex-M7 là một vi điều khiển 32-bit cao cấp nhất trong series
Cortex-M của ARM cho đến hiện nay. Theo ARM, Cortex-M7 có DSP (Digital
Signal Processing: Xử lý tín hiệu số) cao gấp đôi so với Cortex-M4 do đó có thể
xử lý cùng lúc 2 tập lệnh, giúp cho M7 có thể hoạt động ở mức xung nhịp cao hơn.
Đây là dòng chip MCU 32-bit giúp tăng tốc thông dịch dữ liệu từ các cảm biến
thành thông tin số. Nó tăng gấp đôi hiệu năng tính toán và DSP trong khi giảm
thiểu mức tiêu thụ điện năng nhờ vào công nghệ sản xuất 28nm. Chip M7 hỗ trợ
các thiết bị nhúng điều khiển giọng nói hoặc giao diện rich OS và còn được sử
dụng trong các smartphone hoặc trên xe hơi để điều khiển các chức năng màn hình
chạm và âm thanh phức tạp hơn.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 6
Hình 2-1. Kiến trúc của vi xử lí ARM Cotex-M7.
2.2.2 Giới thiệu về ARM-M7- STM32F746G-DISCOVERY
Dòng STM32 tiêu thụ năng lượng cực thấp trong khi đó hiệu suất cực cao và
việc lập trình cũng rất dễ dàng. Với sự đồ sộ về ngoại vi (GPIO, I2C, SPI, ADC,
USB, Ethernet, CAN....). ST cung cấp cho chúng ta các thư viện trực tiếp cho mỗi
dòng ARM (gọi là CMSIS - Cortex Microcontroller Software Interface Standard).
KIT Discovery STM32F7 sử dụng dòng ARM-M7 với vi điều khiển chính
STM32F746NGHx cho phép người dùng phát triển mở rộng các ứng dụng về âm
thanh, đồ họa, cảm biến và các tính năng kết nối tốc độ cao với các ngoại vi khác.
Đây là 1 KIT thực tế cung cấp rất nhiều ngoại vi cũng như có sẵn các jack
cắm để kết nối với các module khác. Các tính năng có sẵn trên KIT như:
 Vi điều khiển STM32F746NGH6 có 1MB bộ nhớ Flash và 340KB
RAM với chuẩn đóng gói BGA216.
 On-board ST-LINK/V2-1 hỗ trợ khả năng đếm lại USB
 Các chức năng USB: cổng COM ảo, lưu trữ khối, cổng debug.
 Màn hình TFT-LCD 4.3-inch 480x272 màu với cảm ứng điện dung.
 Ngõ vào âm thanh line in và line out.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 7
 Ngõ ra loa stereo.
 2 ST MEMS microphones.
 Đầu nối SPDIF RCA.
 2 nút nhấn (user and reset).
 128-Mbit Quad-SPI Flash memory.
 128-Mbit SDRAM.
 Có khe cắm microSD card.
 Đầu nối RF-EEPROM.
 USB OTG HS với đầu cắm Micro-AB.
 USB OTG FS với đầu cắm Micro-AB.
 Đầu nối Ethernet IEEE-802.3-2002.
 5 nguồn cấp nguồn:
o ST LINK/V2-1.
o USB FS.
o USB HS.
o VIN từ Arduino.
o Đầu nối 5v ngoại.
 Nguồn cấp cho các ứng dụng bên ngoài: 3.3 V or 5 V.
 Đầu nối Arduino Uno V3.
 Phần mềm miễn phí với các ví dụ đa dạng.
Hình 2-2. KIT STM32F746 Discovery.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 8
2.2.3 Module giải mã âm thanh VS1003-v2
IC VS1003 là IC chuyên dụng giải mã âm thanh của hãng VLSI Solution với
các tập tin âm thanh định dạng MP3/MIDI/WMA/WAV. Nó các đặc tính:
 Giải mã MPEG 1 & 2 audio lớp III (CBR +VBR +ABR); WMA
4.0/4.1/7/8/9 all profiles (5-384kbit/s); WAV (PCM + IMA ADPCM);
General MIDI / SP-MIDI files.
 Mã hóa IMA ADPCM từ microphone hoặc ngõ vào.
 Hỗ trợ truyền trực tuyến cho MP3 và WAV.
 Điều khiển Bass và treble
 Hoạt động với tần số xung lock 12.13Mhz.
 Có bộ nhân tần số nội.
 Hoạt động chế độ tiết kiệm năng lượng.
 Có khả năng sử dụng với tai nghe với bộ tải 30Ω.
 Chia điện áp hoạt động cho tín hiệu analog, tín hiệu số và I/O.
 Có bộ nhớ RAM 5.5Kb dùng cho code/data.
 Giao diện điều khiển và dữ liệu nối tiếp.
 Có thẻ được dùng như 1 thiết bị slave.
 Có chế độ boot flash SPI cho các ứng dụng đặc biệt.
 Có giao tiếp UART cho chế độ debugging.
 Các chức năng mới được thêm vào phần mềm với 4 chân GPIO.
Hình 2-3. Sơ đồ cấu trúc và sơ đồ chân VS1003.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 9
Module giải mã âm thanh VS1003 có IC chính VS1003, 2 jack audio 3.5mm,
1 microphone, IC ổn áp.... Chuyên sử dụng cho việc giải mã các loại âm thanh định
dạng MP3/WMA/MIDI/WAV. Khi giao tiếp với các MCU thông qua chuẩn SPI
nó đóng vai trò là 1 slave. Module bao gồm 9 chân bao gồm điều khiển, dữ liệu và
cấp nguồn: 5V, GND, XRST, MISO, MOSI, SCLK, DREQ, XCS, XDCS. Chức
năng của từng chân:
Bảng 2.1. Mô tả sơ đồ chức năng các chân của VS1003.
STT TÊN CHỨC NĂNG
1 VCC Nguồn cung cấp dương
2 GND Nguồn cung cấp âm
3 XRST Chân tín hiệu yêu cầu Reset
4 MISO Chân trả dữ liệu từ VS1003 về thiết bị master.
5 MOSI Chân gửi mã lệnh/dữ liệu từ master tới VS1003.
6 SCLK Chân tạo xung clock đồng bộ quá trình truyền nhận.
7 DREQ Chân yêu cầu ngắt của VS1003, chân này sẽ ở mức cao
khi sẵn sàng nhận dữ liệu từ master.
8 XCS Chân chip select mã lệnh.
9 XDCS Chân chip select dữ liệu.
Để gửi dữ liệu từ MCU đến VS1003 thông qua SPI thì đầu tiên cần xem xét
chân yêu cầu ngắt DREQ đã sẵn sàng chưa, nếu DREQ đang ở mức cao thì kéo
chân XDCS xuống mức thấp sau đó gửi 1 byte dữ liệu đến chân MOSI. Kết thúc
quá trình gửi sẽ kéo chân XCS và XDCS lên mức cao để sẵn sàng cho lần gửi tiếp
theo.
Trước khi bắt đầu quá trình hoạt động cần reset các giá trị trong các thanh
ghi của VS1003, quá trình này sẽ gửi các mã lệnh đến VS1003 để đặt lại các giá
trị. Để gửi mã lệnh thì trước khi truyền ta kéo chân XCS về mức thấp sau đó bắt
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 10
đầu truyền. Lưu ý VS1003 giao tiếp chuẩn SPI với chế độ MSB tức là truyền bit
có trọng số cao đi trước.
2.2.4 Tay cầm game Dualshock 2
Tay cầm game Dualshock 2 hay có tên gọi khác là tay cầm PS2, là một thiết
bị điều khiển đa chức năng được sản xuất bởi hãng SONY với mục đích ban đầu
là giao tiếp với hệ máy Play Station của chính hãng này sản xuất. So với tay cầm
PS1 với các phím điều hướng bao gồm lên, xuống, trái, phải, các phím chức năng
như X, O, Vuông, Tam giác, R1, R2, L1, L2, Select và Start thì PS2 được bổ sung
thêm 1 nút Analog, 2 Joytick đa hướng, R3, L3 và chế độ run.
Từ thế hệ PS1 đến hiện tại là PS4 đều sử dụng 1 chung loại đầu jack cắm với
9 đường dây cùng 1 chuẩn truyền SPI. Ta tìm hiểu màu và chức năng của từng
dây:
Bảng 2.2. Mô tả sơ đồ chức năng các chân của PS2.
STT TÊN CHỨC NĂNG MÀU
1 Data Dây này dùng để nhận dữ
liệu từ PS2 gửi về. Đây là 1 ngõ ra
cực thu để hở, vì vậy yêu cầu phải
có 1 điện trở kéo lên nguồn trong
lúc hoạt động.
Nâu
Hình 2-4. Tay cầm PS2.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 11
2 Command Dùng để gửi mã lệnh từ thiết
bị Master đến PS2.
Cam
3 Vibration
Motors Power
Dây nguồn dùng cho motor
chế độ run của PS2. Sử dụng
nguồn từ 6-9v.
Xám
4 Ground Cấp mass. Đen
5 Vcc Cấp nguồn dương cho PS2.
PS2 hoạt động ở điện áp 3v3 vì thế
đối với các thiết bị nguồn 5v cần
giảm áp xuống 3v3 để tránh hư
hỏng tay cầm.
Đỏ
6 Attention Chip select hoặc slave select,
chân này phải được kéo xuống
mass trước khi nhận/gửi dữ liệu.
Khi hoàn thành 1 quá tình nhận/gửi
chân này phải được kéo lên VCC.
Vàng
7 Clock Chân cấp xung clock từ
Master tới Slave, đồng bộ quá trình
truyền nhận. Tay cầm ps2 hoạt
động với tần số clock từ 100k-
500kHz.
Xanh
dương
8 Unknow - Trắng
9 Acknowledge Dây này sẽ kéo từ mức 1 về 0
trong 12us sau mỗi byte truyền
xong.
Xanh lá
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 12
Hình 2-5. Màu và sơ đồ dây đầu cắm PS2.
Để giao tiếp thành công với PS2 thì cần tối thiếu là 6 dây (Clock, Data,
Comman, Attention, Vcc, Gnd). Khi giao tiếp với các thiết bị thì tay cầm PS2 đóng
vai trò slave, dữ liệu sẽ truyền theo kiểu LSB tức là bit có trọng số thấp được truyền
trước.
Giao tiếp được với tay cầm PS2 thông qua chuẩn SPI, ta phải thực gửi các
mã lệnh theo đúng trình từ thì tay cầm mới trả dữ liệu đúng về. Một gói dữ liệu
bao gồm 3 byte header và thêm 2 byte command bổ sung hoặc dữ liệu điều khiển.
Đầu tiên Master sẽ lần lượt gửi 3 byte Header đến PS2 tương ứng sẽ nhận về
3 byte từ Slave.
Byte đầu tiên là 0x01, dùng để khởi tạo quá trình truyền nhận. Slave sẽ trả
về 0xFF.
Byte thứ 2 là 0x42, lệnh thăm dò chính, phụ thuộc vào cấu hình điều khiển.
Slave phản hồi 0x41.
Byte thứ 3 luôn là 0x00, dùng để báo hiệu bắt đầu quá trình đọc dữ liệu. Slave
phản hồi 0x5A.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 13
Byte thứ 4 và 5 là 0x00, 2 byte này sau khi gửi lên thì slave sẽ gửi trả về dữ
liệu trạng thái các nút nhấn. Byte thứ 4 là xác định 4 nút điều hướng (lên, xuống,
trái, phải, L3, R3), byte thứ 5 là các nút chức năng. Nếu như không có nút được
nhấn thì dữ liệu trả về sẽ là 0xFF. Nếu như có nhấn nút thì bit tương ứng trong
byte đó sẽ = 0.
Vị trí giá trị các nút nhấn trong byte 4, 5 được thể hiện ở bảng dưới:
Bảng 2.3. Bảng giá trị các nút nhấn PS2 trả về.
Butt on Select L3 R3 Start Start Right Down Left
Byte.bit 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7
Button L2 R2 L1 R1 O X
Byte.bit 5.0 5.1 5.2 5.3 5.54 5.5 5.6 5.7
2.2.5 Chuẩn truyền nhận SPI
SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối tiếp tốc độ cao do
hãng Motorola đề xuất. Đây là kiểu truyền thông Master-Slave, trong đó 1 chip
Master điều phối quá trình truyền thông và các chip Slaves được điều khiển bởi
Master vì thế truyền thông chỉ xảy ra giữa Master và Slave. SPI là một cách truyền
song công nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra
đồng thời. SPI đôi khi được gọi là chuẩn truyền thông “4 dây” vì có 4 đường dây
trong chuẩn này đó là SCK (Serial Clock), MISO (Master Input Slave Output),
MOSI (Master Output Slave Input) và SS (Slave Select).
Trong đó SCK: Xung giữ nhịp cho giao tiếp SPI, vì SPI là chuẩn truyền đồng
bộ nên cần 1 đường giữ nhịp, mỗi nhịp trên SCK báo hiệu 1 bit dữ liệu đến hoặc
đi. Đây là điểm khác biệt với truyền thông không đồng bộ của chuẩn UART. Sự
tồn tại của SCK giúp quá trình truyền ít bị lỗi và vì thế tốc độ truyền của SPI có
thể đạt rất cao. Xung nhịp chỉ được tạo ra bởi Master.
MISO: Nếu là chip Master thì đây là đường Input còn nếu là chip Slave thì
là Output. MISO của Master và Slave được nối trực tiếp với nhau.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 14
MOSI: Nếu là chip Master thì đây là đường Output còn nếu là chip Slave thì
là Input. MOSI của Master và Slave được nối trực tiếp với nhau.
SS: SS là đường chọn Slave cần giao tiếp, trên các chip Slave đường SS sẽ ở
mức cao khi không làm việc. Nếu chip Master kéo đường SS của một Slave nào
đó xuống mức thấp thì việc giao tiếp sẽ xảy ra giữa Master và Slave đó. Chỉ có 1
đường SS trên mỗi Slave nhưng có thể có nhiều đường điều khiển trên Master, tùy
vào thiết kế của người dùng.
Hình dưới thể hiện một kết nối SPI giữa một chip Master và 3 chip Slave
thông qua 4 đường.
Hoạt động: Mỗi chip Slave hay Master có một thanh ghi dữ liệu 8 bit. Cứ
mỗi xung nhịp do Master tạo ra trên đường giữ nhịp SCK, một bit trong thanh ghi
dữ liệu của Master được truyền qua Slave trên đường MOSI, đồng thời một bit
trong thanh ghi dữ liệu của Slave cũng được truyền qua Master trên đường MISO.
Do 2 gói dữ liệu được truyền qua lại đồng thời nên được gọi là truyền “song công”.
Hình dưới mô tả quá trình truyền nhận 1 gói dữ liệu của chuẩn SPI.
Hình 2-6. Sơ đồ kết nối chuẩn SPI Master-Slave
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 15
Thanh ghi dịch 8 bit
MSB MASTER LSB
Thanh ghi dịch 8 bit
MSB SLAVE LSB
BỘ TẠO XUNG
CLOCK SPI
MISO
MOSI
SCK
__
SS
Cho phép dịch
Hình 2-7 Quá trình truyền nhận SPI.
Ta thấy bit MSB của Master sẽ được truyền đi đầu tiên sau đó dữ liệu sẽ được
dịch trái 1 bit để đẩy bit dữ liệu kế tiếp làm MSB. Đồng thời vị trí bit LSB sẽ nhận
bit dữ liệu từ Slave truyền tới. Quá trình truyền nhận của Slave tương tự Master.
Sau mỗi 8 xung nhịp trên SCK thì quá trình truyền 8 bit hoàn thành ta đọc dữ liệu
từ 2 thanh ghi này.
2.2.6 Chuẩn giao tiếp SDMMC
SDMMC là chuẩn giao tiếp giữa bus APB2 với các loại thẻ nhớ như MMCs,
SD memory, SDIO cards. Các đặc tính cơ bản của chuẩn SDMMD:
 Đối với thẻ MMCs: hỗ trợ 3 chế độ databus: 1 bit, 4 bit và 8 bit.
 Đối với thẻ SD và SDIO: hỗ trợ 2 chế độ databus: 1 bit và 4 bit.
 Truyền data lên tới 50Mhz đối với chế độ 8 bit của MMC.
 Ngõ ra Data và comman cho phép tín hiệu điều khiển các quá trình 2
chiều bên ngoài.
 SDMMC không tương thích với chuẩn SPI.
Tiếp theo ta tìm hiểu quá trình hoạt động để đọc 1 block data diễn ra như thế
nào:
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 16
Hình 2-8. Quá trình đọc dữ liệu.
Để bắt đầu quá trình đọc thì Host sẽ gửi 1 frame lệnh yêu cầu đọc đến card
sau đó card sẽ gửi tín hiệu phản hồi, quá trình này diễn ra trên đường
SDMMC_CMD. Sau đó Card sẽ gửi data cho Host thông qua SDMMC_D, kết
thúc frame data sẽ kèm thêm 1 mã kiểm tra lỗi CRC. Khi muốn dừng đọc thì Host
lại gửi 1 lệnh yêu cầu dừng và Card sau khi gửi tín hiệu phản hồi sẽ kết thúc quá
trình đọc.
Quá trình ghi dữ liệu từ Host đến Card diễn ra tương tự với data đi theo chiều
từ Host đến Card:
SDMMC bao gồm 2 phần:
 Nguồn SDMMC bao gồm đơn vị tạo xung clock, truyền data và
lệnh.
Hình 2-9. Quá trình ghi dữ liệu.
CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 17
 Giao diện APB2 truy cập tới thanh ghi của nguồn SDMMC, bộ tạo
ngắt và tín hiệu yêu cầu DMA.
Hình 2-10. Sơ đồ khối SDMMC.
SDMMC_D[7:0] là các chân truyền data. SDMMC_CMD có 2 chế độ là
Open-drain và Push_pull. DSMMC_CK là chân giữ xung clock. 1 bit được truyền
trên cả 2 dây command và data trong mỗi chu kỳ xung clock.
Bảng 2.4 :Chức năng các chân của SDMMC.
Chân Hướng Mô tả
SDMMC_CK Ngõ ra Chân xung clock cho MMC/SD/SDIO. Xung
clock được truyền từ host tới card.
SDMMC_CMD Vào/Ra Chân mã lệnh cho MMC/SD/SDIO.
SDMMC[7:0] Vào/Ra Chân dữ liệu cho MMC/SD/SDIO.
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 18
Chương 3: TÍNH TOÁN_THIẾT KẾ
3.1. GIỚI THIỆU
Yêu cầu của đề tài là máy chơi game mini hiển thị trên màn hình có cảm ứng
để thao tác đồng thời có thêm tay cầm PS2 để tạo tín hiệu điều khiển. Có bộ phận
phát âm thanh tăng tính hấp dẫn cho trò chơi.
Chương này sẽ tập trung phân tích, lựa chọn linh kiện cho phù hợp với yêu
cầu của đề tài. Trình bày sơ đồ kết nối, mạch nguyên lý của các module lại với
nhau.
3.2. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG
3.3.1 Thiết kế sơ đồ khối
Với những yêu cầu của hệ thống, tôi thiết kế sơ đồ khối tổng quát cho hệ
thống như sau:
KHỐI
ĐIỀU
KHIỂN
KHỐI
NÚT
NHẤN
KHỐI
CẢM
ỨNG
KHỐI
HIỂN
THỊ
KHỐI NGUỒN
KHỐI
ÂM
THANH
Hình 3-1 Sơ đồ khối hệ thống.
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 19
Trong sơ đồ bao gồm các khối:
 Khối nguồn: Cung cấp nguồn hoạt động cho các phần cứng trong hệ
thống.
 Khối hiển thị: Màn hình hiển thị giao diện Game.
 Khối âm thanh: Nhận lệnh và dữ liệu từ khối điều khiển phát tín hiệu
âm thanh ra loa.
 Khối cảm ứng: Đọc trạng thái nhấn/thả, trả về tọa độ trên màn hình.
 Khối tay cầm: Các nút nhấn điều khiển và chức năng.
 Khối điều khiển: Điều khiển các quá trình giao tiếp, truyền nhận giữa
các module. Nhận tín hiệu điều khiển từ tay cầm, đọc dữ liệu từ thẻ nhớ,
xuất hình ảnh ra khối hiển thị, xuất tín hiệu âm thanh.
3.3.2 Tính toán và thiết kế mạch
a. Khối điều khiển, cảm ứng và hiển thị
Khối hiển thị: Yêu cầu là màn hình LCD kích thướt từ 4-5inch để phù hợp
với các game mini, hiện đa màu sắc giúp trò chơi thêm bắt mắt.
Khối cảm ứng: Phải là một màn cảm ứng dán chồng lên màn hình LCD để
người chơi có thể tác động trực tiếp lên màn hình khi sử dụng.
Khối điều khiển chức năng chính: xử lý dữ liệu nhận từ tay cầm và cảm ứng
đồng thời xuất dữ liệu ra màn hình hiển thị và module giải mã âm thanh.
Để thực hiện những yêu cầu trên thì cần một KIT với vi điều khiển hoạt động
tốc độ cao để xử lý hình ảnh với tần số cao được mượt, ít hiện tượng giật. Có các
chuẩn giao tiếp truyền thông để giao tiếp với các module ngoại vi, có kết nối sẵn
với màn hình TFT-LCD hoặc có ra chân để kết nối với LCD rời. Đáp ứng được
như vậy thì có các loại KIT của dòng vi điều khiển STM32, FRKL46Z... qua quá
trình tìm hiểu và đã có sử dụng từ trước cũng như sự hướng dẫn của GVHD, tôi
quyết định chọn vi điều khiển STM32 mà cụ thể là KIT DISCOVERY
STM32F746NGHx với những thông số cơ bản như sau:
 Vi điều khiển STM32F746G với 1Mbytes bộ nhớ Flash và 340 Kbytes
RAM.
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 20
 Màn hình TFT LCD kích thướt 4.2” với độ phân giải 480x272 pixel
tích hợp cảm ứng điện dung.
 Arduino Connectors với ARDUINO UNO R3, các pin ra còn là các pin
của các chuẩn giao tiếp cơ bản như SPI, UART, I2C, nguồn.
 Hỗ trợ khe cắm thẻ thẻ SD card.
 Nguồn vào 5v có thể cấp từ nhiều nơi trên KIT.
 Hỗ trợ lập trình bằng phần mềm STM32Cube và gói thư viện của
STmicroelectronics.
Hình 3-2. Mặt trên của KIT.
Với Arduino Connectors[5] bao gồm có 4 cụm CN4, CN5, CN6, CN7 với
thông tin như sau:
Bảng 3.1: Arduino Connectors.
Kết nối trái Kết nối phải
Cụm
Số Tên
Chân
STM32
Chức
năng
Chức
năng
Chân
STM32
Tên Số
Cụm
CN
6
I2C1_SCL PB8 D15 10
CN
7
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 21
1 NC - - I2C1_SDA PB9 D14 9
2 IOREF -
3.3V
Ref
AVDD - AREF 8
3 RESET NRST RESET Ground - GND 7
4 +3V3 -
3.3V
input
/output
SPI2_SCK PI1 D13 6
5 +5V -
5V
output
SPI2_MISO PB14 D12 5
6 GND - Ground
TIM12_CH2,
SPI2_MOSI
PB15 D11 4
7 GND - Ground TIM1_CH1 PA8 D10 3
8 VIN -
Power
input
TIM2_CH1 PA15 D9 2
- - PI2 D8 1
-
CN5
- PI3 D7 8
CN4
1 A0 PA0 ADC3_IN0 TIM12_CH1 PH6 D6 7
2 A1 PF10 ADC3_IN8
TIM5_CH4,
SPI2_NSS
PI0 D5 6
3 A2 PF9 ADC3_IN7 - PG7 D4 5
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 22
4 A3 PF8 ADC3_IN6 TIM3_CH1 PB4 D3 4
5 A4
PF7
or
PB9
ADC3_IN5
(PF7)
or
I2C1_SDA
(PB9)
- PG6 D2 3
6 A5
PF6
or
PB8
ADC3_IN4
(PC0)
or
I2C1_SCL
(PB8)
USART6_TX PC6 D1 2
USART6_RX PC7 D0 1
Hình 3-3. Sơ đồ bố trí Arduino Connectors, SD card adapter.
Như vậy, với KIT này ta đã có khối điều khiển, khối hiển thị và khối cảm
ứng vừa tinh gọn vừa đáp ứng yếu tố thẩm mỹ, kỹ thuật đối với 1 máy chơi game.
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 23
b. Khối tay cầm
Ngoài việc người chơi có thể thao tác trên màn hình cảm ứng thì một số game
cần có tay cầm để dễ dàng thao tác khi sử dụng. Qua tìm hiểu thì tay cầm PS2,
Xbox... đáp ứng đầy đủ yêu cầu này nhưng Xbox giá khá cao nên tôi quyết định
chọn PS2: Giá thành hợp lí, dễ dàng giao tiếp, kết nối, cầm nắm dễ dàng thuận tiện
cho người sử dụng.
Hình 3-4. Tay cầm PS2.
Như đã trình bày ở Chương 2 thì tay cầm này giao tiếp theo chuẩn SPI vì vậy
ta kết nối tay cầm với KIT thông qua Arduino Connectors.
KIT STM32F746NGHx ra chân với 4 cụm mở rộng bao gồm CN4, CN5,
CN6, CN7.
Từ bảng 3.1 ta thấy để kết nối SPI cho PS2 ta sử dụng 3 chân SPI2_MOSI,
SPI2_MISO, SP2_SCK với thứ tự tên D11, D12, D13 của cụm CN7. Ngoài ra còn
có chân nguồn 3v3 và GND.
Bảng 3.2: Mô tả chân kết nối của PS2 với Arduino Connectors.
Stt PS2 Arduino
Connectors
Tên CỤM
1 3v3 3v3 - CN7
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 24
2 GND GND -
3 CLOCK SPI2_SCK D13
4 DATA SPI2_MISO D12
5 COMMAND SPI2_MOSI D11
6 ATTENTION PH6 D6 CN4
c. Khối âm thanh
Âm thanh đối với 1 máy chơi game là không thể thiếu, nó làm trò chơi thêm
sinh động, tạo được hiệu ứng cho người sử dụng. Khối này với nhiệm vụ chính là
phát âm thanh định dạng MP3 được lưu trong thẻ nhớ ra trong suốt quá trình chơi
game. Các Module như MP3-LT108, TF-GM4563 hay VS1003 đều chạy tốt yêu
cầu trên, tuy nhiên do có nghiên cứu từ trước nên tôi quyết định chọn module
VS1003. Module này với chip VS1003 có thể phát được file nhạc định dạng MP3
như yêu cầu, có jack cắm tay nghe 3.5mm để kết nối với loa ngoài, ngoài ra module
này giao tiếp theo chuẩn SPI nên ta có thể sử dụng chung với tay cầm PS2 thông
qua các chân CS khác nhau.
Hình 3-5. Sơ đồ khối nối STM32F746 với PS2.
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 25
Module bao gồm các chân: 5V, GND, XRST, MISO, MOSI, SCLK, DREQ,
XCS, XDCS được kết nối với Arduino Connectors:
Bảng 3.3 :Mô tả chân kết nối của VS1003 với Arduino Connectors.
STT VS1003 Arduino
Connectors
Tên CỤM
1 5v 5v - CN6
2 GND GND -
3 XRST NRST -
4 SCLK SPI2_SCK D13 CN7
5 MISO SPI2_MISO D12
6 MOSI SPI2_MOSI D11
7 DREQ PA15 D9
8 XCS PI2 D8
9 XDCS PI3 D7 CN4
Hình 3-6. Module VS1003.
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 26
Do PS2 và VS1003 sử dụng chung các đường SPI2 nên phải thiết kết mạch
kết nối giữa PS2, VS1003 với KIT.
Sử dụng với loa ngoài thì cần thêm mạch khuếch đại âm thanh như các
module LM386, TDA2030. Ở đây tôi dùng module LM386 điện áp hoạt động 5v
với loa 4ohm/3W để âm thanh có thể phát ra ngoài cho nhiều người nghe. Tuy
nhiên 3W là công suất tối đa của loa khi sử dụng. Còn ở mạch này, tôi chỉ cho loa
hoạt động với 1/3 công suất (1W) để nghe vừa tai.
d. Khối nguồn
Đối với khối nguồn ta phải lựa chọn nguồn phù hợp để cấp và dòng cho hệ
thống hoạt động. Đầu tiên đối với KIT STM32F746NGHx sử dụng nguồn vào 5v
cấp vào các cổng ST-LINK, USB HS, USB FS.
Nguồn cung cấp cho chip ARM lõi Cotex-M7 TFBGA216 là 3.3v với công
suất 690mW[4], từ đó dòng cấp vào:
𝐼𝑎 =
P
U
=
690
3.3
= 210𝑚𝐴 (3.1)
Tay cầm PS2 cũng sử dụng điện áp 3.3v dòng làm việc tối đa là Ip = 300mA.
Module VS1003 đầu vào là 5v nhưng hoạt động của IC là ở 3.3 dòng tối đa
lúc hoạt động là Iv = 800mA và dòng của loa là:
Hình 3-7. Sơ đồ kết nối STM32F746 với VS1003.
TÍNH TOÁN_THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 27
Iloa = √
P
R
=√
1
4
= 500mA (3.2)
Như vậy dòng tổng cần cấp:
∑I = 𝐼𝑎 + 𝐼𝑝 + 𝐼𝑣 + 𝐼loa = 210 + 300 + 800 + 500 = 1810𝑚𝐴 (3.3)
Như vậy ta cần cấp một nguồn áp 5v có dòng từ 1.8A là mạch có thể hoạt
động tốt. Ta có thể lựa chọn cấp nguồn từ ghép Pin lipo loại 3.7v lại với nhau sau
đó giảm áp để cấp cho mạch hoạt có thể sử dụng các loại Adapter 5v-1.8A để cấp
cho mạch.
Hình 3-8. Sơ đồ kết nối nguồn ngoài cho STM32F746.
3.3.3 Sơ đồ nguyên lý toán mạch
Phần này ta kết hợp các sơ đồ kết nối của từng phần cứng lại với nhau thành
1 sơ đồ nguyên lý chung. Do PS2 và VS1003 cùng kết nối với STM32F746 bằng
chuẩn SPI thông qua các chân SPI2 trên Arduino Connectors nên sơ đồ nguyên lý
chung được vẽ như sau.
Hình 3-9. Sơ đồ nguyên lý chung của hệ thống.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 28
Chương 4: THI CÔNG HỆ THỐNG
4.1. GIỚI THIỆU
Hệ thống hoạt động như 1 máy chơi game mini, tác động trên màn hình cảm
ứng, tay cầm PS2 và phát nhạc từ module âm thanh. Chương này ta sẽ thiết phần
cứng PCB để kết nối 2 module PS2, VS1003 với KIT. Sau đó sẽ lắp ráp các phần
cứng lại có kiểm tra. Tiếp theo là viết lưu đồ để dựa vào đó lập trình hệ thống.
Cuối cùng là viết hướng dẫn sử dụng cho người dùng.
4.2. THI CÔNG HỆ THỐNG
4.2.1 Thi công board mạch
Phần này ta thiết kế mạch PCB theo sơ đồ nguyên lý đã trình bày ở chương
trước.
Sơ đồ PCB của mạch:
Hình 4-1. Sơ đồ PCB mạch kết nối STM với PS2 và VS1003.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 29
Sơ đồ 3D:
Hình 4-2. Sơ đồ PCB 3D mạch kết nối STM với PS2 và VS1003.
Sơ đồ bố trí linh kiện:
Hình 4-3. Sơ đồ bố trí linh kiện mạch kết nối STM với PS2 và VS1003.
Bảng 4.1: Bảng linh kiện sử dụng.
STT Tên linh kiện Giá trị Dạng vỏ
1 Dual Shock
(PS2)
3.3v
300mA (max)
-
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 30
2 VS1003 5v
800mA(max)
Module
3 STM32F746
DISCOVERY
3.3v
210mA
KIT
4 Loa ngoài 5v
3W
-
5 Socket
Header
- DO 2.54mm
Sau đó ta thi công mạch PCB và kiểm tra kích thướt chân linh kiện xem có
phù hợp để có điều chỉnh phù hợp.
4.2.2 Lắp ráp, hàn linh kiện và kiểm tra
Đầu tiên ta hàng các Socket Header kết nối KIT chính, các module ngoại vi
với mạch kết nối. Tiếp theo, gắn module VS1003 và module ra chân của PS2 vào
các Socket Header. Sau đó gắn KIT chính lên, sử dụng VOM để kiểm tra tính
thông mạch của từng linh kiện của từng bước.
Bảng 4.2: Các bước lắp ráp linh kiện.
Bước Nội dung
1 Hàn các Socket Header
2 VOM kiểm tra tính thông mạch
3 Lắp Module VS1003
4 VOM kiểm tra tính thông mạch
5 Lắp Module tay cầm
6 VOM kiểm tra tính thông mạch
7 Lắp KIT chính
8 VOM kiểm tra tính thông mạch
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 31
4.2.3 Đóng gói sản phẩm
Để hệ thống có tính thẩm mỹ và ổn định thì ta thiết kế hộp đựng cho cả mạch.
Có thể sử dụng vật liệu từ Mica hoặc nhựa...
Sử dụng phần mềm AutoCad thiết kế khung cho hộp:
Hình 4-4. Khung của mạch.
4.3. LẬP TRÌNH HỆ THỐNG
4.3.1 Lưu đồ giải thuật
Hệ thống sau khi cấp nguồn sẽ hiện giao diện chọn game lên màn hình cho
phép người sử dụng lựa chọn các mục game khác nhau bằng cách sử dụng các nút
trên tay cầm PS2.
Sau khi vào từng game thì sẽ có các thao tác sử dụng riêng. Để bắt đầu người
dùng nhấn nút Start, để lựa chọn game khác nhấn nút Select và các chức năng khác.
Từ đó ta thiết lưu đồ giải thuật. Đầu tiên là lưu đồ chương trình chính, lưu đồ phát
nhạc được dùng trong lúc game đang.
Với lưu đồ chương trình chính mô tả quá trình chọn game dựa vào 2 nút nhấn
lên/xuống của PS2. Sau khi chọn được game, người chơi nhấn nút Start để vào
game đã chọn.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 32
 Lưu đồ chương trình chính:
Hình 4-5. Lưu đồ chương trình chính.
 Lưu đồ đọc/phát
nhạc từ thẻ nhớ:
Hình 4-6. Lưu đồ đọc/phát
nhạc.
Lưu đồ đọc/phát nhạc thể hiện quá trình đọc nhạc từ thẻ nhớ sau đó chuyển
tín hiệu đến module âm thanh để phát ra ngoài.
Nếu số số byte đọc lớn hơn dung lượng bài tương đương đã đọc hết 1 bài
thì kết thúc quá trình đọc file nhạc đó.
Bắt đầu
Cấu hình module
Khởi tạo ngoại vi
Phát nhạc nền
Tên các
game
Nhấn PS2
Lên hoặc
xuống
Nhấn Start
Thay đổi
GAME
Gọi hàm
theo GAME
Đ
S
Đ
S
Đ
S
Bắt đầu
Tìm tên bài
trong thẻ
Kết thúc
Đọc dữ liệu (byte)
Gửi đến VS1003
Số byte đọc < dung
lượng bài
Tăng số
byte đọc
S
Đ
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 33
a. Game Cờ Caro
Hình 4-7. Lưu đồ chính game Cờ Caro.
Game này khi bắt đầu màn hình xuất hiện bàn cờ 9x9, lần lượt từng người
chơi sẽ chạm vào màn hình tại các ô trống để đánh dấu X/O. Người chơi nào đánh
được 5 dấu liền nhau tính theo đường thẳng hoặc đường chéo trước sẽ giành chiến
thắng. Trong lúc chơi sẽ có nhạc nền phát liên tục. Khi có người chơi thắng cuộc
sẽ có nhạc báo hiệu. Từ đó, thiết kế lưu đồ, lưu đồ chương trình chính:
Game đầu tiên thao tác chủ yếu trực tiếp trên màn hình. Với mỗi lần chạm
màn hình thì sẽ gọi các hàm xử lý nước đi tương ứng với lượt người chơi. Sau mỗi
Bắt đầu
Reset ván đấu
Vẽ bàn cờ
Hiện tỉ số
Chạm màn
hình
Xử lý
bước đi
Vẽ nước
cờ
5 dấu liên
tiếp
1
1
Thông báo kết
quả
Chạm màn
hình
Nhấn Select
Reset biến chọn
GAME
Thoát GAME
Kết thúc
Đ
S
Đ
S
Đ
S
S
Đ
Còn ô trống
Đ
S
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 34
lượt sẽ kiểm tra xem có người chơi nào thắng hay không. Tiếp theo là lưu đồ xử lý
nước đi và vẽ nước đi.
Hình 4-8. Lưu đồ xử lý nước đi.
 Lưu đồ xử lý nước đi:
Sử dụng tọa độ tại vị trí người
chơi chạm vào để xem xét ô đó còn
trống hay không. Nếu còn trống thì tạo
giá trị tại ô đó tương ứng với lượt đi
của người đó.
Hình 4-9. Lưu đồ vẽ nước đi.
 Lưu đồ vẽ nước đi:
Đọc giá trị tại tất cả các ô trên
bàn cờ rồi lần lượt vẽ kí hiệu X/O nếu
ô đó có giá trị.
Sau khi có người thắng cuộc nếu
muốn chơi tiếp thì nhấn Start còn nếu
muốn chơi game khác thì nhấn Select.
Bắt đầu
Đọc tọa độ
Ô còn trống
Tạo giá trị cho ô
Đảo lượt
Kết thúc
S
Đ
Bắt đầu
Đọc giá trị
tại ô
Giá trị bằng 1
Vẽ X
Kết thúc
S
Đ
Vẽ O
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 35
b. Game Ball Bing Bong
Game thứ 2 này ban đầu người chơi chọn các thông số cài đặt chế độ bao
gồm loại banh, số người chơi và mức độ game. Nhấn nút Start để bắt đầu game
hoặc nhấn nút Select để chọn game khác.
Khi bắt đầu quả banh sẽ di chuyển trong màn hình, khi chạm 2 cạnh dọc của
màn hình banh sẽ đảo hướng. Nhiệm vụ của người chơi là dùng thanh Bar để đỡ
quả bóng khi banh đến vị trí cuối cùng của cạnh ngang. Nếu như đỡ hụt thì người
chơi thua cuộc trò chơi kết thúc. Từ đó ta thiết kế lưu đồ cho game như sau:
Hình 4-10. Lưu đồ chính của game.
Khi bắt đầu game, người chơi cần chọn các chế độ chơi thông qua hàm “Chọn
chế độ chơi”, sau đó chờ nhấn nút Start để bắt đầu chơi. Tùy với thông số cài đặt
mà gọi hàm “Xử lý 1 người chơi” hay “Xử lý 2 người chơi” tương ứng.
Bắt đầu
Chọn chế
độ chơi
Nhấn Start
Kết thúc
S
Đ
1 người chơi
Xử lý 1
người chơi
Xử lý 2
người chơi
Đ
S
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 36
Hình 4-11. Lưu đồ chọn chế độ chơi.
Đầu tiên người chơi sẽ chọn chế độ chơi bằng các chạm vào màn hình được
thiết kế từ trước với các lựa chọn bao gồm:
 Loại banh: Xanh lá, Hồng, Xanh dương.
 Số lượng người chơi: 1 hoặc 2.
 Cấp độ: Dễ, bình thường hoặc khó.
Sau đó người chơi sẽ nhấn nút Start trên PS2 để bắt đầu vào Game. Tiếp theo
ta vẽ lưu đồ để xử lý nếu như chọn 1 người chơi:
Bắt đầu
Chạm màn
hình
Vẽ giao diện
Kiểm tra tọa độ
Thiết lập biến
Cài đặt xong
Kết thúc
S
Đ
Đ
S
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 37
Hình 4-12. Lưu đồ xử lý 1 người chơi.
Với chế độ 1 người chơi thì sẽ di chuyển thanh ngang bằng cách nhấn nút
Right/Left trên PS2. Mỗi lần banh chạm vào cạnh màn hình hoặc thanh ngang sẽ
đổi hướng di chuyển ngược lại. Đến khi banh chạm cạnh dưới màn hình và vượt
ra ngoài thanh ngang thì người chơi thua cuộc tạm dừng Game để chờ xử lý xem
chơi lại hay chọn Game mới bằng nút Start hoặc Select với hàm xử lý thua.
Bắt đầu
Đọc trạng thái PS2
Nhấn Right
Bar chưa chạm
cạnh phải
Di chuyển Bar
qua phải
Nhấn Left
Bar chưa chạm
cạnh trái
Di chuyển Bar
qua trái
Ngắt Timer 2
Thay đổi tọa
độ banh
Banh chạm cạnhĐảo chiều
banh
Cạnh dưới 1
1
Thông báo thua
2
2
Kết thúc
S
S
S
S
S
Đ
Đ
Đ
Đ
Đ
Banh nằm ngoài
thanh ngang
3
3
S
Đ
Xử lý thua
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 38
Còn nếu như chọn chế độ 2 người chơi thì lưu đồ như sau:
Hình 4-13. Lưu đồ xử lý 2 người chơi.
Đối với chế độ 2 người chơi thì người chơi thứ 2 sẽ di chuyển thanh ngang
của mình bằng cách chạm vào màn hình. Dựa vào tọa độ chạm trên màn hình sẽ
Bắt đầu
Nhấn Right
Bar chưa chạm
cạnh phải
Di chuyển
Bar1 qua
phải
Nhấn Left
Bar chưa chạm
cạnh trái
Di chuyển
Bar1 qua
trái
Chạm màn
hình
Di chuyển thanh
Bar 2
Banh chạm
cạnh
Đảo chiều
banh
Banh nằm
trong bar
1
1
Thông báo thua
2
Kết thúc
S
S
S
S
Đ
Đ
Đ
Đ
Ngắt timer 2
Thay đổi tọa độ banh
2
S
Đ
S
S
Đọc trạng thái PS2
Xử lý thua
Cạnh trên/
dưới
Đ
Đ
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 39
thay đổi thanh ngang tương ứng. Ngoài ra các thao tác còn lại giống như chế độ 1
người chơi.
Trong đó lưu đồ xử lý thua dùng để kiểm tra xem người chơi muốn chơi lại
hay thoát Game:
Bắt đầu
Kết Thúc
Đ
S
Nhấn Start
Reset biến
Quay lại bước 1
Nhấn Select
Reset biến GAME
Thoát Game
Đ
S
Hình 4-14. Lưu đồ xử lý thua.
c. Game Flappy Bird:
Game này tương tự như Game Flappy Bird của tác giá Nguyễn Hà Đông chỉ
khác cách thao tác. Người chơi sẽ điều khiển nhân vật game tạm gọi là Bird vượt
qua các trụ tre.
Khi bắt đầu Bird sẽ rơi tự do từ trên xuống, người chơi sẽ nhấn nút X trên
trên PS2 để Bird bay lên 1 khoảng, sau đó Bird tiếp tục rơi. Các trụ sẽ liêc tục chạy
từ phải qua trái.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 40
Hình 4-15. Lưu đồ chính game Flappy Bird.
Nếu như Bird chạm vào trụ hoặc rơi xuống đất thì người chơi thua cuộc trò
chơi kết thúc. Để chơi lại thì nhấn nút Start hoặc nhấn Select nếu muốn đổi Game.
Từ đó ta thiết kế lưu đồ cho Game như sau
Game này sử dụng 3 timer để định thời bao gồm:
-Timer2: điều khiển Bird bay xuống.
-Timer3: điều khiển Bird bay lên.
-Timer5: điều khiển di chuyển các trụ tre.
Bắt đầu
Ngắt
timer2
Kết thúc
Cấu hình timer2,3,5
Vẽ màn hình
Cho phép timer2, 5
Ngắt timer5
Di
chuyển
trụ
Nhấn X
Lưu trạng thái nhấn
Tắt timer2
Cho phép timer3
1
1
Ngắt timer3
Di chuyển
bird lên
Kiểm tra
thua
2
Thua
2
Xử lý
thua
Tắt timer3
Cho phép timer2
Xóa trạng thái nhấn
S
Đ
S
Đ
Đ
S
Đ
S
Đ
S
Di chuyển
bird xuống
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 41
Do tính chất trên nên khi Timer2 hoạt động thì Timer3 sẽ dừng và ngược lại.
Với mỗi lần Timer 2 ngắt sẽ cho Bird giảm độ cao, nếu như người chơi nhấn nút
X trên PS sẽ cho hoạt động Timer 3 chờ ngắt để tăng độ cao Bird. Timer 5 sẽ hoạt
động liên tục để các trụ tre liên tục di chuyển. Sau mỗi lần xử lý sẽ kiểm tra toa độ
của Bird so với các trụ tre để xem có thua hay không. Các hàm con xử lý được hiết
kế như sau:
Hình 4-16. Lưu đồ di chuyển trụ.
Lưu đồ này mỗi lần thực hiện
sẽ giảm tọa độ trụ về phía bên trái
của màn hình. Nếu như trụ chạm
vào cạnh trái màn hình thì xóa trụ
đó đi tạo tọa độ trụ mới.
Hình 4-17. Kiểm tra thua.
Lưu đồ này sẽ so sánh tọa độ của Bird
so với đất và trụ. Nếu như Bird chạm 1
trong 2 đối tượng trên thì xem như thua
cuộc và trả về trạng thái “Thua” để xử lý
phía sau.
Tiếp theo ta có lưu đồ dùng để di chuyển Bird lên. Đối với di chuyển xuống
ta chỉ giảm tọa độ liên tục và và gọi hàm Kiểm tra thua là được. Khi di chuyển
lên ta phải so sánh với tọa độ cao nhất của màn hình nếu nhỏ hơn mới di chuyển.
Bắt đầu
Kết thúc
Tọa độ trụ
giảm sang trái
Trụ chạm
cạnh trái
Xóa trụ
Tạo tọa độ trụ mới
Vẽ trụ mới
S
Đ
Bắt đầu
Kết thúc
Bird chạm đất
Trả về kết quả Thua
Bird chạm trụ
Trả về kết quả chưa
Thua
S
S
Đ
Đ
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 42
Hình 4-18. Lưu đồ di chuyển Bird lên.
d. Game Stick Hero:
Game này ở màn hình chính bao gồm 1 nhân vật Hero và 2 trụ nằm cách
nhau 1 khoảng cách. Người chơi sẽ di chuyển nhân vật từ trụ trái qua trụ phải bằng
cách nhấn giữ vào nút X trên PS2 để tạo ra 1 cây cầu để nối giữa 2 trụ với nhau.
Đây là game có thao tác đơn giản nhưng đòi hỏi ngươi chơi phải canh khoảng
cách chuẩn để có thể vượt qua các thử thách. Mỗi lần vượt thử thách sẽ chia làm 5
bước nhỏ bao gồm:
 Bước 1: Vẽ cầu.
 Bước 2: Thả cầu đến khi chạm trụ phải.
 Bước 3: Hero di chuyển đến cuối cầu.
 Bước 4: Kiểm tra thắng thua.
 Bước 5: Tạo chướng ngại vật mới.
Lưu đồ của game được thiết kế như sau:
Bắt đầu
Bird chạm cạnh trên
Kết thúc
S
Đ
Di chuyển Bird
lên trên
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 43
Hình 4-19. Lưu đồ chính game Stick Hero.
 Lưu đồ chính game
Stick Hero
Game sẽ chạy theo trình tự từ
bước 1 đến bước 4, bước 4 là bước
kiểm tra thua. Nếu như kiểm tra
chưa thua thì sẽ chạy tới bước 5 rồi
quay về bước 1.
Hình 4-20. Lưu đồ bước 1.
 Lưu đồ bước 1.
Bước đầu tiên là bước vẽ cầu,
người chơi sẽ nhấn giữ nút X trên
PS2 để cầu dài ra liên tục. Người
chơi cần canh sao cho cầu bắt vừa
đủ, không dư, không thiếu. Chiều
dài tối đa có thể vẽ là từ vị trí của
Hero đến cạnh phải màn hình.
Thả nút X để qua bước 2.
Bắt đầu
Kết Thúc
S
Khởi tạo tọa độ
Hero, 2 trụ
Bước 1
Bước 2
Bước 3
Bước 4
Bước 5
Bắt đầu
Nhấn X
Kết thúc
S
Đ
Tăng chiều dài cầu
Vẽ cầu
Nhấn X
Đ
S
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 44
Hình 4-21. Lưu đồ bước 2.
Bước này dùng để xoay cầu từ thẳng đứng sang nằm ngang để nối đến vị trí
Hero cần di chuyển tới. Hết bước 2 chuyển sáng bước kế tiếp.
Hình 4-22. Lưu đồ bước 3.
Bước 3 là bước Hero di chuyển từ trụ đang đứng sang trụ mới bằng cầu vừa
xoay ở bước 2. Hero đi đến cuối cầu sẽ dừng lại chuyển sang bước 4.
Bắt đầu
Cầu chạm trụ
phải
Kết Thúc
S
Đ
Xóa cầu
Tính toán tọa độ mới
Vẽ cầu mới
Bắt đầu
Hero tới cuối
cầu
Kết Thúc
S
Đ
Xóa Hero
Tính toán tọa độ mới
Vẽ Hero mới
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 45
Hình 4-23. Lưu đồ bước 4.
 Lưu đồ bước 4.
Bước này dùng để kiểm tra xem
Hero có đứng ngoài trụ mới hay
không bằng cách so sánh tọa độ của 2
đối tượng với nhau.
Nếu như Hero đứng ngoài trụ
mới thì xem như người chơi thua và
gọi hàm “ Xử lý thua”.
Hàm xử lý thua đã trình bày ở
phần trước.
Hình 4-24. Lưu đồ bước 5.
 Lưu đồ bước 5.
Nếu như vượt qua được bước 4
thì bước 5 sẽ tạo ra màn mới bằng
cách di chuyển Hero và trụ hiện tại về
bên trái sau đó tạo tọa độ trụ mới và
quay về bước 1.
Bắt đầu
Cầu > cạnh phải
trụ phải
Kết Thúc
S
Đ
Cầu < cạnh trái trụ
phải
Xử lý thua
Đ
S
Bắt đầu
Kết Thúc
Đ
S
Dời Hero, trụ qua
trái
Tọa độ Hero < tọa
độ gốc
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 46
e. Game Ai Là Triệu Phú:
Đây là 1 game không còn xa lạ đối với mọi người. Người chơi sẽ phải vượt
qua 15 câu hỏi để đạt được kết quả cao nhất. Trong mỗi câu hỏi sẽ thiết kế phần
phát tiếng sao cho càng giống với thực tế càng tốt để tạo sự thích thú với người
chơi. Lưu đồ của game:
Bắt đầu
Kết Thúc
Chạm nút Bắt Đầu
Đ
S
Vẽ màn hình
Vẽ nút Bắt đầu
Hiện câu hỏi
Đọc câu hỏi
Hiện đáp án
Đếm ngược
Chọn đáp án
Đáp án đúng
Thông báo đúng
1
Hết thời gian
1
Thông báo sai
Thay đổi câu hỏiReset Biến
2
2
Nhấn Select
Reset Biến
GAME
Thoát Game
Reset Biến
2
Đ
Đ
Đ
Đ
S
S
S
S
Hình 4-25. Lưu đồ game Ai là triệu phú.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 47
f. Game Vòng Quay Sát Phạt:
Đây là game thiết kế riêng cho người chơi sử dụng trong các cuộc liên hoàn
với nội dung trong vòng quay bao gồm các hình thức phạt như bắt uống gấp đôi,
gấp ba hoặc được ăn mồi... Mỗi lượt người chơi sẽ chạm vào màn hình để quay,
thời điểm dừng là hoàn toàn ngẫu nhiên. Lưu đồ được thiết kế:
Hình 4-26. Lưu đồ chính Game Vòng Quay Sát Phạt.
Bắt đầu
Khởi tạo timer2,5
Tạo góc
Vẽ màn hình
Vẽ kim
Tốc độ =1
Chiều quay = tăng
Xử lý góc
Xử lý tốc độ quay
Tốc độ > 0
Xử lý kết quả
theo góc
Thông báo kết quả
1
1
Chạm màn
hình
Reset biến Nhấn Select
Reset biến GAME
Thoát Game
Kết thúc
S
Đ
S
S
Đ
Đ
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 48
Game này sẽ sử dụng timer 2 cho việc định thời gian để thay đổi thông số
góc và thay đổi tốc độ quay, timer 5 để tạo ra thời gian delay ngẫu nhiên để tạo
tính ngẫu nhiên cho trò chơi. Khi tốc độ đạt tối đa thì bắt đầu cho timer 5 hoạt
động. Sau khi tốc độ về 0 thì xét thông số góc từ đó đưa ra thông báo về vị trí đạt
được của lượt quay đó.
Tiếp theo là lưu đồ chương trình con xử lý góc và xử lý tốc độ quay của kim:
Hình 4-27. Lưu đồ xử lý góc và tốc độ quay.
Như đã trình bày, khi bắt đầu thì mỗi lần timer 2 ngắt sẽ cho tăng tốc độ quay
của kim lên và cùng lúc đó thay đổi giá tị góc của kim để đạt vị trí mới. Cho đến
Bắt đầu
Tăng tốc độ
Ngắt timer2
Tốc độ < tốc độ tối đa
Chiều quay=tăng
Thay đổi góc
Vẽ kim
Tốc độ = tốc độ
max
Tốc độ > 0
Chiều quay=giảm
Giảm tốc độ
Cho phép timer 5
Ngắt timer 5
Chiều quay = giảm
Tắt timer 5
Kết thúc
1
1
2
2
S
Đ
Đ
S
S
Đ
Đ
S
S
Đ
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 49
khi tốc độ đạt tối đa thì kích hoạt timer 5 với thời gian đếm được tạo ra 1 cách ngẫu
nhiên. Tiếp theo là lưu đồ thông báo kết quả:
Dựa vào vị trí góc của kim mà đưa ra các thông báo về kết quả tương ứng
trên hình đã vẽ trước.
Hình 4-28. Lưu đồ thông báo kết quả.
Bắt đầu
Kết thúc
0<góc<=pi/4
Pi/4<góc<=pi/2
Pi/2<góc<=3pi/4
3pi/3<góc<=pi
pi<góc<=5pi/4
5pi/4<góc<=6pi/4
6pi/4<góc<=7pi/4
Đ
S
Đ
S
Đ
S
Đ
S
Đ
S
Đ
S
Đ
S
Kết quả 1
Kết quả 2
Kết quả 3
Kết quả 4
Kết quả 5
Kết quả 6
Kết quả 7
Kết quả 8
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 50
g. Game Pika Pika:
Chắc hẳn ai cũng đã chơi qua trò khủng long T-Rex vượt chướng ngại vật
của trình duyệt web khi rớt mạng, T-Rex sẽ lần lượt nhảy qua các chướng ngại vật
(CNV). Pika Pika cũng hoạt động dựa trên cơ chế đó, nhân vật chính của game là
pikachu, trong game thì pikachu sẽ liên tục chạy trên đường nền, mỗi khi gặp CNV
thì người chơi nhấn nút X trên PS2 để pikachu nhảy lên vượt qua. Nếu như pikachu
chạm vào CNV xem như thua cuộc. Từ đó lưu đồ của game được thiết kế như sau:
Hình 4-29. Lưu đồ chính game Pika Pika.
Bắt đầu
Khởi tạo ngoại vi
Khởi tạo giá trị biến
Vẽ Pikachu
Vẽ CNV
Nhấn X
Ngắt timer5
Xử lý CNV
Pikachu nhảy
Kiểm tra
thua
Kết Thúc
1
1
Thua
Thông báo
Xử lý thua
Đ
S
S
Đ
S
Đ
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 51
Như lưu đồ trên, mỗi lần người chơi nhấn X sẽ gọi hàm “Pikachu nhảy ” để
xử lý cho pikachu nhảy lên và hàm xử lý cho CNV di chuyển liên tục.
Bắt đầu
Tăng độ cao
Pikachu
Vẽ Pikachu
Độ cao < độ cao
đỉnh
Giảm độ cao
Pikachu
Vẽ Pikachu
Độ cao = đất
Kết thúc
Đ
S
S
Đ
Bắt đầu
Tọa độ CNV > 0
Di chuyển CNV sang trái
Vẽ CNV
Tạo tọa độ CNV mới
Vẽ CNV
Kết thúc
S
Đ
Bắt đầu
Pikachu chạm CNV
Trả kết quả thua
Kết thúc
Đ
S
Hình 4-31.Lưu đồ di chuyển CNV.
Hình 4-32. Lưu đồ kiểm tra pika có đụng
CNV hay không.
Hình 4-30. Lưu đồ xử lý pikachu
nhảy lên.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 52
“Lưu đồ pikachu nhảy”: Khi người chơi đã nhấn nút X thì tăng độ cao của
pikachu, sao đó so sánh với độ độ cao đỉnh đặt trước. Nếu đã đạt đỉnh thì giảm độ
cao cho đến khi chạm đất hoặc thua thì dừng.
“Lưu đồ xử lý di chuyển CNV” sử dụng ngắt timer để mỗi 1 khoảng thời gian
cố định sẽ di chuyển CNV sang trái. Khi CNV đến cạnh trái màn hình xóa CNV,
tạo CNV mới bên phải và lặp lại.
Nếu như người chơi thua cuộc thì gọi hàm xử lý thua tương tự như các game
trước.
4.3.2 Phần mềm lập trình cho vi điều khiển
Để lập trình cho dòng vi điều khiển ARM 32 bit có nhiều chương trình hỗ
trợ như Keil C, Eclipse, AC6 …Ở đây tôi sử dụng phần mềm Keil C MDK5 để lập
trình vì đây là 1 phần mềm dễ sử dụng, hỗ trợ chạy Debug, có thể sử dụng cùng
với phần mềm STM32CubeMX để tạo code nhanh.
Phần mềm được phát hành bởi hãng armKEIL hỗ trợ lập trình tất cả các dòng
ARM 32 bit. Có đầy đủ các công cụ cần thiết hỗ trợ người sử dụng cho việc code,
debugging và nạp chương trình. Phần mềm cần có bản quyển để sử dụng.
Hình 4-33. Giao diện phần mềm Keil C.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 53
Cách cài đặt phần mềm:
Bước 1: tải phần mềm từ trang web keil.com, giải nén sẽ ra thư mục
KeilC V5, bên trong có chứa 2 thư mục: ARM và Keil 8051.
Bước 2: Ta vào thư mục ARM chạy file mdk511.exe.
Bước 3: Hộp thoại cài đặt xuất hiện. Nhấn Next để tiếp tục.
Bước 4: Chọn “I agree to all the tems of the preceding License
Agreement”, sau đó chọn Next.
Bước 5: Chọn đường dẫn lưu phần mềm cài đặt, sau đó chọn Next.
Bước 6: Điền thông tin cá nhân vào các ô và chọn Next.
Bước 7: Chờ phần mềm cài đặt xong nhấn Finish.
Bước 8: Sau đó, hộp thoại Pack Installer xuất hiện, nhấn OK.
Bước 9: Trong hộp thoại Pack Installer, các bạn install dòng chip các bạn
đang sử dụng.
STM32CubeMX được cũng cấp bởi chính hãng STMicroelectronics. Hỗ trợ
việc cấu hình trước khi bắt đầu 1 project mới. Cho phép người dùng cài đặt trước
các thông số cho các ngoại vi để tiến hành sinh code ban đầu. Phần mềm này có
thể sinh ra code tương thích với các IDE như Keil C, IAR...Phần mềm được cung
cấp miễn phí.
Hình 4-34.Giao diện phần mềm STM32CubeMX.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 54
Cách cài đặt phần mềm:
Bước 1: Tải phần mềm trên web st.com. Vào chạy file cài đặt với tên
SetupSTM32CubeMX.exe. Xuất hiện hộp thoại nhấn NEXT để tiếp tục.
Bước 2: Xuất hiện hộp thoại chọn “I accept the terms of this license
agreement” nhấn Next để tiếp tục.
Bước 3: Xuất hiện hộp thoại chọn vùng nhớ để lưu cài đặt. Sau đó chọn
Next.
Bước 4: Xuất hiện hộp thoại. Chọn Next để tiếp tục.
Bước 5: Đợi phần mềm thực hiện quá trình cài đặt.
Bước 6: Sau khi hoàn thành chọn Next.
Bước 7: Xuất hiện hộp thoại ta chọn Done để kết thúc quá trình cài đặt
phần mềm.
Cách tạo project mới:
Bước 1: Mở phần mềm bằng cách kích đúp vào biểu tượng trên màn hình
Bước 2: Vào New Project để tạo 1 Project mới, sau đó xuất hiện hộp
thoại. Chọn tab Board Seletor
Bước 3: Ở mục Type of board chọn Discovery và mục MCU series chọn
STM32F7.
Bước 4: Ở Boards List chọn và kích đúp vào hàng trên cùng là Discovery
– STM32F746G DISCO – STM32F746NGHx.
Bước 5: Tiến hành cấu hình xung clock và các ngoại vi cần thiết cho
Project.
Bước 6: Sau khi cấu hình xong vào tab Project –> Setting… ở đây tiến
hành đặt tên Project muốn khởi tạo. Chọn đường dẫn lưu Project.
Bước 7: Ở mục Toolchain/IDE chọn MDK-ARM V5. Sau đó nhấn OK.
Bước 8: Sau khi cài đặt xong vào tab Project –> Generate code. Đợi phần
mềm add các thư viện cần thiết cho Project và chọn Open Project.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 55
4.4. TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC:
4.4.1 Viết tài liệu hướng dẫn sử dụng:
Sau khi lập trình xong thì dưới đây là các hướng dẫn sử dụng máy chơi game
giúp cho người chơi dễ dàng biết được sử dụng tay cầm PS2 cũng như màn hình
như thế nào đối với từng game:
Bước 1: Khi cấp nguồn cho mạch thì màn hình sáng lên. Sau đó sẽ hiện lên
danh mục các Game có sẵn trong máy. Người chơi cần kết nối tay cầm PS2 vào.
 Bước 1.1: Bắt đầu thì hệ thống sẽ mặc định game đã chọn là game
thứ nhất. Người chơi nhấn nút Up/Down trên PS2 để thay đổi Game
muốn chơi.
 Bước 1.2: Nhấn nút Start để bắt đầu trò chơi đang được chọn.
Bước 2: Bắt đầu thao tác Game.
Game 1:
 Bước 2.1: Lần lượt từng người chơi chạm vào các ô được vẽ sẵn trên
màn hình để tạo nên kí hiệu X/O của mình.
 Bước 2.2: Khi có người thắng cuộc màn hình sẽ nhấp nháy những
kí hiệu của người đó.
 Bước 2.3: Chạm vào màn hình để chơi ván mới hoặc nhấn nút Select
trên PS2 để thoát Game.
Gam 2:
 Bước 2.1: Xuất hiện 3 option bao gồm: loại banh, số người chơi,
mức độ game, người chơi chạm vào màn hình tại vị trí tương ứng để
chọn các thông số trên.
 Bước 2.2: Nhấn Start trên PS2 để bắt đầu Game.
 Bước 2.3: Banh sẽ di chuyển trong màn hình. Đối với 1 người chơi
thì sử dụng 2 nút Left/Right để di chuyển thanh ngang để đón quả
banh. Nếu 2 người chơi thì người chơi thứ 2 chạm vào màn hình để
di chuyển thanh ngang thứ 2.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 56
 Bước 2.4: Khi có người thua. Nhấn Start để trở lại chế độ cài đặt.
Nhấn Start để chơi lại. Nhấn Select để thoát Game.
Game 3:
 Bước 2.1: khi bắt đầu, người chơi nhấn nút X trên PS2 để cho Bird
bay lên.
 Bước 2.2: khi thua cuộc. Nhấn Start để chơi lại hoặc Select để thoát
Game.
Game 4:
 Bước 2.1: Nhấn nút X để vẽ dài cầu ra. Thả nhấn X để bắt đầu xoay
cầu.
 Bước 2.2: Nếu người chơi thua cuộc thì làm tương tự Bước 3.2.
Game 5: Game này sẽ thao tác chủ yếu trên màn hình:
 Bước 2.1: Bắt đầu sẽ xuất hiện màn hình chào Game. Chạm màn
hình tại vị trí “Bắt đầu” để bắt đầu chơi hoặc nhấn Select để thoát
Game.
 Bước 2.2: Sau khi xuất hiện 4 đáp án. Người chơi có 30s để chọn
câu trả lời. Quá 30s sẽ xem như thua cuộc và trở lại Bước 5.1. Chọn
được đáp án trong 30s nếu câu trả lời đúng sẽ chuyển sang câu tiếp
theo nếu sai thì xem như thua cuộc chuyển về bước 5.1.
 Bước 2.3: Sau khi trả lời hết 15 câu hỏi thì người chơi chiến thắng
chuyển về bước 5.1
Game 6:
 Bước 2.1: Khi bắt đầu, người chơi chạm vào màn hình để bắt đầu
cho kim xoay và chờ đợi kết quả.
 Bước 2.2: Sau khi có kết quả thì tiếp tục chạm vào màn hình để bắt
đầu lần quay mới hoặc có thể nhấn Select để thoát Game.
Game 7:
 Bước 2.1: Bắt đầu, pikachu sẽ chạy về hướng các CNV. Người chơi
nhấn nút X để pikachu nhảy lên vượt qua.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 57
 Bước 2.2: Nếu như vượt không qua CNV thì xem như thua cuộc.
Nhấn Start để chơi lại hoặc Select để chơi game khác.
4.4.2 Thao tác sử dụng:
Để tăng sự tương quan thì tôi sẽ trình bày các thao tác dụng dụng mạch bằng
hình ảnh mà tôi chụp lại trong quá trình sử dụng.
Người dùng sử dụng 2 nút lên xuống bên trái để lựa chọn tựa game và nhấn
nút Start để bắt đầu vào Game.
Hình 4-35. Thao tác chọn game
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 58
Game Cờ caro thì người chơi chạm vào các ô trống theo dấu mũi tên để vẽ kí
hiệu theo lượt của mình.
Người chơi cài đặt các chế độ tại 3 vị trí trên. Sau đó nhấn nút Start. Vào
game thì chỉ sử dụng 2 nút trái phải nếu 1 người chơi và thêm chạm màn hình nếu
2 người chơi để di chuyển thanh ngang. Nếu có người thua thì nhấn Start để bắt
đầu lại hoặc Select để thoát game.
Hình 4-36. Thao tác Game Cờ Caro.
Hình 4-37. Thao tác chọn chế độ Game BBB.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 59
Game này người chơi chỉ cần nhấn nút X để Bird bay lên. Nếu thua thì nhấn
Hình 4-39. Thao tác game Flappy Bird.
Hình 4-38. Nút nhấn điều khiển game BBB.
THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 60
Start để bắt đầu lại và nhấn Select để thoát Game.
Người chơi nhấn giữ nút X để tăng độ dài của cầu sao đó thả nhấn để đến các
bước tiếp theo.
Nếu như thua cuộc thì làm như game trước.
Các game sau cũng sử dụng tương tự như phần hướng dẫn sử dụng.
Hình 4-40. Thao tác game Stick Hero.
KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 61
Chương 5: KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
Sau quá trình tìm hiểu, nghiên cứu và thực hành thì tôi đã cơ bản hoàn thành
được những yêu cầu đặt ra lúc bắt đầu đồ án này. Từ đó rút ra được nhiều kinh
nghiệm cũng như kiến thức mới từ GVHD, từ chính bản thân trong lúc thực hiện
đồ án.
Biết được cách giao tiếp cơ bản với tay cầm PS2, module phát nhạc, vi điều
khiển ARM32, lập trình hệ thống với phần mềm Keil C cùng với đó là sử dụng
được phần mềm STM32CubeMX-phần mềm giúp ích rất nhiều cho lập trình viên
sử dụng ARM32.
Biết được thêm các giải thuật xử lý chuỗi đơn giản, tính sắp xếp logic cho
quá trình chạy các game.
5.1. KẾT QUẢ
5.1.1 Phần cứng
Sau khi thi công, lắp ráp KIT, mạch kết nối, bộ khung thì được 1 khối hoàn
chỉnh
Hình 5-1. Kết quả phần cứng.
KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 62
5.1.2 Phần mềm
Sau khi lập trình hệ thống, kết quả đạt được các game với giao diện:
Hình 5-2. Giao diện chọn Game.
Tiếp theo là các hình về các game đã lập trình được:
Hình 5-3. Game Cờ Caro.
Hình 5-4. Chọn chế độ Game BBB.
KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 63
Hình 5-5. Game Ball Bing Bong.
Hình 5-6. Game Flappy Bird.
KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 64
Hình 5-7. Game Stick Hero.
Hình 5-8. Game Vòng Quay Sát Phạt.
KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 65
Hình 5-9. Game Ai Là Triệu Phú.
Hình 5-10. Game Pika Pika.
5.2. ĐÁNH GIÁ KẾT QUẢ, NHẬN XÉT VÀ ĐÁNH GIÁ
Sau quá trình thực hiện tôi đã hoàn thành được 7 Game mini phổ biến, kết
hợp được giữa KIT, PS2 và module VS1003 chạy cùng với nhau trong hệ thống.
Game chạy cơ bản chính xác.
Tuy nhiên do thời gian có giới hạn nên đồ họa của Game vẫn còn đơn giản,
hình ảnh chủ yếu lấy từ mạng internet mà chưa tự thiết kế được. Đôi lúc hệ thống
vẫn có lỗi nhỏ như Game 1 do ô nhỏ nên chạm vào ô này nhưng kết quả lại ra ô kế
cạnh...
Nếu như được tự đánh giá, tôi xin đánh giá hệ thống thực đạt khoảng 90%.
KẾT LUẬN_HƯỚNG PHÁT TRIỂN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 66
Chương 6: KẾT LUẬN_HƯỚNG PHÁT TRIỂN
6.1. KẾT LUẬN
Sau quá trình thực hiện trong 3 tháng dưới sự hướng dẫn tận tình của thầy
Phan Vân Hoàn cùng sự cố gắng của bản thân thì đồ án đã hoàn thành đúng dự
định, đảm bảo yêu cầu đặt ra từ ban đầu. Chạy được 7 Game như đã đặt ra từ đầu,
phát được nhạc trong quá trình chơi và kết hợp được tay cầm PS2 vào thao tác.
Trong đó, tôi đã sử dụng được phần mềm Keil C 5 để lập trình cho vi điều
khiển ARM32, phần mềm STM32CubeMX hỗ trợ sinh code, phần mềm Altium
Design để thiết kế mạch PCB, phần mềm Adobe Photoshop để chỉnh sửa hình ảnh.
Nhận xét và đánh giá:
Phần mềm chạy tốt, đảm bảo các Game chạy mượt, ít giật lag. Tay cầm PS2
sử dụng ổn định, tác động nhanh khi tác động, module phát âm thanh chạy tốt nhạc
được phát đúng tốc độ không bị trễ.
Phần cứng được thiết kế chạy ổn định chưa thấy hiện tượng treo máy. Khung
được thiết kế chắc chắn, thẩm mỹ. Jack cắm PS2 vị trí hợp lý dễ dàng kết nối.
6.2. HƯỚNG PHÁT TRIỂN
Do chỉ dừng lại ở mức thiết kế game đã có sẵn nên để phát triển hơn tôi có
những ý tưởng như sau dành cho những người có ý định phát triển tiếp đồ án này:
 Tăng đồ họa cho Game.
 Những đoạn giới thiệu game có thể cho phát Video thay vì chỉ là 1
ảnh cùng với đoạn âm thanh.
 Kết hợp thêm các chế độ người chơi với máy bằng thuật toán AI đặc
biệt là Game 1 và Game 2.
 Làm thêm nhiều Game.
Đề tài: Thiết kế game mini trên Kit Stm32f746g_Discovery, HOT
Đề tài: Thiết kế game mini trên Kit Stm32f746g_Discovery, HOT

More Related Content

What's hot

Luận văn Thạc sĩ Nghiên cứu các kỹ thuật của IoT và các ứng dụng của nó cho n...
Luận văn Thạc sĩ Nghiên cứu các kỹ thuật của IoT và các ứng dụng của nó cho n...Luận văn Thạc sĩ Nghiên cứu các kỹ thuật của IoT và các ứng dụng của nó cho n...
Luận văn Thạc sĩ Nghiên cứu các kỹ thuật của IoT và các ứng dụng của nó cho n...
Dịch vụ viết thuê Luận Văn - ZALO 0932091562
 
Đề tài: Thiết kế hệ thống giám sát nhiệt độ - độ ẩm phòng trồng nấm bào ngư
Đề tài: Thiết kế hệ thống giám sát nhiệt độ - độ ẩm phòng trồng nấm bào ngưĐề tài: Thiết kế hệ thống giám sát nhiệt độ - độ ẩm phòng trồng nấm bào ngư
Đề tài: Thiết kế hệ thống giám sát nhiệt độ - độ ẩm phòng trồng nấm bào ngư
Dịch Vụ Viết Thuê Khóa Luận Zalo/Telegram 0917193864
 
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAYĐề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Mô hình ứng dụng IOT điều khiển các thiết bị điện trong nhà
Đề tài: Mô hình ứng dụng IOT điều khiển các thiết bị điện trong nhàĐề tài: Mô hình ứng dụng IOT điều khiển các thiết bị điện trong nhà
Đề tài: Mô hình ứng dụng IOT điều khiển các thiết bị điện trong nhà
Dịch vụ viết bài trọn gói ZALO 0917193864
 
File báo cáo đồ án smarthome
File báo cáo đồ án smarthomeFile báo cáo đồ án smarthome
File báo cáo đồ án smarthome
Kim Long
 
Đề tài: Chế tạo và điều khiển cánh tay robot 3 bậc tự do, HAY
Đề tài: Chế tạo và điều khiển cánh tay robot 3 bậc tự do, HAYĐề tài: Chế tạo và điều khiển cánh tay robot 3 bậc tự do, HAY
Đề tài: Chế tạo và điều khiển cánh tay robot 3 bậc tự do, HAY
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Đề tài: Mạch điều khiển thiết bị bằng Android qua Bluetooth, HAY
Đề tài: Mạch điều khiển thiết bị bằng Android qua Bluetooth, HAYĐề tài: Mạch điều khiển thiết bị bằng Android qua Bluetooth, HAY
Đề tài: Mạch điều khiển thiết bị bằng Android qua Bluetooth, HAY
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng GatewayĐề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Báo cáo thực tập môn học an ninh mạng tìm hiểu về mô hình mạng
Báo cáo thực tập môn học an ninh mạng tìm hiểu về mô hình mạngBáo cáo thực tập môn học an ninh mạng tìm hiểu về mô hình mạng
Báo cáo thực tập môn học an ninh mạng tìm hiểu về mô hình mạng
Dịch vụ viết bài trọn gói ZALO: 0936 885 877
 
Đề tài: Hệ thống phân loại cà chua theo màu sắc, HAY, 9đ
Đề tài: Hệ thống phân loại cà chua theo màu sắc, HAY, 9đĐề tài: Hệ thống phân loại cà chua theo màu sắc, HAY, 9đ
Đề tài: Hệ thống phân loại cà chua theo màu sắc, HAY, 9đ
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
mạng truyền thông công nghiệp
mạng truyền thông công nghiệpmạng truyền thông công nghiệp
mạng truyền thông công nghiệp
huong nguyen
 
Đề tài: Nhận dạng, phân loại, xử lý ảnh biển số xe bằng phần mềm
Đề tài: Nhận dạng, phân loại, xử lý ảnh biển số xe bằng phần mềmĐề tài: Nhận dạng, phân loại, xử lý ảnh biển số xe bằng phần mềm
Đề tài: Nhận dạng, phân loại, xử lý ảnh biển số xe bằng phần mềm
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAYLuận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinetLập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Xuân Thủy Nguyễn
 
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.docĐồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
Dịch vụ viết thuê đề tài trọn gói 😊 Liên hệ ZALO/TELE: 0973.287.149
 
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PIDĐề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đĐề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
thuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu sothuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu so
Kimkaty Hoang
 
Thiết kế bộ điều khiển mờ chỉnh định tham số pid cho mô hình máy bay trực thăng
Thiết kế bộ điều khiển mờ chỉnh định tham số pid cho mô hình máy bay trực thăngThiết kế bộ điều khiển mờ chỉnh định tham số pid cho mô hình máy bay trực thăng
Thiết kế bộ điều khiển mờ chỉnh định tham số pid cho mô hình máy bay trực thăng
Man_Ebook
 
Đề tài: Hệ thống giám sát quá trình chiết rót và đóng nắp chai tự động
Đề tài: Hệ thống giám sát quá trình chiết rót và đóng nắp chai tự độngĐề tài: Hệ thống giám sát quá trình chiết rót và đóng nắp chai tự động
Đề tài: Hệ thống giám sát quá trình chiết rót và đóng nắp chai tự động
Dịch vụ viết bài trọn gói ZALO 0917193864
 

What's hot (20)

Luận văn Thạc sĩ Nghiên cứu các kỹ thuật của IoT và các ứng dụng của nó cho n...
Luận văn Thạc sĩ Nghiên cứu các kỹ thuật của IoT và các ứng dụng của nó cho n...Luận văn Thạc sĩ Nghiên cứu các kỹ thuật của IoT và các ứng dụng của nó cho n...
Luận văn Thạc sĩ Nghiên cứu các kỹ thuật của IoT và các ứng dụng của nó cho n...
 
Đề tài: Thiết kế hệ thống giám sát nhiệt độ - độ ẩm phòng trồng nấm bào ngư
Đề tài: Thiết kế hệ thống giám sát nhiệt độ - độ ẩm phòng trồng nấm bào ngưĐề tài: Thiết kế hệ thống giám sát nhiệt độ - độ ẩm phòng trồng nấm bào ngư
Đề tài: Thiết kế hệ thống giám sát nhiệt độ - độ ẩm phòng trồng nấm bào ngư
 
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAYĐề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
Đề tài: Xây dựng bộ PID điều khiển mức nước trong bể chứa, HAY
 
Đề tài: Mô hình ứng dụng IOT điều khiển các thiết bị điện trong nhà
Đề tài: Mô hình ứng dụng IOT điều khiển các thiết bị điện trong nhàĐề tài: Mô hình ứng dụng IOT điều khiển các thiết bị điện trong nhà
Đề tài: Mô hình ứng dụng IOT điều khiển các thiết bị điện trong nhà
 
File báo cáo đồ án smarthome
File báo cáo đồ án smarthomeFile báo cáo đồ án smarthome
File báo cáo đồ án smarthome
 
Đề tài: Chế tạo và điều khiển cánh tay robot 3 bậc tự do, HAY
Đề tài: Chế tạo và điều khiển cánh tay robot 3 bậc tự do, HAYĐề tài: Chế tạo và điều khiển cánh tay robot 3 bậc tự do, HAY
Đề tài: Chế tạo và điều khiển cánh tay robot 3 bậc tự do, HAY
 
Đề tài: Mạch điều khiển thiết bị bằng Android qua Bluetooth, HAY
Đề tài: Mạch điều khiển thiết bị bằng Android qua Bluetooth, HAYĐề tài: Mạch điều khiển thiết bị bằng Android qua Bluetooth, HAY
Đề tài: Mạch điều khiển thiết bị bằng Android qua Bluetooth, HAY
 
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng GatewayĐề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
Đề tài: Hệ thống Iot phục vụ cho nông nghiệp ứng dụng Gateway
 
Báo cáo thực tập môn học an ninh mạng tìm hiểu về mô hình mạng
Báo cáo thực tập môn học an ninh mạng tìm hiểu về mô hình mạngBáo cáo thực tập môn học an ninh mạng tìm hiểu về mô hình mạng
Báo cáo thực tập môn học an ninh mạng tìm hiểu về mô hình mạng
 
Đề tài: Hệ thống phân loại cà chua theo màu sắc, HAY, 9đ
Đề tài: Hệ thống phân loại cà chua theo màu sắc, HAY, 9đĐề tài: Hệ thống phân loại cà chua theo màu sắc, HAY, 9đ
Đề tài: Hệ thống phân loại cà chua theo màu sắc, HAY, 9đ
 
mạng truyền thông công nghiệp
mạng truyền thông công nghiệpmạng truyền thông công nghiệp
mạng truyền thông công nghiệp
 
Đề tài: Nhận dạng, phân loại, xử lý ảnh biển số xe bằng phần mềm
Đề tài: Nhận dạng, phân loại, xử lý ảnh biển số xe bằng phần mềmĐề tài: Nhận dạng, phân loại, xử lý ảnh biển số xe bằng phần mềm
Đề tài: Nhận dạng, phân loại, xử lý ảnh biển số xe bằng phần mềm
 
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAYLuận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
Luận văn: Nghiên cứu hệ thống trợ lý thông minh ảo, HAY
 
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinetLập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
Lập trình PLC S7 1200 tiếng Việt-Chuong 6 profinet
 
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.docĐồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
Đồ án hệ thống điều khiển và giám sát các thiết bị trong nhà.doc
 
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PIDĐề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
 
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đĐề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
Đề tài: Ứng dụng giải trí trên thiết bị di động Android, HOt, 9đ
 
thuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu sothuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu so
 
Thiết kế bộ điều khiển mờ chỉnh định tham số pid cho mô hình máy bay trực thăng
Thiết kế bộ điều khiển mờ chỉnh định tham số pid cho mô hình máy bay trực thăngThiết kế bộ điều khiển mờ chỉnh định tham số pid cho mô hình máy bay trực thăng
Thiết kế bộ điều khiển mờ chỉnh định tham số pid cho mô hình máy bay trực thăng
 
Đề tài: Hệ thống giám sát quá trình chiết rót và đóng nắp chai tự động
Đề tài: Hệ thống giám sát quá trình chiết rót và đóng nắp chai tự độngĐề tài: Hệ thống giám sát quá trình chiết rót và đóng nắp chai tự động
Đề tài: Hệ thống giám sát quá trình chiết rót và đóng nắp chai tự động
 

Similar to Đề tài: Thiết kế game mini trên Kit Stm32f746g_Discovery, HOT

Đề tài: Quản lý dữ liệu bệnh nhân sử dụng công nghệ Rfid, HAY
Đề tài: Quản lý dữ liệu bệnh nhân sử dụng công nghệ Rfid, HAYĐề tài: Quản lý dữ liệu bệnh nhân sử dụng công nghệ Rfid, HAY
Đề tài: Quản lý dữ liệu bệnh nhân sử dụng công nghệ Rfid, HAY
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đĐề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Phương pháp tối ưu trong giai đoạn phát triển phần mềm nhũng
Phương pháp tối ưu trong giai đoạn phát triển phần mềm nhũngPhương pháp tối ưu trong giai đoạn phát triển phần mềm nhũng
Phương pháp tối ưu trong giai đoạn phát triển phần mềm nhũng
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Cảnh báo sinh viên thông qua hệ thống quét vân tay, 9đ
Đề tài: Cảnh báo sinh viên thông qua hệ thống quét vân tay, 9đĐề tài: Cảnh báo sinh viên thông qua hệ thống quét vân tay, 9đ
Đề tài: Cảnh báo sinh viên thông qua hệ thống quét vân tay, 9đ
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Đề tài: Tìm hiểu hệ điều hành Android Wear, HAY, 9đ
Đề tài: Tìm hiểu hệ điều hành Android Wear, HAY, 9đĐề tài: Tìm hiểu hệ điều hành Android Wear, HAY, 9đ
Đề tài: Tìm hiểu hệ điều hành Android Wear, HAY, 9đ
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
jackjohn45
 
Kiểm chứng giao diện phần mềm bằng mô hình hóa event – B
Kiểm chứng giao diện phần mềm bằng mô hình hóa event – BKiểm chứng giao diện phần mềm bằng mô hình hóa event – B
Kiểm chứng giao diện phần mềm bằng mô hình hóa event – B
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAYĐề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Giải pháp bảo mật và xác thực thư điện tử dựa trên công nghệ mở
Giải pháp bảo mật và xác thực thư điện tử dựa trên công nghệ mởGiải pháp bảo mật và xác thực thư điện tử dựa trên công nghệ mở
Giải pháp bảo mật và xác thực thư điện tử dựa trên công nghệ mở
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Nghiên cứu mô phỏng trên phần mềm sscnc phục vụ gia công một số sản phẩm trên...
Nghiên cứu mô phỏng trên phần mềm sscnc phục vụ gia công một số sản phẩm trên...Nghiên cứu mô phỏng trên phần mềm sscnc phục vụ gia công một số sản phẩm trên...
Nghiên cứu mô phỏng trên phần mềm sscnc phục vụ gia công một số sản phẩm trên...
Man_Ebook
 
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọnĐề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOTHệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Nghiên cứu phương pháp phân tích phần mềm mã độc.pdf
Nghiên cứu phương pháp phân tích phần mềm mã độc.pdfNghiên cứu phương pháp phân tích phần mềm mã độc.pdf
Nghiên cứu phương pháp phân tích phần mềm mã độc.pdf
HanaTiti
 
Luận văn: Cải tiến công cụ SEO PANEL, HAY, 9đ
Luận văn: Cải tiến công cụ SEO PANEL, HAY, 9đLuận văn: Cải tiến công cụ SEO PANEL, HAY, 9đ
Luận văn: Cải tiến công cụ SEO PANEL, HAY, 9đ
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAYĐề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Luận văn: Ứng dụng chữ số trong quá trình gửi nhận tài liệu điện tử
Luận văn: Ứng dụng chữ số trong quá trình gửi nhận tài liệu điện tửLuận văn: Ứng dụng chữ số trong quá trình gửi nhận tài liệu điện tử
Luận văn: Ứng dụng chữ số trong quá trình gửi nhận tài liệu điện tử
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Đề tài: Thiết kế bộ thí nghiệm vi xử lý giao tiếp Kit Intel Galileo
Đề tài: Thiết kế bộ thí nghiệm vi xử lý giao tiếp Kit Intel GalileoĐề tài: Thiết kế bộ thí nghiệm vi xử lý giao tiếp Kit Intel Galileo
Đề tài: Thiết kế bộ thí nghiệm vi xử lý giao tiếp Kit Intel Galileo
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Luận văn thạc sĩ máy tính.
Luận văn thạc sĩ máy tính.Luận văn thạc sĩ máy tính.
Luận văn thạc sĩ máy tính.
ssuser499fca
 
Nghiên cứu công nghệ mã vạch hai chiều và đề xuất dự án ứng dụng nghiệp vụ nh...
Nghiên cứu công nghệ mã vạch hai chiều và đề xuất dự án ứng dụng nghiệp vụ nh...Nghiên cứu công nghệ mã vạch hai chiều và đề xuất dự án ứng dụng nghiệp vụ nh...
Nghiên cứu công nghệ mã vạch hai chiều và đề xuất dự án ứng dụng nghiệp vụ nh...
HanaTiti
 
Luận văn: Nhận diện các dạng bề mặt phục vụ phân loại vật thể
Luận văn: Nhận diện các dạng bề mặt phục vụ phân loại vật thểLuận văn: Nhận diện các dạng bề mặt phục vụ phân loại vật thể
Luận văn: Nhận diện các dạng bề mặt phục vụ phân loại vật thể
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 

Similar to Đề tài: Thiết kế game mini trên Kit Stm32f746g_Discovery, HOT (20)

Đề tài: Quản lý dữ liệu bệnh nhân sử dụng công nghệ Rfid, HAY
Đề tài: Quản lý dữ liệu bệnh nhân sử dụng công nghệ Rfid, HAYĐề tài: Quản lý dữ liệu bệnh nhân sử dụng công nghệ Rfid, HAY
Đề tài: Quản lý dữ liệu bệnh nhân sử dụng công nghệ Rfid, HAY
 
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đĐề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
Đề tài: Thiết kế và thi công khung ảnh điện tử, HAY, 9đ
 
Phương pháp tối ưu trong giai đoạn phát triển phần mềm nhũng
Phương pháp tối ưu trong giai đoạn phát triển phần mềm nhũngPhương pháp tối ưu trong giai đoạn phát triển phần mềm nhũng
Phương pháp tối ưu trong giai đoạn phát triển phần mềm nhũng
 
Đề tài: Cảnh báo sinh viên thông qua hệ thống quét vân tay, 9đ
Đề tài: Cảnh báo sinh viên thông qua hệ thống quét vân tay, 9đĐề tài: Cảnh báo sinh viên thông qua hệ thống quét vân tay, 9đ
Đề tài: Cảnh báo sinh viên thông qua hệ thống quét vân tay, 9đ
 
Đề tài: Tìm hiểu hệ điều hành Android Wear, HAY, 9đ
Đề tài: Tìm hiểu hệ điều hành Android Wear, HAY, 9đĐề tài: Tìm hiểu hệ điều hành Android Wear, HAY, 9đ
Đề tài: Tìm hiểu hệ điều hành Android Wear, HAY, 9đ
 
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
Xây dựng chatbot bán hàng dựa trên mô hình sinh luận văn thạc sĩ công nghệ th...
 
Kiểm chứng giao diện phần mềm bằng mô hình hóa event – B
Kiểm chứng giao diện phần mềm bằng mô hình hóa event – BKiểm chứng giao diện phần mềm bằng mô hình hóa event – B
Kiểm chứng giao diện phần mềm bằng mô hình hóa event – B
 
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAYĐề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
Đề tài: Robot vận chuyển mẫu xét nghiệm trong bệnh viện, HAY
 
Giải pháp bảo mật và xác thực thư điện tử dựa trên công nghệ mở
Giải pháp bảo mật và xác thực thư điện tử dựa trên công nghệ mởGiải pháp bảo mật và xác thực thư điện tử dựa trên công nghệ mở
Giải pháp bảo mật và xác thực thư điện tử dựa trên công nghệ mở
 
Nghiên cứu mô phỏng trên phần mềm sscnc phục vụ gia công một số sản phẩm trên...
Nghiên cứu mô phỏng trên phần mềm sscnc phục vụ gia công một số sản phẩm trên...Nghiên cứu mô phỏng trên phần mềm sscnc phục vụ gia công một số sản phẩm trên...
Nghiên cứu mô phỏng trên phần mềm sscnc phục vụ gia công một số sản phẩm trên...
 
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọnĐề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
 
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOTHệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
Hệ thống chăm sóc vườn lan sử dụng năng lượng mặt trời, HOT
 
Nghiên cứu phương pháp phân tích phần mềm mã độc.pdf
Nghiên cứu phương pháp phân tích phần mềm mã độc.pdfNghiên cứu phương pháp phân tích phần mềm mã độc.pdf
Nghiên cứu phương pháp phân tích phần mềm mã độc.pdf
 
Luận văn: Cải tiến công cụ SEO PANEL, HAY, 9đ
Luận văn: Cải tiến công cụ SEO PANEL, HAY, 9đLuận văn: Cải tiến công cụ SEO PANEL, HAY, 9đ
Luận văn: Cải tiến công cụ SEO PANEL, HAY, 9đ
 
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAYĐề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
Đề tài: Hệ thống giám sát nông nghiệp bằng công nghệ Iot, HAY
 
Luận văn: Ứng dụng chữ số trong quá trình gửi nhận tài liệu điện tử
Luận văn: Ứng dụng chữ số trong quá trình gửi nhận tài liệu điện tửLuận văn: Ứng dụng chữ số trong quá trình gửi nhận tài liệu điện tử
Luận văn: Ứng dụng chữ số trong quá trình gửi nhận tài liệu điện tử
 
Đề tài: Thiết kế bộ thí nghiệm vi xử lý giao tiếp Kit Intel Galileo
Đề tài: Thiết kế bộ thí nghiệm vi xử lý giao tiếp Kit Intel GalileoĐề tài: Thiết kế bộ thí nghiệm vi xử lý giao tiếp Kit Intel Galileo
Đề tài: Thiết kế bộ thí nghiệm vi xử lý giao tiếp Kit Intel Galileo
 
Luận văn thạc sĩ máy tính.
Luận văn thạc sĩ máy tính.Luận văn thạc sĩ máy tính.
Luận văn thạc sĩ máy tính.
 
Nghiên cứu công nghệ mã vạch hai chiều và đề xuất dự án ứng dụng nghiệp vụ nh...
Nghiên cứu công nghệ mã vạch hai chiều và đề xuất dự án ứng dụng nghiệp vụ nh...Nghiên cứu công nghệ mã vạch hai chiều và đề xuất dự án ứng dụng nghiệp vụ nh...
Nghiên cứu công nghệ mã vạch hai chiều và đề xuất dự án ứng dụng nghiệp vụ nh...
 
Luận văn: Nhận diện các dạng bề mặt phục vụ phân loại vật thể
Luận văn: Nhận diện các dạng bề mặt phục vụ phân loại vật thểLuận văn: Nhận diện các dạng bề mặt phục vụ phân loại vật thể
Luận văn: Nhận diện các dạng bề mặt phục vụ phân loại vật thể
 

More from Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864

Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.docYếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.docTừ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.docTác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.docSong Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.docỨng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.docVai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.docThu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.docTạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 

More from Dịch Vụ Viết Bài Trọn Gói ZALO 0917193864 (20)

Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.docYếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
Yếu Tố Tự Truyện Trong Truyện Ngắn Thạch Lam Và Thanh Tịnh.doc
 
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.docTừ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
Từ Ngữ Biểu Thị Tâm Lí – Tình Cảm Trong Ca Dao Người Việt.doc
 
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
Quản Lý Hoạt Động Dạy Học Các Môn Khoa Học Tự Nhiên Theo Chuẩn Kiến Thức Và K...
 
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
Quản Lý Thu Thuế Giá Trị Gia Tăng Đối Với Doanh Nghiệp Ngoài Quốc Doanh Trên ...
 
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
Thu Hút Nguồn Nhân Lực Trình Độ Cao Vào Các Cơ Quan Hành Chính Nhà Nước Tỉnh ...
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thương Mại ...
 
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
Vaporisation Of Single And Binary Component Droplets In Heated Flowing Gas St...
 
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
Quản Lý Hoạt Động Dạy Học Các Trường Thpt Trên Địa Bàn Huyện Sơn Hà Tỉnh Quản...
 
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.docTác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
Tác Giả Hàm Ẩn Trong Tiểu Thuyết Nguyễn Việt Hà.doc
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Ngắn Hạn Tại Ngân Hàng Công Thƣơng Chi...
 
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
Quản Lý Nhà Nước Về Nuôi Trồng Thủy Sản Nước Ngọt Trên Địa Bàn Thành Phố Hải ...
 
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.docSong Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
Song Song Hóa Các Thuật Toán Trên Mạng Đồ Thị.doc
 
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.docỨng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
Ứng Dụng Số Phức Trong Các Bài Toán Sơ Cấp.doc
 
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.docVai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
Vai Trò Của Cái Bi Trong Giáo Dục Thẩm Mỹ.doc
 
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
Quản Lý Hoạt Động Giáo Dục Ngoài Giờ Lên Lớp Ở Các Trường Thcs Huyện Chư Păh ...
 
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.docThu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
Thu Hút Vốn Đầu Tư Vào Lĩnh Vực Nông Nghiệp Trên Địa Bàn Tỉnh Gia Lai.doc
 
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
Quản Lý Hoạt Động Dạy Học Ngoại Ngữ Tại Các Trung Tâm Ngoại Ngữ - Tin Học Trê...
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Doanh Nghiệp Tại Ngân Hàng Thƣơng Mại ...
 
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.docTạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
Tạo Việc Làm Cho Thanh Niên Trên Địa Bàn Quận Thanh Khê, Thành Phố Đà Nẵng.doc
 
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
Quản Trị Rủi Ro Tín Dụng Trong Cho Vay Trung Và Dài Hạn Tại Ngân Hàng Thương ...
 

Recently uploaded

trắc nhiệm ký sinh.docxddddddddddddddddd
trắc nhiệm ký sinh.docxdddddddddddddddddtrắc nhiệm ký sinh.docxddddddddddddddddd
trắc nhiệm ký sinh.docxddddddddddddddddd
my21xn0084
 
40 câu hỏi - đáp Bộ luật dân sự năm 2015 (1).doc
40 câu hỏi - đáp Bộ  luật dân sự năm  2015 (1).doc40 câu hỏi - đáp Bộ  luật dân sự năm  2015 (1).doc
40 câu hỏi - đáp Bộ luật dân sự năm 2015 (1).doc
NguynDimQunh33
 
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdfSLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
UyenDang34
 
Smartbiz_He thong MES nganh may mac_2024june
Smartbiz_He thong MES nganh may mac_2024juneSmartbiz_He thong MES nganh may mac_2024june
Smartbiz_He thong MES nganh may mac_2024june
SmartBiz
 
Halloween vocabulary for kids in primary school
Halloween vocabulary for kids in primary schoolHalloween vocabulary for kids in primary school
Halloween vocabulary for kids in primary school
AnhPhm265031
 
Giải phẫu tim sau đại học- LÊ QUANG TUYỀN
Giải phẫu tim sau đại học- LÊ QUANG TUYỀNGiải phẫu tim sau đại học- LÊ QUANG TUYỀN
Giải phẫu tim sau đại học- LÊ QUANG TUYỀN
linh miu
 
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptxLỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
12D241NguynPhmMaiTra
 
insulin cho benh nhan nam vien co tang duong huyet
insulin cho benh nhan nam vien co tang duong huyetinsulin cho benh nhan nam vien co tang duong huyet
insulin cho benh nhan nam vien co tang duong huyet
lmhong80
 
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docxVăn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
metamngoc123
 
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docxBÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
HngL891608
 
PLĐC-chương 1 (1).ppt của trường ĐH Ngoại thương
PLĐC-chương 1 (1).ppt của trường  ĐH Ngoại thươngPLĐC-chương 1 (1).ppt của trường  ĐH Ngoại thương
PLĐC-chương 1 (1).ppt của trường ĐH Ngoại thương
hieutrinhvan27052005
 
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdfCau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
HngMLTh
 
THONG BAO nop ho so xet tuyen TS6 24-25.pdf
THONG BAO nop ho so xet tuyen TS6 24-25.pdfTHONG BAO nop ho so xet tuyen TS6 24-25.pdf
THONG BAO nop ho so xet tuyen TS6 24-25.pdf
QucHHunhnh
 
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
Nguyen Thanh Tu Collection
 
FSSC 22000 version 6_Seminar_FINAL end.pptx
FSSC 22000 version 6_Seminar_FINAL end.pptxFSSC 22000 version 6_Seminar_FINAL end.pptx
FSSC 22000 version 6_Seminar_FINAL end.pptx
deviv80273
 
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang ThiềuBiểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
lamluanvan.net Viết thuê luận văn
 
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
Nguyen Thanh Tu Collection
 
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
khanhthy3000
 

Recently uploaded (18)

trắc nhiệm ký sinh.docxddddddddddddddddd
trắc nhiệm ký sinh.docxdddddddddddddddddtrắc nhiệm ký sinh.docxddddddddddddddddd
trắc nhiệm ký sinh.docxddddddddddddddddd
 
40 câu hỏi - đáp Bộ luật dân sự năm 2015 (1).doc
40 câu hỏi - đáp Bộ  luật dân sự năm  2015 (1).doc40 câu hỏi - đáp Bộ  luật dân sự năm  2015 (1).doc
40 câu hỏi - đáp Bộ luật dân sự năm 2015 (1).doc
 
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdfSLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
SLIDE BÀI GIẢNG MÔN THƯƠNG MẠI ĐIỆN TỬ.pdf
 
Smartbiz_He thong MES nganh may mac_2024june
Smartbiz_He thong MES nganh may mac_2024juneSmartbiz_He thong MES nganh may mac_2024june
Smartbiz_He thong MES nganh may mac_2024june
 
Halloween vocabulary for kids in primary school
Halloween vocabulary for kids in primary schoolHalloween vocabulary for kids in primary school
Halloween vocabulary for kids in primary school
 
Giải phẫu tim sau đại học- LÊ QUANG TUYỀN
Giải phẫu tim sau đại học- LÊ QUANG TUYỀNGiải phẫu tim sau đại học- LÊ QUANG TUYỀN
Giải phẫu tim sau đại học- LÊ QUANG TUYỀN
 
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptxLỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
LỊCH SỬ 12 - CHUYÊN ĐỀ 10 - TRẮC NGHIỆM.pptx
 
insulin cho benh nhan nam vien co tang duong huyet
insulin cho benh nhan nam vien co tang duong huyetinsulin cho benh nhan nam vien co tang duong huyet
insulin cho benh nhan nam vien co tang duong huyet
 
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docxVăn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
Văn 7. Truyện ngụ ngôn Rùa và thỏ+ Viết PT nhân vật.docx
 
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docxBÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
BÁO CÁO CUỐI KỲ PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG - NHÓM 7.docx
 
PLĐC-chương 1 (1).ppt của trường ĐH Ngoại thương
PLĐC-chương 1 (1).ppt của trường  ĐH Ngoại thươngPLĐC-chương 1 (1).ppt của trường  ĐH Ngoại thương
PLĐC-chương 1 (1).ppt của trường ĐH Ngoại thương
 
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdfCau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
Cau-Trắc-Nghiệm-TTHCM-Tham-Khảo-THI-CUỐI-KI.pdf
 
THONG BAO nop ho so xet tuyen TS6 24-25.pdf
THONG BAO nop ho so xet tuyen TS6 24-25.pdfTHONG BAO nop ho so xet tuyen TS6 24-25.pdf
THONG BAO nop ho so xet tuyen TS6 24-25.pdf
 
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
BÀI TẬP BỔ TRỢ TIẾNG ANH I-LEARN SMART WORLD 9 CẢ NĂM CÓ TEST THEO UNIT NĂM H...
 
FSSC 22000 version 6_Seminar_FINAL end.pptx
FSSC 22000 version 6_Seminar_FINAL end.pptxFSSC 22000 version 6_Seminar_FINAL end.pptx
FSSC 22000 version 6_Seminar_FINAL end.pptx
 
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang ThiềuBiểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
Biểu tượng trăng và bầu trời trong tác phẩm của Nguyễn Quang Thiều
 
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
CHUYÊN ĐỀ DẠY THÊM HÓA HỌC LỚP 10 - SÁCH MỚI - FORM BÀI TẬP 2025 (DÙNG CHUNG ...
 
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
100 DẪN CHỨNG NGHỊ LUẬN XÃ HỘiI HAY.docx
 

Đề tài: Thiết kế game mini trên Kit Stm32f746g_Discovery, HOT

  • 1. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH --------------------------------- ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ GAME MINI TRÊN KIT STM32F746G_DISCOVERY GVHD: Ths Phan Vân Hoàn SVTH: Võ Phương Duy MSSV:14141044 TP Hồ Chí Minh – 06/2018
  • 2. BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH --------------------------------- ĐỒ ÁN TỐT NGHIỆP NGÀNH KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG ĐỀ TÀI: THIẾT KẾ GAME MINI TRÊN KIT STM32F746G_DISCOVERY GVHD: Ths Phan Vân Hoàn SVTH: Võ Phương Duy MSSV:14141044 TP Hồ Chí Minh – 06/2018
  • 3. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH iii TRƯỜNG ĐH. SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP. HỒ CHÍ MINH ĐỘC LẬP - TỰ DO - HẠNH PHÚC KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Tp. HCM, tháng 03 năm 2018 NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Võ Phương Duy MSSV: 14141044 Chuyên ngành: CNKT Điện Tử Truyền Thông Mã ngành: 41 Hệ đào tạo: Đại học chính quy Mã hệ: 1 Khóa: 2014 Lớp: 14141DT1A I. TÊN ĐỀ TÀI: THIẾT KẾ GAME MINI TRÊN KIT STM32F746G_DISCOVERY II. NHIỆM VỤ 1. Các số liệu ban đầu:  Khảo sát các loại vi điều khiển, lựa chọn màn hình cảm ứng, tay cầm PS2, module âm thanh.  Tìm hiểu và thu thập các số liệu từ các trang mạng và sách về lập trình vi điều khiển ARM.  Tìm hiểu các tài liệu hướng dẫn sử dụng tay cầm PS2, module giải mã âm thanh. 2. Nội dung thực hiện:  NỘI DUNG 1: Nghiên cứu tài liệu về module VS1003, tay cầm PS2, KIT STM32F746 DISCOVERY.  NỘI DUNG 2: Dựa trên các dữ liệu thu thập được, lựa chọn giải pháp thiết kế và thi công mô hình kết nối các module với KIT điều khiển.  NỘI DUNG 3: Thiết kế lưu đồ giải thuật và viết chương trình điều khiển cho vi điều khiển, thiết kế giao diện màn hình chơi game.  NỘI DUNG 4: Thử nghiệm và điều chỉnh phần mềm cũng như phần cứng để mô hình được tối ưu, sử dụng dễ dàng. Đánh giá các thông số của mô hình so với thông số thực tế.  NỘI DUNG 5: Viết báo cáo thực hiện. III. NGÀY GIAO NHIỆM VỤ: 07/03/2018
  • 4. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH iv IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 28/06/2018 V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS. Phan Vân Hoàn CÁN BỘ HƯỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
  • 5. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH v TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH KHOA ĐIỆN-ĐIỆN TỬ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ĐỘC LẬP - TỰ DO - HẠNH PHÚC ----o0o---- Tp. HCM, ngày 28 tháng 6 năm 2018 LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: Võ Phương Duy Lớp: 14141DT1A MSSV:14141044 Tên đề tài: THIẾT KẾ GAME MINI TRÊN KIT STM32F746G_DISCOVERY Tuần/ngày Nội dung Xác nhận GVHD Tuần 1 Gặp GVHD nhận đề tài Nhận tài liệu hướng dẫn từ GVHD Tuần 2 Viết báo cáo Chương 1 Đọc tài liệu kĩ thuật KIT STM32, PS2 Tuần 3 Viết báo cáo Chương 1 Lập trình Game Cờ Caro Tuần 4 Viết báo cáo Chương 2 Lập trình Game Cờ Caro Lập trình Game Ball Bing Ball
  • 6. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH vi Lập trình giao tiếp tay cầm PS2 Tuần 5 Viết báo cáo Chương 2 Lập trình, chỉnh sửa game Ball Bing Bong Tìm hiểu phương pháp giao tiếp module VS1003 Tuần 6 Viết báo cáo Chương 3 Lập trình Game Flappy Bird Giao tiếp thẻ nhớ nhưng lỗi Tuần 7 Viết báo cáo Chương 3 Lập trình, chỉnh sửa Game Flappy Bird Giao tiếp được với thẻ nhớ Tuần 8 Viết báo cáo Chương 4 Lập trình Game Stick Hero Giao tiếp thành công module VS1003 Thi công mạch kết nối Tuần 9 Viết báo cáo Chương 4 Tạo file nhạc cho các Game Lập trình Game Ai Là Triệu Phú Tuần 10 Viết báo cáo Chương 5 Lập trình Game Ai Là Triệu Phú Tuần 11 Viết báo cáo Chương 5 Lập trình Game Vòng Quay Sát Phạt Tuần 12 Viết báo cáo Chương 6 Lập trình Game Vòng Quay Sát Phạt
  • 7. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH vii Lập trình Game Pika Pika Tuần 13 Chỉnh sửa báo cáo Chỉnh sửa code Làm hộp cho mạch GV HƯỚNG DẪN (Ký và ghi rõ họ và tên)
  • 8. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH viii CAM ĐOAN Tôi xin cam đoan đề tài được thực hiện dựa trên các tài liệu có trước. Không sao chép từ bất kỳ nguồn tài liệu hay công trình nào khác. Tôi xin chịu trách nhiệm với lời cam đoan này. Người thực hiện Võ Phương Duy
  • 9. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH ix LỜI CÁM ƠN Tôi xin cám ơn sâu sắc đến thầy Phan Vân Hoàn đã trực tiếp hướng dẫn và tận tình giúp đỡ, tạo điều kiện để tôi hoàn thành đề tài. Tôi xin gửi lời chân thành cám ơn các thầy cô trong Khoa Điện - Điện Tử đã giúp đỡ tôi hoàn thành đề tài. Tôi cũng gửi lời đồng cám ơn đến các bạn lớp 14141DT1A đã chia sẻ trao đổi kiến thức cũng như những kinh nghiệm quý báu trong thời gian thực hiện đề tài. Xin cảm ơn đến cha mẹ. Xin chân thành cám ơn! Người thực hiện đề tài Võ Phương Duy
  • 10. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH x MỤC LỤC BÌA NGOÀI.....................................................................................................................i BÌA TRONG...................................................................................................................ii NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP..............................................................................iii LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ..................................................... v CAM ĐOAN................................................................................................................viii LỜI CÁM ƠN................................................................................................................ix MỤC LỤC ...................................................................................................................... x DANH SÁCH HÌNH ....................................................................................................xii DANH SÁCH BẢNG..................................................................................................xiii TÓM TẮT..................................................................................................................... xv Chương 1: TỔNG QUAN ......................................................................................... 1 1.1. ĐẶT VẤN ĐỀ......................................................................................................................... 1 1.2. MỤC TIÊU.............................................................................................................................. 1 1.3. NỘI DUNG NGHIÊN CỨU ................................................................................................... 2 1.4. GIỚI HẠN............................................................................................................................... 2 1.5. BỐ CỤC .................................................................................................................................. 3 Chương 2: CƠ SỞ LÝ THUYẾT.............................................................................. 4 2.1. MÔ TẢ QUÁ TRÌNH HOẠT ĐỘNG..................................................................................... 4 2.2. TỔNG QUAN LÝ THUYẾT.................................................................................................. 4 2.2.1 Tổng quan ARM.............................................................................................................. 4 2.2.2 Giới thiệu về ARM-M7- STM32F746G-DISCOVERY ................................................. 6 2.2.3 Module giải mã âm thanh VS1003-v2............................................................................. 8 2.2.4 Tay cầm game Dualshock 2 .......................................................................................... 10 2.2.5 Chuẩn truyền nhận SPI.................................................................................................. 13 2.2.6 Chuẩn giao tiếp SDMMC.............................................................................................. 15 Chương 3: TÍNH TOÁN_THIẾT KẾ ..................................................................... 18 3.1. GIỚI THIỆU.......................................................................................................................... 18 3.2. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG .......................................................................... 18 3.3.1 Thiết kế sơ đồ khối............................................................................................................ 18 3.3.2 Tính toán và thiết kế mạch ................................................................................................ 19
  • 11. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xi a. Khối điều khiển, cảm ứng và hiển thị.................................................................................... 19 b. Khối tay cầm ......................................................................................................................... 23 c. Khối âm thanh ....................................................................................................................... 24 d. Khối nguồn............................................................................................................................ 26 3.3.3 Sơ đồ nguyên lý toàn mạch ............................................................................................... 27 Chương 4: THI CÔNG HỆ THỐNG ...................................................................... 28 4.1. GIỚI THIỆU.......................................................................................................................... 28 4.2. THI CÔNG HỆ THỐNG....................................................................................................... 28 4.2.1 Thi công bo mạch.......................................................................................................... 28 4.2.2 Lắp ráp, hàn linh kiện và kiểm tra................................................................................. 30 4.2.3 Đóng gói sản phẩm........................................................................................................ 31 4.3. LẬP TRÌNH HỆ THỐNG..................................................................................................... 31 4.3.1 Lưu đồ giải thuật ........................................................................................................... 31 a. Game Cờ Caro....................................................................................................................... 33 b. Game Ball Bing Bong ........................................................................................................... 35 c. Game Flappy Bird:................................................................................................................ 39 d. Game Stick Hero:.................................................................................................................. 42 e. Game Ai Là Triệu Phú: ......................................................................................................... 46 f. Game Vòng Quay Sát Phạt:................................................................................................... 47 g. Game Pika Pika: .................................................................................................................... 50 4.3.2 Phần mềm lập trình cho vi điều khiển........................................................................... 52 4.4. TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC:........................................................... 55 Chương 5: KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ ................................................. 61 5.1. KẾT QUẢ ............................................................................................................................. 61 5.2. ĐÁNH GIÁ KẾT QUẢ, NHẬN XÉT VÀ ĐÁNH GIÁ ....................................................... 62 Chương 6: KẾT LUẬN_HƯỚNG PHÁT TRIỂN.................................................. 66 6.1. KẾT LUẬN........................................................................................................................... 66 6.2. HƯỚNG PHÁT TRIỂN ........................................................................................................ 66 TÀI LIỆU THAM KHẢO ............................................................................................ 67 PHỤ LỤC...................................................................................................................... 68
  • 12. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xii DANH SÁCH HÌNH Hình 1-1. Một số game nổi tiếng. ................................................................................... 1 Hình 2-1. Kiến trúc của vi xử lí ARM Cotex-M7. ......................................................... 6 Hình 2-2. KIT STM32F746 Discovery........................................................................... 7 Hình 2-3. Sơ đồ cấu trúc và sơ đồ chân VS1003............................................................ 8 Hình 2-4. Tay cầm PS2................................................................................................. 10 Hình 2-5. Màu và sơ đồ dây đầu cắm PS2.................................................................... 12 Hình 2-6. Sơ đồ kết nối chuẩn SPI Master-Slave......................................................... 14 Hình 2-7 Quá trình truyền nhận SPI. ............................................................................ 15 Hình 2-8. Quá trình đọc dữ hiệu................................................................................... 16 Hình 2-9. Quá trình ghi dữ liệu..................................................................................... 16 Hình 2-10. Sơ đồ khối SDMMC................................................................................... 17 Hình 3-1 Sơ đồ khối hệ thống....................................................................................... 18 Hình 3-2. Mặt trên của KIT. ......................................................................................... 20 Hình 3-3. Sơ đồ bố trí Arduino Connectors, SD card adapter...................................... 22 Hình 3-4. Tay cầm PS2................................................................................................. 23 Hình 3-5. Sơ đồ khối nối STM32F746 với PS2. .......................................................... 24 Hình 3-6. Module VS1003............................................................................................ 25 Hình 3-7. Sơ đồ kết nối STM32F746 với VS1003....................................................... 26 Hình 3-8. Sơ đồ kết nối nguồn ngoài cho STM32F746................................................ 27 Hình 3-9. Sơ đồ nguyên lý chung của hệ thống............................................................ 27 Hình 4-1. Sơ đồ PCB mạch kết nối STM với PS2 và VS1003..................................... 28 Hình 4-2. Sơ đồ PCB 3D mạch kết nối STM với PS2 và VS1003............................... 29 Hình 4-3. Sơ đồ bố trí linh kiện mạch kết nối STM với PS2 và VS1003..................... 29 Hình 4-4. Khung của mạch........................................................................................... 31 Hình 4-5. Lưu đồ chương trình chính........................................................................... 32 Hình 4-6. Lưu đồ đọc/phát nhạc. .................................................................................. 32 Hình 4-7. Lưu đồ chính game Cờ Caro. ....................................................................... 33 Hình 4-8. Lưu đồ xử lý nước đi.................................................................................... 34 Hình 4-9. Lưu đồ vẽ nước đi......................................................................................... 34 Hình 4-10. Lưu đồ chính của game. ............................................................................. 35 Hình 4-11. Lưu đồ chọn chế độ chơi. ........................................................................... 36 Hình 4-12. Lưu đồ xử lý 1 người chơi......................................................................... 37 Hình 4-13. Lưu đồ xử lý 2 người chơi.......................................................................... 38 Hình 4-14. Lưu đồ xử lý thua. ...................................................................................... 39 Hình 4-15. Lưu đồ chính game Flappy Bird................................................................. 40 Hình 4-16. Lưu đồ di chuyển trụ. ................................................................................. 41
  • 13. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xiii Hình 4-17. Kiểm tra thua. ............................................................................................. 41 Hình 4-18. Lưu đồ di chuyển Bird lên.......................................................................... 42 Hình 4-19. Lưu đồ chính game Stick Hero................................................................... 43 Hình 4-20. Lưu đồ bước 1............................................................................................. 43 Hình 4-21. Lưu đồ bước 2............................................................................................. 44 Hình 4-22. Lưu đồ bước 3............................................................................................. 44 Hình 4-23. Lưu đồ bước 4............................................................................................. 45 Hình 4-24. Lưu đồ bước 5............................................................................................. 45 Hình 4-25. Lưu đồ game Ai là triệu phú....................................................................... 46 Hình 4-26. Lưu đồ chính Game Vòng Quay Sát Phạt. ................................................. 47 Hình 4-27. Lưu đồ xử lý góc và tốc độ quay................................................................ 48 Hình 4-28. Lưu đồ thông báo kết quả........................................................................... 49 Hình 4-29. Lưu đồ chính game Pika Pika..................................................................... 50 Hình 4-30. Lưu đồ xử lý pikachu nhảy lên................................................................... 51 Hình 4-31.Lưu đồ di chuyển CNV. .............................................................................. 51 Hình 4-32. Lưu đồ kiểm tra pika có đụng CNV hay không. ........................................ 51 Hình 4-33. Giao diện phần mềm Keil C. ...................................................................... 52 Hình 4-34.Giao diện phần mềm STM32CubeMX. ...................................................... 53 Hình 4-35. Thao tác chọn game.................................................................................... 57 Hình 4-36. Thao tác Game Cờ Caro. ............................................................................ 58 Hình 4-37. Thao tác chọn chế độ Game BBB. ............................................................. 58 Hình 4-38. Nút nhấn điều khiển game BBB................................................................. 59 Hình 4-39. Thao tác game Flappy Bird. ....................................................................... 59 Hình 4-40. Thao tác game Stick Hero. ......................................................................... 60 Hình 5-1. Kết quả phần cứng........................................................................................ 61 Hình 5-2. Giao diện chọn Game. .................................................................................. 62 Hình 5-3. Game Cờ Caro.............................................................................................. 62 Hình 5-4. Chọn chế độ Game BBB. ............................................................................. 62 Hình 5-5. Game Ball Bing Bong. ................................................................................. 63 Hình 5-6. Game Flappy Bird. ....................................................................................... 63 Hình 5-7. Game Stick Hero. ......................................................................................... 64 Hình 5-8. Game Vòng Quay Sát Phạt........................................................................... 64 Hình 5-9. Game Ai Là Triệu Phú. ................................................................................ 65 Hình 5-10. Game Pika Pika. ......................................................................................... 65 DANH SÁCH BẢNG Bảng 2.1. Mô tả sơ đồ chức năng các chân của VS1003................................................ 9 Bảng 2.2. Mô tả sơ đồ chức năng các chân của PS2. ................................................... 10
  • 14. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xiv Bảng 2.3. Bảng giá trị các nút nhấn PS2 trả về. ........................................................... 13 Bảng 2.4 :Chức năng các chân của SDMMC. .............................................................. 17 Bảng 3.1: Arduino Connectors. .................................................................................... 20 Bảng 3.2: Mô tả chân kết nối của PS2 với Arduino Connectors.................................. 23 Bảng 3.3 :Mô tả chân kết nối của VS1003 với Arduino Connectors. .......................... 25 Bảng 4.1: Bảng linh kiện sử dụng................................................................................. 29 Bảng 4.2: Các bước lắp ráp linh kiện. .......................................................................... 30
  • 15. BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH xv TÓM TẮT Sau quá trình tìm hiểu, nghiên cứu lĩnh vực giải trí trong mảng game di động, tôi nhận thấy nhu cầu về nguồn game hiện tại là rất lớn cũng như nguồn nhân lực cho mảng ngành này. Từ đó tôi quyết định chọn đề tài này đầu tiên là để thiết kế ra một số game đáp ứng nhu cầu giải trí của người chơi, sau đó là để tự hoàn thiện khả năng lập trình của bản thân. Đề tài này thực hiện lập trình lại những game mà đã có các tác giả viết trước. Ở đây tôi chỉ mô phỏng lại sao cho giống nhất có thể. Kết hợp thêm 1 số phần cứng rời để tạo sự khác biệt. Sau quá trình nghiên cứu thì tôi đã thành công trong việc mô phỏng lại 7 game mini thao tác đơn giản, đạt độ chính xác khá cao. Các game được thao tác trên màn hình kết hợp với tay cầm game có phát thêm nhạc thể hiện khá tốt nội dung game.
  • 16.
  • 17. TỔNG QUAN BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 1 Chương 1: TỔNG QUAN 1.1. ĐẶT VẤN ĐỀ Ngày nay, nhu cầu giải trí của con người bằng các thiết bị tiện lợi ngày càng cao. Trong đó, thiết bị chơi game phát triển một cách nhanh chóng chỉ trong những năm gần đây đi theo đó là số lượng game được giới thiệu cũng tăng không ngừng. Nổi bật có thể kể đến những loại game mini chạy trên các thiết bị di động như điện thoại, ipad, máy chơi game mini... Với nhu cầu cao như vậy thì ngành nghề thiết kế game đang là một trong số nghề đang có nhu cầu nhân lực lớn, đem lại lợi nhuận khổng lồ. Có thể kể đến 1 số công ty thiết kế game lớn như Nintendo, Sony, Capcom... với một số tựa game nổi tiếng như Super Mario, Resident Evil, Contra...Ngoài ra còn có vô số những tựa game của những cá nhân thiết kế độc lập. Hình 1-1. Một số game nổi tiếng. Với ý tưởng muốn tiếp cận một lĩnh vực hay, còn khá mới đối với sinh viên chuyên ngành điện tử công nghiệp thì trong đề tài này tôi sẽ thực hiện thiết kế mô phỏng lại một số game mini được đại đa số người biết tới như Flappy Bird, cờ caro nhằm đáp ứng nhu cầu giải trí, phát triển tư duy cho người chơi game. 1.2. MỤC TIÊU - Thiết kế và thi công mô hình máy chơi game mini. - Thiết kế Game mini chạy trên mô hình. - Sử dụng cảm ứng và tay cầm Dual Shock để điều khiển. - Phát được nhạc trong chơi lúc với từng trò. - Game đáp ứng nhu cầu giải trí cơ bản, phát triển trí tuệ cho người chơi.
  • 18. TỔNG QUAN BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 2 1.3. NỘI DUNG NGHIÊN CỨU  NỘI DUNG 1: Nghiên cứu tài liệu về module VS1003, tay cầm PS2, KIT STM32F746 DISCOVERY.  NỘI DUNG 2: Dựa trên các dữ liệu thu thập được, lựa chọn giải pháp thiết kế và thi công mô hình kết nối các module với KIT điều khiển.  NỘI DUNG 3: Thiết kế lưu đồ giải thuật và viết chương trình điều khiển cho vi điều khiển, thiết kế giao diện màn hình chơi game.  NỘI DUNG 4: Thử nghiệm và điều chỉnh phần mềm cũng như phần cứng để mô hình được tối ưu, sử dụng dễ dàng. Đánh giá các thông số của mô hình so với thông số thực tế.  NỘI DUNG 5: Viết báo cáo thực hiện. 1.4. GIỚI HẠN Trong thời gian thực hiện đề tài là hơn 3 tháng, tôi tập trung thực hiện các công việc bên dưới: - Thiết kế, thi công mô hình máy chơi game mini. - Sử dụng module âm thanh VS1003. - Sử dụng tay cầm Dual Shock Play Station 2(PS2). - Sử dụng vi điều khiển ARM STM32F746. - Sử dụng màn hình LCD TFT 4.3-inch hiển thị và thao tác. Trong đề tài này sẽ thiết kế 7 game chạy trên nền vi điều khiển ARM STM32:  BALL BING BONG.  Flappy Bird.  CỜ CARO.  STICK HERO.  AI LÀ TRIỆU PHÚ  Vòng Quay Sát Phạt  Pika Pika.
  • 19. TỔNG QUAN BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 3 1.5. BỐ CỤC  Chương 1: Tổng quan Trình bày tổng quan về đề tài, tình hình thực tế, tính cần thiết của đề tài.  Chương 2: Cơ sở lý thuyết. Chương này trình bày lý thuyết liên quan đến các phần cứng, các chuẩn truyền nhận.  Chương 3: Tính toán và thiết kế. Chương này tính toán các thông số mạch để lựa chọn các linh kiện phù hợp với hệ thống.  Chương 4: Thi công hệ thống. Trình bày quá trình thi công mạch kết nối giữa các phần cứng với nhau. Thiết kế lưu đồ cho từng nội dung code sẽ làm. Viết code dựa theo lưu đồ đã thiết kế trên.  Chương 5: Kết quả, nhận xét và đánh giá. Trình bày kết quả thu được của toàn bộ hệ thống, nêu rõ những mặt đã làm được và chưa làm được so với mục tiêu ban đầu cũng như ưu điểm, hạn chế. Đánh giá tính ổn định của hệ thống.  Chương 6: Kết luận và hướng phát triển. Đưa ra kết luận chung cho hệ thống. So sánh với các hệ thống khác ngoài thực tế để định được hướng phát triển của đề tài.
  • 20. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 4 Chương 2: CƠ SỞ LÝ THUYẾT 2.1. MÔ TẢ QUÁ TRÌNH HOẠT ĐỘNG Khi cấp nguồn hệ thống thì màn hình sẽ hiện lên tên các tựa game. Người chơi chọn game bằng cách nhấn nút trên tay cầm Dual Shock. Vào từng game tùy vào hướng dẫn sử dụng sẽ có các thao tác riêng bằng PS2 hoặc cảm ứng. Trong quá trình hoạt động sẽ có phát nhạc phù hợp với từng game. 2.2. TỔNG QUAN LÝ THUYẾT 2.2.1 Tổng quan ARM Cấu trúc ARM (viết tắt từ tên gốc là Acorn RISC Machine) là một loại cấu trúc vi xử lý 32 bit kiểu RISC (thuộc kiến trúc Hardvard, có tập lệnh rút gọn) được sử dụng rộng rãi trong các thiết kế nhúng. Do có đặc điểm tiết kiệm năng lượng, các bộ CPU ARM chiếm ưu thế trong các sản phẩm điện tử di động mà với các sản phẩm này việc tiêu tán công suất thấp là một mục tiêu thiết kế quan trọng hàng đầu. Việc thiết kế ARM được bắt đầu từ năm 1983 trong một dự án phát triển của công ty máy tính Acorn. Nhóm thiết kế hoàn thành việc phát triển mẫu gọi là ARM1 vào năm 1985, và vào năm sau, nhóm hoàn thành sản phẩm “thực’’ gọi là ARM2 với thiết kế đơn giản chỉ gồm 30.000 transistor. ARM2 có tuyến dữ liệu 32 bit, không gian địa chỉ 26 bit tức cho phép quản lý đến 64 Mbyte địa chỉ và 16 thanh ghi 32 bit. Thế hệ sau, ARM3, được tạo ra với 4KB cache và có chức năng được cải thiện tốt hơn nữa. Trải qua nhiều thế hệ nhưng lõi ARM gần như không thay đổi kích thước. ARM2 có 30.000 transistors trong khi ARM6 chỉ tăng lên đến 35.000. Ý tưởng của nhà sản xuất lõi ARM là sao cho người sử dụng có thể ghép lõi ARM với một số bộ phận tùy chọn nào đó để tạo ra một CPU hoàn chỉnh, một loại CPU mà có thể tạo ra trên những nhà máy sản xuất bán dẫn cũ và vẫn tiếp tục tạo ra được sản phẩm với nhiều tính năng mà giá thành vẫn thấp.
  • 21. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 5 Ngày nay ARM được ứng dụng rộng rãi trên mọi lĩnh vực của đời sống: Robot, máy tính, điện thoại, xe hơi, máy giặt… ARM Cortex được chia làm 3 dòng:  Cortex-A: Bộ xử lý dành cho hệ điều hành và các ứng dụng phức tạp. Hỗ trợ tập lệnh ARM, thumb, và thumb-2.  Cortex-R: Bộ xử lý dành cho hệ thống đòi hỏi khắc khe về đáp ứng thời gian thực. Hỗ trợ tập lệnh ARM, thumb và thumb-2.  Cortex-M: Bộ xử lý dành cho dòng vi điều khiển, được thiết kế để tối ưu về giá thành. Hỗ trợ tập lệnh Thumb-2. Giá trị số nằm cuối tên của 1 dòng ARM cho biết về mức độ hiệu suất tương đối của dòng đó. Theo đó dòng ARM mang số 0 sẽ có hiệu suất thấp nhất. Tập đoàn ST Microelectronic đã cho ra mắt dòng STM32, vi điều khiển đầu tiên dựa trên nền lõi ARM Cortex-M3 thế hệ mới do hãng ARM thiết kế, lõi ARM Cortex-M3 là sự cải tiến của lõi ARMv7-M 32bit truyền thống, từng mang lại sự thành công vang dội cho công ty ARM. Dòng STM32 thiết lập các tiêu chuẩn mới về hiệu suất, chi phí, cũng như khả năng đáp ứng các ứng dụng tiêu thụ năng lượng thấp và tính điều khiển thời gian thực khắt khe. Chip ARM Cortex-M7 là một vi điều khiển 32-bit cao cấp nhất trong series Cortex-M của ARM cho đến hiện nay. Theo ARM, Cortex-M7 có DSP (Digital Signal Processing: Xử lý tín hiệu số) cao gấp đôi so với Cortex-M4 do đó có thể xử lý cùng lúc 2 tập lệnh, giúp cho M7 có thể hoạt động ở mức xung nhịp cao hơn. Đây là dòng chip MCU 32-bit giúp tăng tốc thông dịch dữ liệu từ các cảm biến thành thông tin số. Nó tăng gấp đôi hiệu năng tính toán và DSP trong khi giảm thiểu mức tiêu thụ điện năng nhờ vào công nghệ sản xuất 28nm. Chip M7 hỗ trợ các thiết bị nhúng điều khiển giọng nói hoặc giao diện rich OS và còn được sử dụng trong các smartphone hoặc trên xe hơi để điều khiển các chức năng màn hình chạm và âm thanh phức tạp hơn.
  • 22. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 6 Hình 2-1. Kiến trúc của vi xử lí ARM Cotex-M7. 2.2.2 Giới thiệu về ARM-M7- STM32F746G-DISCOVERY Dòng STM32 tiêu thụ năng lượng cực thấp trong khi đó hiệu suất cực cao và việc lập trình cũng rất dễ dàng. Với sự đồ sộ về ngoại vi (GPIO, I2C, SPI, ADC, USB, Ethernet, CAN....). ST cung cấp cho chúng ta các thư viện trực tiếp cho mỗi dòng ARM (gọi là CMSIS - Cortex Microcontroller Software Interface Standard). KIT Discovery STM32F7 sử dụng dòng ARM-M7 với vi điều khiển chính STM32F746NGHx cho phép người dùng phát triển mở rộng các ứng dụng về âm thanh, đồ họa, cảm biến và các tính năng kết nối tốc độ cao với các ngoại vi khác. Đây là 1 KIT thực tế cung cấp rất nhiều ngoại vi cũng như có sẵn các jack cắm để kết nối với các module khác. Các tính năng có sẵn trên KIT như:  Vi điều khiển STM32F746NGH6 có 1MB bộ nhớ Flash và 340KB RAM với chuẩn đóng gói BGA216.  On-board ST-LINK/V2-1 hỗ trợ khả năng đếm lại USB  Các chức năng USB: cổng COM ảo, lưu trữ khối, cổng debug.  Màn hình TFT-LCD 4.3-inch 480x272 màu với cảm ứng điện dung.  Ngõ vào âm thanh line in và line out.
  • 23. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 7  Ngõ ra loa stereo.  2 ST MEMS microphones.  Đầu nối SPDIF RCA.  2 nút nhấn (user and reset).  128-Mbit Quad-SPI Flash memory.  128-Mbit SDRAM.  Có khe cắm microSD card.  Đầu nối RF-EEPROM.  USB OTG HS với đầu cắm Micro-AB.  USB OTG FS với đầu cắm Micro-AB.  Đầu nối Ethernet IEEE-802.3-2002.  5 nguồn cấp nguồn: o ST LINK/V2-1. o USB FS. o USB HS. o VIN từ Arduino. o Đầu nối 5v ngoại.  Nguồn cấp cho các ứng dụng bên ngoài: 3.3 V or 5 V.  Đầu nối Arduino Uno V3.  Phần mềm miễn phí với các ví dụ đa dạng. Hình 2-2. KIT STM32F746 Discovery.
  • 24. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 8 2.2.3 Module giải mã âm thanh VS1003-v2 IC VS1003 là IC chuyên dụng giải mã âm thanh của hãng VLSI Solution với các tập tin âm thanh định dạng MP3/MIDI/WMA/WAV. Nó các đặc tính:  Giải mã MPEG 1 & 2 audio lớp III (CBR +VBR +ABR); WMA 4.0/4.1/7/8/9 all profiles (5-384kbit/s); WAV (PCM + IMA ADPCM); General MIDI / SP-MIDI files.  Mã hóa IMA ADPCM từ microphone hoặc ngõ vào.  Hỗ trợ truyền trực tuyến cho MP3 và WAV.  Điều khiển Bass và treble  Hoạt động với tần số xung lock 12.13Mhz.  Có bộ nhân tần số nội.  Hoạt động chế độ tiết kiệm năng lượng.  Có khả năng sử dụng với tai nghe với bộ tải 30Ω.  Chia điện áp hoạt động cho tín hiệu analog, tín hiệu số và I/O.  Có bộ nhớ RAM 5.5Kb dùng cho code/data.  Giao diện điều khiển và dữ liệu nối tiếp.  Có thẻ được dùng như 1 thiết bị slave.  Có chế độ boot flash SPI cho các ứng dụng đặc biệt.  Có giao tiếp UART cho chế độ debugging.  Các chức năng mới được thêm vào phần mềm với 4 chân GPIO. Hình 2-3. Sơ đồ cấu trúc và sơ đồ chân VS1003.
  • 25. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 9 Module giải mã âm thanh VS1003 có IC chính VS1003, 2 jack audio 3.5mm, 1 microphone, IC ổn áp.... Chuyên sử dụng cho việc giải mã các loại âm thanh định dạng MP3/WMA/MIDI/WAV. Khi giao tiếp với các MCU thông qua chuẩn SPI nó đóng vai trò là 1 slave. Module bao gồm 9 chân bao gồm điều khiển, dữ liệu và cấp nguồn: 5V, GND, XRST, MISO, MOSI, SCLK, DREQ, XCS, XDCS. Chức năng của từng chân: Bảng 2.1. Mô tả sơ đồ chức năng các chân của VS1003. STT TÊN CHỨC NĂNG 1 VCC Nguồn cung cấp dương 2 GND Nguồn cung cấp âm 3 XRST Chân tín hiệu yêu cầu Reset 4 MISO Chân trả dữ liệu từ VS1003 về thiết bị master. 5 MOSI Chân gửi mã lệnh/dữ liệu từ master tới VS1003. 6 SCLK Chân tạo xung clock đồng bộ quá trình truyền nhận. 7 DREQ Chân yêu cầu ngắt của VS1003, chân này sẽ ở mức cao khi sẵn sàng nhận dữ liệu từ master. 8 XCS Chân chip select mã lệnh. 9 XDCS Chân chip select dữ liệu. Để gửi dữ liệu từ MCU đến VS1003 thông qua SPI thì đầu tiên cần xem xét chân yêu cầu ngắt DREQ đã sẵn sàng chưa, nếu DREQ đang ở mức cao thì kéo chân XDCS xuống mức thấp sau đó gửi 1 byte dữ liệu đến chân MOSI. Kết thúc quá trình gửi sẽ kéo chân XCS và XDCS lên mức cao để sẵn sàng cho lần gửi tiếp theo. Trước khi bắt đầu quá trình hoạt động cần reset các giá trị trong các thanh ghi của VS1003, quá trình này sẽ gửi các mã lệnh đến VS1003 để đặt lại các giá trị. Để gửi mã lệnh thì trước khi truyền ta kéo chân XCS về mức thấp sau đó bắt
  • 26. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 10 đầu truyền. Lưu ý VS1003 giao tiếp chuẩn SPI với chế độ MSB tức là truyền bit có trọng số cao đi trước. 2.2.4 Tay cầm game Dualshock 2 Tay cầm game Dualshock 2 hay có tên gọi khác là tay cầm PS2, là một thiết bị điều khiển đa chức năng được sản xuất bởi hãng SONY với mục đích ban đầu là giao tiếp với hệ máy Play Station của chính hãng này sản xuất. So với tay cầm PS1 với các phím điều hướng bao gồm lên, xuống, trái, phải, các phím chức năng như X, O, Vuông, Tam giác, R1, R2, L1, L2, Select và Start thì PS2 được bổ sung thêm 1 nút Analog, 2 Joytick đa hướng, R3, L3 và chế độ run. Từ thế hệ PS1 đến hiện tại là PS4 đều sử dụng 1 chung loại đầu jack cắm với 9 đường dây cùng 1 chuẩn truyền SPI. Ta tìm hiểu màu và chức năng của từng dây: Bảng 2.2. Mô tả sơ đồ chức năng các chân của PS2. STT TÊN CHỨC NĂNG MÀU 1 Data Dây này dùng để nhận dữ liệu từ PS2 gửi về. Đây là 1 ngõ ra cực thu để hở, vì vậy yêu cầu phải có 1 điện trở kéo lên nguồn trong lúc hoạt động. Nâu Hình 2-4. Tay cầm PS2.
  • 27. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 11 2 Command Dùng để gửi mã lệnh từ thiết bị Master đến PS2. Cam 3 Vibration Motors Power Dây nguồn dùng cho motor chế độ run của PS2. Sử dụng nguồn từ 6-9v. Xám 4 Ground Cấp mass. Đen 5 Vcc Cấp nguồn dương cho PS2. PS2 hoạt động ở điện áp 3v3 vì thế đối với các thiết bị nguồn 5v cần giảm áp xuống 3v3 để tránh hư hỏng tay cầm. Đỏ 6 Attention Chip select hoặc slave select, chân này phải được kéo xuống mass trước khi nhận/gửi dữ liệu. Khi hoàn thành 1 quá tình nhận/gửi chân này phải được kéo lên VCC. Vàng 7 Clock Chân cấp xung clock từ Master tới Slave, đồng bộ quá trình truyền nhận. Tay cầm ps2 hoạt động với tần số clock từ 100k- 500kHz. Xanh dương 8 Unknow - Trắng 9 Acknowledge Dây này sẽ kéo từ mức 1 về 0 trong 12us sau mỗi byte truyền xong. Xanh lá
  • 28. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 12 Hình 2-5. Màu và sơ đồ dây đầu cắm PS2. Để giao tiếp thành công với PS2 thì cần tối thiếu là 6 dây (Clock, Data, Comman, Attention, Vcc, Gnd). Khi giao tiếp với các thiết bị thì tay cầm PS2 đóng vai trò slave, dữ liệu sẽ truyền theo kiểu LSB tức là bit có trọng số thấp được truyền trước. Giao tiếp được với tay cầm PS2 thông qua chuẩn SPI, ta phải thực gửi các mã lệnh theo đúng trình từ thì tay cầm mới trả dữ liệu đúng về. Một gói dữ liệu bao gồm 3 byte header và thêm 2 byte command bổ sung hoặc dữ liệu điều khiển. Đầu tiên Master sẽ lần lượt gửi 3 byte Header đến PS2 tương ứng sẽ nhận về 3 byte từ Slave. Byte đầu tiên là 0x01, dùng để khởi tạo quá trình truyền nhận. Slave sẽ trả về 0xFF. Byte thứ 2 là 0x42, lệnh thăm dò chính, phụ thuộc vào cấu hình điều khiển. Slave phản hồi 0x41. Byte thứ 3 luôn là 0x00, dùng để báo hiệu bắt đầu quá trình đọc dữ liệu. Slave phản hồi 0x5A.
  • 29. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 13 Byte thứ 4 và 5 là 0x00, 2 byte này sau khi gửi lên thì slave sẽ gửi trả về dữ liệu trạng thái các nút nhấn. Byte thứ 4 là xác định 4 nút điều hướng (lên, xuống, trái, phải, L3, R3), byte thứ 5 là các nút chức năng. Nếu như không có nút được nhấn thì dữ liệu trả về sẽ là 0xFF. Nếu như có nhấn nút thì bit tương ứng trong byte đó sẽ = 0. Vị trí giá trị các nút nhấn trong byte 4, 5 được thể hiện ở bảng dưới: Bảng 2.3. Bảng giá trị các nút nhấn PS2 trả về. Butt on Select L3 R3 Start Start Right Down Left Byte.bit 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7 Button L2 R2 L1 R1 O X Byte.bit 5.0 5.1 5.2 5.3 5.54 5.5 5.6 5.7 2.2.5 Chuẩn truyền nhận SPI SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối tiếp tốc độ cao do hãng Motorola đề xuất. Đây là kiểu truyền thông Master-Slave, trong đó 1 chip Master điều phối quá trình truyền thông và các chip Slaves được điều khiển bởi Master vì thế truyền thông chỉ xảy ra giữa Master và Slave. SPI là một cách truyền song công nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng thời. SPI đôi khi được gọi là chuẩn truyền thông “4 dây” vì có 4 đường dây trong chuẩn này đó là SCK (Serial Clock), MISO (Master Input Slave Output), MOSI (Master Output Slave Input) và SS (Slave Select). Trong đó SCK: Xung giữ nhịp cho giao tiếp SPI, vì SPI là chuẩn truyền đồng bộ nên cần 1 đường giữ nhịp, mỗi nhịp trên SCK báo hiệu 1 bit dữ liệu đến hoặc đi. Đây là điểm khác biệt với truyền thông không đồng bộ của chuẩn UART. Sự tồn tại của SCK giúp quá trình truyền ít bị lỗi và vì thế tốc độ truyền của SPI có thể đạt rất cao. Xung nhịp chỉ được tạo ra bởi Master. MISO: Nếu là chip Master thì đây là đường Input còn nếu là chip Slave thì là Output. MISO của Master và Slave được nối trực tiếp với nhau.
  • 30. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 14 MOSI: Nếu là chip Master thì đây là đường Output còn nếu là chip Slave thì là Input. MOSI của Master và Slave được nối trực tiếp với nhau. SS: SS là đường chọn Slave cần giao tiếp, trên các chip Slave đường SS sẽ ở mức cao khi không làm việc. Nếu chip Master kéo đường SS của một Slave nào đó xuống mức thấp thì việc giao tiếp sẽ xảy ra giữa Master và Slave đó. Chỉ có 1 đường SS trên mỗi Slave nhưng có thể có nhiều đường điều khiển trên Master, tùy vào thiết kế của người dùng. Hình dưới thể hiện một kết nối SPI giữa một chip Master và 3 chip Slave thông qua 4 đường. Hoạt động: Mỗi chip Slave hay Master có một thanh ghi dữ liệu 8 bit. Cứ mỗi xung nhịp do Master tạo ra trên đường giữ nhịp SCK, một bit trong thanh ghi dữ liệu của Master được truyền qua Slave trên đường MOSI, đồng thời một bit trong thanh ghi dữ liệu của Slave cũng được truyền qua Master trên đường MISO. Do 2 gói dữ liệu được truyền qua lại đồng thời nên được gọi là truyền “song công”. Hình dưới mô tả quá trình truyền nhận 1 gói dữ liệu của chuẩn SPI. Hình 2-6. Sơ đồ kết nối chuẩn SPI Master-Slave
  • 31. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 15 Thanh ghi dịch 8 bit MSB MASTER LSB Thanh ghi dịch 8 bit MSB SLAVE LSB BỘ TẠO XUNG CLOCK SPI MISO MOSI SCK __ SS Cho phép dịch Hình 2-7 Quá trình truyền nhận SPI. Ta thấy bit MSB của Master sẽ được truyền đi đầu tiên sau đó dữ liệu sẽ được dịch trái 1 bit để đẩy bit dữ liệu kế tiếp làm MSB. Đồng thời vị trí bit LSB sẽ nhận bit dữ liệu từ Slave truyền tới. Quá trình truyền nhận của Slave tương tự Master. Sau mỗi 8 xung nhịp trên SCK thì quá trình truyền 8 bit hoàn thành ta đọc dữ liệu từ 2 thanh ghi này. 2.2.6 Chuẩn giao tiếp SDMMC SDMMC là chuẩn giao tiếp giữa bus APB2 với các loại thẻ nhớ như MMCs, SD memory, SDIO cards. Các đặc tính cơ bản của chuẩn SDMMD:  Đối với thẻ MMCs: hỗ trợ 3 chế độ databus: 1 bit, 4 bit và 8 bit.  Đối với thẻ SD và SDIO: hỗ trợ 2 chế độ databus: 1 bit và 4 bit.  Truyền data lên tới 50Mhz đối với chế độ 8 bit của MMC.  Ngõ ra Data và comman cho phép tín hiệu điều khiển các quá trình 2 chiều bên ngoài.  SDMMC không tương thích với chuẩn SPI. Tiếp theo ta tìm hiểu quá trình hoạt động để đọc 1 block data diễn ra như thế nào:
  • 32. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 16 Hình 2-8. Quá trình đọc dữ liệu. Để bắt đầu quá trình đọc thì Host sẽ gửi 1 frame lệnh yêu cầu đọc đến card sau đó card sẽ gửi tín hiệu phản hồi, quá trình này diễn ra trên đường SDMMC_CMD. Sau đó Card sẽ gửi data cho Host thông qua SDMMC_D, kết thúc frame data sẽ kèm thêm 1 mã kiểm tra lỗi CRC. Khi muốn dừng đọc thì Host lại gửi 1 lệnh yêu cầu dừng và Card sau khi gửi tín hiệu phản hồi sẽ kết thúc quá trình đọc. Quá trình ghi dữ liệu từ Host đến Card diễn ra tương tự với data đi theo chiều từ Host đến Card: SDMMC bao gồm 2 phần:  Nguồn SDMMC bao gồm đơn vị tạo xung clock, truyền data và lệnh. Hình 2-9. Quá trình ghi dữ liệu.
  • 33. CƠ SỞ LÝ THUYẾT BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 17  Giao diện APB2 truy cập tới thanh ghi của nguồn SDMMC, bộ tạo ngắt và tín hiệu yêu cầu DMA. Hình 2-10. Sơ đồ khối SDMMC. SDMMC_D[7:0] là các chân truyền data. SDMMC_CMD có 2 chế độ là Open-drain và Push_pull. DSMMC_CK là chân giữ xung clock. 1 bit được truyền trên cả 2 dây command và data trong mỗi chu kỳ xung clock. Bảng 2.4 :Chức năng các chân của SDMMC. Chân Hướng Mô tả SDMMC_CK Ngõ ra Chân xung clock cho MMC/SD/SDIO. Xung clock được truyền từ host tới card. SDMMC_CMD Vào/Ra Chân mã lệnh cho MMC/SD/SDIO. SDMMC[7:0] Vào/Ra Chân dữ liệu cho MMC/SD/SDIO.
  • 34. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 18 Chương 3: TÍNH TOÁN_THIẾT KẾ 3.1. GIỚI THIỆU Yêu cầu của đề tài là máy chơi game mini hiển thị trên màn hình có cảm ứng để thao tác đồng thời có thêm tay cầm PS2 để tạo tín hiệu điều khiển. Có bộ phận phát âm thanh tăng tính hấp dẫn cho trò chơi. Chương này sẽ tập trung phân tích, lựa chọn linh kiện cho phù hợp với yêu cầu của đề tài. Trình bày sơ đồ kết nối, mạch nguyên lý của các module lại với nhau. 3.2. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG 3.3.1 Thiết kế sơ đồ khối Với những yêu cầu của hệ thống, tôi thiết kế sơ đồ khối tổng quát cho hệ thống như sau: KHỐI ĐIỀU KHIỂN KHỐI NÚT NHẤN KHỐI CẢM ỨNG KHỐI HIỂN THỊ KHỐI NGUỒN KHỐI ÂM THANH Hình 3-1 Sơ đồ khối hệ thống.
  • 35. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 19 Trong sơ đồ bao gồm các khối:  Khối nguồn: Cung cấp nguồn hoạt động cho các phần cứng trong hệ thống.  Khối hiển thị: Màn hình hiển thị giao diện Game.  Khối âm thanh: Nhận lệnh và dữ liệu từ khối điều khiển phát tín hiệu âm thanh ra loa.  Khối cảm ứng: Đọc trạng thái nhấn/thả, trả về tọa độ trên màn hình.  Khối tay cầm: Các nút nhấn điều khiển và chức năng.  Khối điều khiển: Điều khiển các quá trình giao tiếp, truyền nhận giữa các module. Nhận tín hiệu điều khiển từ tay cầm, đọc dữ liệu từ thẻ nhớ, xuất hình ảnh ra khối hiển thị, xuất tín hiệu âm thanh. 3.3.2 Tính toán và thiết kế mạch a. Khối điều khiển, cảm ứng và hiển thị Khối hiển thị: Yêu cầu là màn hình LCD kích thướt từ 4-5inch để phù hợp với các game mini, hiện đa màu sắc giúp trò chơi thêm bắt mắt. Khối cảm ứng: Phải là một màn cảm ứng dán chồng lên màn hình LCD để người chơi có thể tác động trực tiếp lên màn hình khi sử dụng. Khối điều khiển chức năng chính: xử lý dữ liệu nhận từ tay cầm và cảm ứng đồng thời xuất dữ liệu ra màn hình hiển thị và module giải mã âm thanh. Để thực hiện những yêu cầu trên thì cần một KIT với vi điều khiển hoạt động tốc độ cao để xử lý hình ảnh với tần số cao được mượt, ít hiện tượng giật. Có các chuẩn giao tiếp truyền thông để giao tiếp với các module ngoại vi, có kết nối sẵn với màn hình TFT-LCD hoặc có ra chân để kết nối với LCD rời. Đáp ứng được như vậy thì có các loại KIT của dòng vi điều khiển STM32, FRKL46Z... qua quá trình tìm hiểu và đã có sử dụng từ trước cũng như sự hướng dẫn của GVHD, tôi quyết định chọn vi điều khiển STM32 mà cụ thể là KIT DISCOVERY STM32F746NGHx với những thông số cơ bản như sau:  Vi điều khiển STM32F746G với 1Mbytes bộ nhớ Flash và 340 Kbytes RAM.
  • 36. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 20  Màn hình TFT LCD kích thướt 4.2” với độ phân giải 480x272 pixel tích hợp cảm ứng điện dung.  Arduino Connectors với ARDUINO UNO R3, các pin ra còn là các pin của các chuẩn giao tiếp cơ bản như SPI, UART, I2C, nguồn.  Hỗ trợ khe cắm thẻ thẻ SD card.  Nguồn vào 5v có thể cấp từ nhiều nơi trên KIT.  Hỗ trợ lập trình bằng phần mềm STM32Cube và gói thư viện của STmicroelectronics. Hình 3-2. Mặt trên của KIT. Với Arduino Connectors[5] bao gồm có 4 cụm CN4, CN5, CN6, CN7 với thông tin như sau: Bảng 3.1: Arduino Connectors. Kết nối trái Kết nối phải Cụm Số Tên Chân STM32 Chức năng Chức năng Chân STM32 Tên Số Cụm CN 6 I2C1_SCL PB8 D15 10 CN 7
  • 37. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 21 1 NC - - I2C1_SDA PB9 D14 9 2 IOREF - 3.3V Ref AVDD - AREF 8 3 RESET NRST RESET Ground - GND 7 4 +3V3 - 3.3V input /output SPI2_SCK PI1 D13 6 5 +5V - 5V output SPI2_MISO PB14 D12 5 6 GND - Ground TIM12_CH2, SPI2_MOSI PB15 D11 4 7 GND - Ground TIM1_CH1 PA8 D10 3 8 VIN - Power input TIM2_CH1 PA15 D9 2 - - PI2 D8 1 - CN5 - PI3 D7 8 CN4 1 A0 PA0 ADC3_IN0 TIM12_CH1 PH6 D6 7 2 A1 PF10 ADC3_IN8 TIM5_CH4, SPI2_NSS PI0 D5 6 3 A2 PF9 ADC3_IN7 - PG7 D4 5
  • 38. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 22 4 A3 PF8 ADC3_IN6 TIM3_CH1 PB4 D3 4 5 A4 PF7 or PB9 ADC3_IN5 (PF7) or I2C1_SDA (PB9) - PG6 D2 3 6 A5 PF6 or PB8 ADC3_IN4 (PC0) or I2C1_SCL (PB8) USART6_TX PC6 D1 2 USART6_RX PC7 D0 1 Hình 3-3. Sơ đồ bố trí Arduino Connectors, SD card adapter. Như vậy, với KIT này ta đã có khối điều khiển, khối hiển thị và khối cảm ứng vừa tinh gọn vừa đáp ứng yếu tố thẩm mỹ, kỹ thuật đối với 1 máy chơi game.
  • 39. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 23 b. Khối tay cầm Ngoài việc người chơi có thể thao tác trên màn hình cảm ứng thì một số game cần có tay cầm để dễ dàng thao tác khi sử dụng. Qua tìm hiểu thì tay cầm PS2, Xbox... đáp ứng đầy đủ yêu cầu này nhưng Xbox giá khá cao nên tôi quyết định chọn PS2: Giá thành hợp lí, dễ dàng giao tiếp, kết nối, cầm nắm dễ dàng thuận tiện cho người sử dụng. Hình 3-4. Tay cầm PS2. Như đã trình bày ở Chương 2 thì tay cầm này giao tiếp theo chuẩn SPI vì vậy ta kết nối tay cầm với KIT thông qua Arduino Connectors. KIT STM32F746NGHx ra chân với 4 cụm mở rộng bao gồm CN4, CN5, CN6, CN7. Từ bảng 3.1 ta thấy để kết nối SPI cho PS2 ta sử dụng 3 chân SPI2_MOSI, SPI2_MISO, SP2_SCK với thứ tự tên D11, D12, D13 của cụm CN7. Ngoài ra còn có chân nguồn 3v3 và GND. Bảng 3.2: Mô tả chân kết nối của PS2 với Arduino Connectors. Stt PS2 Arduino Connectors Tên CỤM 1 3v3 3v3 - CN7
  • 40. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 24 2 GND GND - 3 CLOCK SPI2_SCK D13 4 DATA SPI2_MISO D12 5 COMMAND SPI2_MOSI D11 6 ATTENTION PH6 D6 CN4 c. Khối âm thanh Âm thanh đối với 1 máy chơi game là không thể thiếu, nó làm trò chơi thêm sinh động, tạo được hiệu ứng cho người sử dụng. Khối này với nhiệm vụ chính là phát âm thanh định dạng MP3 được lưu trong thẻ nhớ ra trong suốt quá trình chơi game. Các Module như MP3-LT108, TF-GM4563 hay VS1003 đều chạy tốt yêu cầu trên, tuy nhiên do có nghiên cứu từ trước nên tôi quyết định chọn module VS1003. Module này với chip VS1003 có thể phát được file nhạc định dạng MP3 như yêu cầu, có jack cắm tay nghe 3.5mm để kết nối với loa ngoài, ngoài ra module này giao tiếp theo chuẩn SPI nên ta có thể sử dụng chung với tay cầm PS2 thông qua các chân CS khác nhau. Hình 3-5. Sơ đồ khối nối STM32F746 với PS2.
  • 41. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 25 Module bao gồm các chân: 5V, GND, XRST, MISO, MOSI, SCLK, DREQ, XCS, XDCS được kết nối với Arduino Connectors: Bảng 3.3 :Mô tả chân kết nối của VS1003 với Arduino Connectors. STT VS1003 Arduino Connectors Tên CỤM 1 5v 5v - CN6 2 GND GND - 3 XRST NRST - 4 SCLK SPI2_SCK D13 CN7 5 MISO SPI2_MISO D12 6 MOSI SPI2_MOSI D11 7 DREQ PA15 D9 8 XCS PI2 D8 9 XDCS PI3 D7 CN4 Hình 3-6. Module VS1003.
  • 42. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 26 Do PS2 và VS1003 sử dụng chung các đường SPI2 nên phải thiết kết mạch kết nối giữa PS2, VS1003 với KIT. Sử dụng với loa ngoài thì cần thêm mạch khuếch đại âm thanh như các module LM386, TDA2030. Ở đây tôi dùng module LM386 điện áp hoạt động 5v với loa 4ohm/3W để âm thanh có thể phát ra ngoài cho nhiều người nghe. Tuy nhiên 3W là công suất tối đa của loa khi sử dụng. Còn ở mạch này, tôi chỉ cho loa hoạt động với 1/3 công suất (1W) để nghe vừa tai. d. Khối nguồn Đối với khối nguồn ta phải lựa chọn nguồn phù hợp để cấp và dòng cho hệ thống hoạt động. Đầu tiên đối với KIT STM32F746NGHx sử dụng nguồn vào 5v cấp vào các cổng ST-LINK, USB HS, USB FS. Nguồn cung cấp cho chip ARM lõi Cotex-M7 TFBGA216 là 3.3v với công suất 690mW[4], từ đó dòng cấp vào: 𝐼𝑎 = P U = 690 3.3 = 210𝑚𝐴 (3.1) Tay cầm PS2 cũng sử dụng điện áp 3.3v dòng làm việc tối đa là Ip = 300mA. Module VS1003 đầu vào là 5v nhưng hoạt động của IC là ở 3.3 dòng tối đa lúc hoạt động là Iv = 800mA và dòng của loa là: Hình 3-7. Sơ đồ kết nối STM32F746 với VS1003.
  • 43. TÍNH TOÁN_THIẾT KẾ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 27 Iloa = √ P R =√ 1 4 = 500mA (3.2) Như vậy dòng tổng cần cấp: ∑I = 𝐼𝑎 + 𝐼𝑝 + 𝐼𝑣 + 𝐼loa = 210 + 300 + 800 + 500 = 1810𝑚𝐴 (3.3) Như vậy ta cần cấp một nguồn áp 5v có dòng từ 1.8A là mạch có thể hoạt động tốt. Ta có thể lựa chọn cấp nguồn từ ghép Pin lipo loại 3.7v lại với nhau sau đó giảm áp để cấp cho mạch hoạt có thể sử dụng các loại Adapter 5v-1.8A để cấp cho mạch. Hình 3-8. Sơ đồ kết nối nguồn ngoài cho STM32F746. 3.3.3 Sơ đồ nguyên lý toán mạch Phần này ta kết hợp các sơ đồ kết nối của từng phần cứng lại với nhau thành 1 sơ đồ nguyên lý chung. Do PS2 và VS1003 cùng kết nối với STM32F746 bằng chuẩn SPI thông qua các chân SPI2 trên Arduino Connectors nên sơ đồ nguyên lý chung được vẽ như sau. Hình 3-9. Sơ đồ nguyên lý chung của hệ thống.
  • 44. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 28 Chương 4: THI CÔNG HỆ THỐNG 4.1. GIỚI THIỆU Hệ thống hoạt động như 1 máy chơi game mini, tác động trên màn hình cảm ứng, tay cầm PS2 và phát nhạc từ module âm thanh. Chương này ta sẽ thiết phần cứng PCB để kết nối 2 module PS2, VS1003 với KIT. Sau đó sẽ lắp ráp các phần cứng lại có kiểm tra. Tiếp theo là viết lưu đồ để dựa vào đó lập trình hệ thống. Cuối cùng là viết hướng dẫn sử dụng cho người dùng. 4.2. THI CÔNG HỆ THỐNG 4.2.1 Thi công board mạch Phần này ta thiết kế mạch PCB theo sơ đồ nguyên lý đã trình bày ở chương trước. Sơ đồ PCB của mạch: Hình 4-1. Sơ đồ PCB mạch kết nối STM với PS2 và VS1003.
  • 45. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 29 Sơ đồ 3D: Hình 4-2. Sơ đồ PCB 3D mạch kết nối STM với PS2 và VS1003. Sơ đồ bố trí linh kiện: Hình 4-3. Sơ đồ bố trí linh kiện mạch kết nối STM với PS2 và VS1003. Bảng 4.1: Bảng linh kiện sử dụng. STT Tên linh kiện Giá trị Dạng vỏ 1 Dual Shock (PS2) 3.3v 300mA (max) -
  • 46. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 30 2 VS1003 5v 800mA(max) Module 3 STM32F746 DISCOVERY 3.3v 210mA KIT 4 Loa ngoài 5v 3W - 5 Socket Header - DO 2.54mm Sau đó ta thi công mạch PCB và kiểm tra kích thướt chân linh kiện xem có phù hợp để có điều chỉnh phù hợp. 4.2.2 Lắp ráp, hàn linh kiện và kiểm tra Đầu tiên ta hàng các Socket Header kết nối KIT chính, các module ngoại vi với mạch kết nối. Tiếp theo, gắn module VS1003 và module ra chân của PS2 vào các Socket Header. Sau đó gắn KIT chính lên, sử dụng VOM để kiểm tra tính thông mạch của từng linh kiện của từng bước. Bảng 4.2: Các bước lắp ráp linh kiện. Bước Nội dung 1 Hàn các Socket Header 2 VOM kiểm tra tính thông mạch 3 Lắp Module VS1003 4 VOM kiểm tra tính thông mạch 5 Lắp Module tay cầm 6 VOM kiểm tra tính thông mạch 7 Lắp KIT chính 8 VOM kiểm tra tính thông mạch
  • 47. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 31 4.2.3 Đóng gói sản phẩm Để hệ thống có tính thẩm mỹ và ổn định thì ta thiết kế hộp đựng cho cả mạch. Có thể sử dụng vật liệu từ Mica hoặc nhựa... Sử dụng phần mềm AutoCad thiết kế khung cho hộp: Hình 4-4. Khung của mạch. 4.3. LẬP TRÌNH HỆ THỐNG 4.3.1 Lưu đồ giải thuật Hệ thống sau khi cấp nguồn sẽ hiện giao diện chọn game lên màn hình cho phép người sử dụng lựa chọn các mục game khác nhau bằng cách sử dụng các nút trên tay cầm PS2. Sau khi vào từng game thì sẽ có các thao tác sử dụng riêng. Để bắt đầu người dùng nhấn nút Start, để lựa chọn game khác nhấn nút Select và các chức năng khác. Từ đó ta thiết lưu đồ giải thuật. Đầu tiên là lưu đồ chương trình chính, lưu đồ phát nhạc được dùng trong lúc game đang. Với lưu đồ chương trình chính mô tả quá trình chọn game dựa vào 2 nút nhấn lên/xuống của PS2. Sau khi chọn được game, người chơi nhấn nút Start để vào game đã chọn.
  • 48. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 32  Lưu đồ chương trình chính: Hình 4-5. Lưu đồ chương trình chính.  Lưu đồ đọc/phát nhạc từ thẻ nhớ: Hình 4-6. Lưu đồ đọc/phát nhạc. Lưu đồ đọc/phát nhạc thể hiện quá trình đọc nhạc từ thẻ nhớ sau đó chuyển tín hiệu đến module âm thanh để phát ra ngoài. Nếu số số byte đọc lớn hơn dung lượng bài tương đương đã đọc hết 1 bài thì kết thúc quá trình đọc file nhạc đó. Bắt đầu Cấu hình module Khởi tạo ngoại vi Phát nhạc nền Tên các game Nhấn PS2 Lên hoặc xuống Nhấn Start Thay đổi GAME Gọi hàm theo GAME Đ S Đ S Đ S Bắt đầu Tìm tên bài trong thẻ Kết thúc Đọc dữ liệu (byte) Gửi đến VS1003 Số byte đọc < dung lượng bài Tăng số byte đọc S Đ
  • 49. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 33 a. Game Cờ Caro Hình 4-7. Lưu đồ chính game Cờ Caro. Game này khi bắt đầu màn hình xuất hiện bàn cờ 9x9, lần lượt từng người chơi sẽ chạm vào màn hình tại các ô trống để đánh dấu X/O. Người chơi nào đánh được 5 dấu liền nhau tính theo đường thẳng hoặc đường chéo trước sẽ giành chiến thắng. Trong lúc chơi sẽ có nhạc nền phát liên tục. Khi có người chơi thắng cuộc sẽ có nhạc báo hiệu. Từ đó, thiết kế lưu đồ, lưu đồ chương trình chính: Game đầu tiên thao tác chủ yếu trực tiếp trên màn hình. Với mỗi lần chạm màn hình thì sẽ gọi các hàm xử lý nước đi tương ứng với lượt người chơi. Sau mỗi Bắt đầu Reset ván đấu Vẽ bàn cờ Hiện tỉ số Chạm màn hình Xử lý bước đi Vẽ nước cờ 5 dấu liên tiếp 1 1 Thông báo kết quả Chạm màn hình Nhấn Select Reset biến chọn GAME Thoát GAME Kết thúc Đ S Đ S Đ S S Đ Còn ô trống Đ S
  • 50. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 34 lượt sẽ kiểm tra xem có người chơi nào thắng hay không. Tiếp theo là lưu đồ xử lý nước đi và vẽ nước đi. Hình 4-8. Lưu đồ xử lý nước đi.  Lưu đồ xử lý nước đi: Sử dụng tọa độ tại vị trí người chơi chạm vào để xem xét ô đó còn trống hay không. Nếu còn trống thì tạo giá trị tại ô đó tương ứng với lượt đi của người đó. Hình 4-9. Lưu đồ vẽ nước đi.  Lưu đồ vẽ nước đi: Đọc giá trị tại tất cả các ô trên bàn cờ rồi lần lượt vẽ kí hiệu X/O nếu ô đó có giá trị. Sau khi có người thắng cuộc nếu muốn chơi tiếp thì nhấn Start còn nếu muốn chơi game khác thì nhấn Select. Bắt đầu Đọc tọa độ Ô còn trống Tạo giá trị cho ô Đảo lượt Kết thúc S Đ Bắt đầu Đọc giá trị tại ô Giá trị bằng 1 Vẽ X Kết thúc S Đ Vẽ O
  • 51. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 35 b. Game Ball Bing Bong Game thứ 2 này ban đầu người chơi chọn các thông số cài đặt chế độ bao gồm loại banh, số người chơi và mức độ game. Nhấn nút Start để bắt đầu game hoặc nhấn nút Select để chọn game khác. Khi bắt đầu quả banh sẽ di chuyển trong màn hình, khi chạm 2 cạnh dọc của màn hình banh sẽ đảo hướng. Nhiệm vụ của người chơi là dùng thanh Bar để đỡ quả bóng khi banh đến vị trí cuối cùng của cạnh ngang. Nếu như đỡ hụt thì người chơi thua cuộc trò chơi kết thúc. Từ đó ta thiết kế lưu đồ cho game như sau: Hình 4-10. Lưu đồ chính của game. Khi bắt đầu game, người chơi cần chọn các chế độ chơi thông qua hàm “Chọn chế độ chơi”, sau đó chờ nhấn nút Start để bắt đầu chơi. Tùy với thông số cài đặt mà gọi hàm “Xử lý 1 người chơi” hay “Xử lý 2 người chơi” tương ứng. Bắt đầu Chọn chế độ chơi Nhấn Start Kết thúc S Đ 1 người chơi Xử lý 1 người chơi Xử lý 2 người chơi Đ S
  • 52. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 36 Hình 4-11. Lưu đồ chọn chế độ chơi. Đầu tiên người chơi sẽ chọn chế độ chơi bằng các chạm vào màn hình được thiết kế từ trước với các lựa chọn bao gồm:  Loại banh: Xanh lá, Hồng, Xanh dương.  Số lượng người chơi: 1 hoặc 2.  Cấp độ: Dễ, bình thường hoặc khó. Sau đó người chơi sẽ nhấn nút Start trên PS2 để bắt đầu vào Game. Tiếp theo ta vẽ lưu đồ để xử lý nếu như chọn 1 người chơi: Bắt đầu Chạm màn hình Vẽ giao diện Kiểm tra tọa độ Thiết lập biến Cài đặt xong Kết thúc S Đ Đ S
  • 53. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 37 Hình 4-12. Lưu đồ xử lý 1 người chơi. Với chế độ 1 người chơi thì sẽ di chuyển thanh ngang bằng cách nhấn nút Right/Left trên PS2. Mỗi lần banh chạm vào cạnh màn hình hoặc thanh ngang sẽ đổi hướng di chuyển ngược lại. Đến khi banh chạm cạnh dưới màn hình và vượt ra ngoài thanh ngang thì người chơi thua cuộc tạm dừng Game để chờ xử lý xem chơi lại hay chọn Game mới bằng nút Start hoặc Select với hàm xử lý thua. Bắt đầu Đọc trạng thái PS2 Nhấn Right Bar chưa chạm cạnh phải Di chuyển Bar qua phải Nhấn Left Bar chưa chạm cạnh trái Di chuyển Bar qua trái Ngắt Timer 2 Thay đổi tọa độ banh Banh chạm cạnhĐảo chiều banh Cạnh dưới 1 1 Thông báo thua 2 2 Kết thúc S S S S S Đ Đ Đ Đ Đ Banh nằm ngoài thanh ngang 3 3 S Đ Xử lý thua
  • 54. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 38 Còn nếu như chọn chế độ 2 người chơi thì lưu đồ như sau: Hình 4-13. Lưu đồ xử lý 2 người chơi. Đối với chế độ 2 người chơi thì người chơi thứ 2 sẽ di chuyển thanh ngang của mình bằng cách chạm vào màn hình. Dựa vào tọa độ chạm trên màn hình sẽ Bắt đầu Nhấn Right Bar chưa chạm cạnh phải Di chuyển Bar1 qua phải Nhấn Left Bar chưa chạm cạnh trái Di chuyển Bar1 qua trái Chạm màn hình Di chuyển thanh Bar 2 Banh chạm cạnh Đảo chiều banh Banh nằm trong bar 1 1 Thông báo thua 2 Kết thúc S S S S Đ Đ Đ Đ Ngắt timer 2 Thay đổi tọa độ banh 2 S Đ S S Đọc trạng thái PS2 Xử lý thua Cạnh trên/ dưới Đ Đ
  • 55. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 39 thay đổi thanh ngang tương ứng. Ngoài ra các thao tác còn lại giống như chế độ 1 người chơi. Trong đó lưu đồ xử lý thua dùng để kiểm tra xem người chơi muốn chơi lại hay thoát Game: Bắt đầu Kết Thúc Đ S Nhấn Start Reset biến Quay lại bước 1 Nhấn Select Reset biến GAME Thoát Game Đ S Hình 4-14. Lưu đồ xử lý thua. c. Game Flappy Bird: Game này tương tự như Game Flappy Bird của tác giá Nguyễn Hà Đông chỉ khác cách thao tác. Người chơi sẽ điều khiển nhân vật game tạm gọi là Bird vượt qua các trụ tre. Khi bắt đầu Bird sẽ rơi tự do từ trên xuống, người chơi sẽ nhấn nút X trên trên PS2 để Bird bay lên 1 khoảng, sau đó Bird tiếp tục rơi. Các trụ sẽ liêc tục chạy từ phải qua trái.
  • 56. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 40 Hình 4-15. Lưu đồ chính game Flappy Bird. Nếu như Bird chạm vào trụ hoặc rơi xuống đất thì người chơi thua cuộc trò chơi kết thúc. Để chơi lại thì nhấn nút Start hoặc nhấn Select nếu muốn đổi Game. Từ đó ta thiết kế lưu đồ cho Game như sau Game này sử dụng 3 timer để định thời bao gồm: -Timer2: điều khiển Bird bay xuống. -Timer3: điều khiển Bird bay lên. -Timer5: điều khiển di chuyển các trụ tre. Bắt đầu Ngắt timer2 Kết thúc Cấu hình timer2,3,5 Vẽ màn hình Cho phép timer2, 5 Ngắt timer5 Di chuyển trụ Nhấn X Lưu trạng thái nhấn Tắt timer2 Cho phép timer3 1 1 Ngắt timer3 Di chuyển bird lên Kiểm tra thua 2 Thua 2 Xử lý thua Tắt timer3 Cho phép timer2 Xóa trạng thái nhấn S Đ S Đ Đ S Đ S Đ S Di chuyển bird xuống
  • 57. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 41 Do tính chất trên nên khi Timer2 hoạt động thì Timer3 sẽ dừng và ngược lại. Với mỗi lần Timer 2 ngắt sẽ cho Bird giảm độ cao, nếu như người chơi nhấn nút X trên PS sẽ cho hoạt động Timer 3 chờ ngắt để tăng độ cao Bird. Timer 5 sẽ hoạt động liên tục để các trụ tre liên tục di chuyển. Sau mỗi lần xử lý sẽ kiểm tra toa độ của Bird so với các trụ tre để xem có thua hay không. Các hàm con xử lý được hiết kế như sau: Hình 4-16. Lưu đồ di chuyển trụ. Lưu đồ này mỗi lần thực hiện sẽ giảm tọa độ trụ về phía bên trái của màn hình. Nếu như trụ chạm vào cạnh trái màn hình thì xóa trụ đó đi tạo tọa độ trụ mới. Hình 4-17. Kiểm tra thua. Lưu đồ này sẽ so sánh tọa độ của Bird so với đất và trụ. Nếu như Bird chạm 1 trong 2 đối tượng trên thì xem như thua cuộc và trả về trạng thái “Thua” để xử lý phía sau. Tiếp theo ta có lưu đồ dùng để di chuyển Bird lên. Đối với di chuyển xuống ta chỉ giảm tọa độ liên tục và và gọi hàm Kiểm tra thua là được. Khi di chuyển lên ta phải so sánh với tọa độ cao nhất của màn hình nếu nhỏ hơn mới di chuyển. Bắt đầu Kết thúc Tọa độ trụ giảm sang trái Trụ chạm cạnh trái Xóa trụ Tạo tọa độ trụ mới Vẽ trụ mới S Đ Bắt đầu Kết thúc Bird chạm đất Trả về kết quả Thua Bird chạm trụ Trả về kết quả chưa Thua S S Đ Đ
  • 58. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 42 Hình 4-18. Lưu đồ di chuyển Bird lên. d. Game Stick Hero: Game này ở màn hình chính bao gồm 1 nhân vật Hero và 2 trụ nằm cách nhau 1 khoảng cách. Người chơi sẽ di chuyển nhân vật từ trụ trái qua trụ phải bằng cách nhấn giữ vào nút X trên PS2 để tạo ra 1 cây cầu để nối giữa 2 trụ với nhau. Đây là game có thao tác đơn giản nhưng đòi hỏi ngươi chơi phải canh khoảng cách chuẩn để có thể vượt qua các thử thách. Mỗi lần vượt thử thách sẽ chia làm 5 bước nhỏ bao gồm:  Bước 1: Vẽ cầu.  Bước 2: Thả cầu đến khi chạm trụ phải.  Bước 3: Hero di chuyển đến cuối cầu.  Bước 4: Kiểm tra thắng thua.  Bước 5: Tạo chướng ngại vật mới. Lưu đồ của game được thiết kế như sau: Bắt đầu Bird chạm cạnh trên Kết thúc S Đ Di chuyển Bird lên trên
  • 59. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 43 Hình 4-19. Lưu đồ chính game Stick Hero.  Lưu đồ chính game Stick Hero Game sẽ chạy theo trình tự từ bước 1 đến bước 4, bước 4 là bước kiểm tra thua. Nếu như kiểm tra chưa thua thì sẽ chạy tới bước 5 rồi quay về bước 1. Hình 4-20. Lưu đồ bước 1.  Lưu đồ bước 1. Bước đầu tiên là bước vẽ cầu, người chơi sẽ nhấn giữ nút X trên PS2 để cầu dài ra liên tục. Người chơi cần canh sao cho cầu bắt vừa đủ, không dư, không thiếu. Chiều dài tối đa có thể vẽ là từ vị trí của Hero đến cạnh phải màn hình. Thả nút X để qua bước 2. Bắt đầu Kết Thúc S Khởi tạo tọa độ Hero, 2 trụ Bước 1 Bước 2 Bước 3 Bước 4 Bước 5 Bắt đầu Nhấn X Kết thúc S Đ Tăng chiều dài cầu Vẽ cầu Nhấn X Đ S
  • 60. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 44 Hình 4-21. Lưu đồ bước 2. Bước này dùng để xoay cầu từ thẳng đứng sang nằm ngang để nối đến vị trí Hero cần di chuyển tới. Hết bước 2 chuyển sáng bước kế tiếp. Hình 4-22. Lưu đồ bước 3. Bước 3 là bước Hero di chuyển từ trụ đang đứng sang trụ mới bằng cầu vừa xoay ở bước 2. Hero đi đến cuối cầu sẽ dừng lại chuyển sang bước 4. Bắt đầu Cầu chạm trụ phải Kết Thúc S Đ Xóa cầu Tính toán tọa độ mới Vẽ cầu mới Bắt đầu Hero tới cuối cầu Kết Thúc S Đ Xóa Hero Tính toán tọa độ mới Vẽ Hero mới
  • 61. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 45 Hình 4-23. Lưu đồ bước 4.  Lưu đồ bước 4. Bước này dùng để kiểm tra xem Hero có đứng ngoài trụ mới hay không bằng cách so sánh tọa độ của 2 đối tượng với nhau. Nếu như Hero đứng ngoài trụ mới thì xem như người chơi thua và gọi hàm “ Xử lý thua”. Hàm xử lý thua đã trình bày ở phần trước. Hình 4-24. Lưu đồ bước 5.  Lưu đồ bước 5. Nếu như vượt qua được bước 4 thì bước 5 sẽ tạo ra màn mới bằng cách di chuyển Hero và trụ hiện tại về bên trái sau đó tạo tọa độ trụ mới và quay về bước 1. Bắt đầu Cầu > cạnh phải trụ phải Kết Thúc S Đ Cầu < cạnh trái trụ phải Xử lý thua Đ S Bắt đầu Kết Thúc Đ S Dời Hero, trụ qua trái Tọa độ Hero < tọa độ gốc
  • 62. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 46 e. Game Ai Là Triệu Phú: Đây là 1 game không còn xa lạ đối với mọi người. Người chơi sẽ phải vượt qua 15 câu hỏi để đạt được kết quả cao nhất. Trong mỗi câu hỏi sẽ thiết kế phần phát tiếng sao cho càng giống với thực tế càng tốt để tạo sự thích thú với người chơi. Lưu đồ của game: Bắt đầu Kết Thúc Chạm nút Bắt Đầu Đ S Vẽ màn hình Vẽ nút Bắt đầu Hiện câu hỏi Đọc câu hỏi Hiện đáp án Đếm ngược Chọn đáp án Đáp án đúng Thông báo đúng 1 Hết thời gian 1 Thông báo sai Thay đổi câu hỏiReset Biến 2 2 Nhấn Select Reset Biến GAME Thoát Game Reset Biến 2 Đ Đ Đ Đ S S S S Hình 4-25. Lưu đồ game Ai là triệu phú.
  • 63. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 47 f. Game Vòng Quay Sát Phạt: Đây là game thiết kế riêng cho người chơi sử dụng trong các cuộc liên hoàn với nội dung trong vòng quay bao gồm các hình thức phạt như bắt uống gấp đôi, gấp ba hoặc được ăn mồi... Mỗi lượt người chơi sẽ chạm vào màn hình để quay, thời điểm dừng là hoàn toàn ngẫu nhiên. Lưu đồ được thiết kế: Hình 4-26. Lưu đồ chính Game Vòng Quay Sát Phạt. Bắt đầu Khởi tạo timer2,5 Tạo góc Vẽ màn hình Vẽ kim Tốc độ =1 Chiều quay = tăng Xử lý góc Xử lý tốc độ quay Tốc độ > 0 Xử lý kết quả theo góc Thông báo kết quả 1 1 Chạm màn hình Reset biến Nhấn Select Reset biến GAME Thoát Game Kết thúc S Đ S S Đ Đ
  • 64. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 48 Game này sẽ sử dụng timer 2 cho việc định thời gian để thay đổi thông số góc và thay đổi tốc độ quay, timer 5 để tạo ra thời gian delay ngẫu nhiên để tạo tính ngẫu nhiên cho trò chơi. Khi tốc độ đạt tối đa thì bắt đầu cho timer 5 hoạt động. Sau khi tốc độ về 0 thì xét thông số góc từ đó đưa ra thông báo về vị trí đạt được của lượt quay đó. Tiếp theo là lưu đồ chương trình con xử lý góc và xử lý tốc độ quay của kim: Hình 4-27. Lưu đồ xử lý góc và tốc độ quay. Như đã trình bày, khi bắt đầu thì mỗi lần timer 2 ngắt sẽ cho tăng tốc độ quay của kim lên và cùng lúc đó thay đổi giá tị góc của kim để đạt vị trí mới. Cho đến Bắt đầu Tăng tốc độ Ngắt timer2 Tốc độ < tốc độ tối đa Chiều quay=tăng Thay đổi góc Vẽ kim Tốc độ = tốc độ max Tốc độ > 0 Chiều quay=giảm Giảm tốc độ Cho phép timer 5 Ngắt timer 5 Chiều quay = giảm Tắt timer 5 Kết thúc 1 1 2 2 S Đ Đ S S Đ Đ S S Đ
  • 65. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 49 khi tốc độ đạt tối đa thì kích hoạt timer 5 với thời gian đếm được tạo ra 1 cách ngẫu nhiên. Tiếp theo là lưu đồ thông báo kết quả: Dựa vào vị trí góc của kim mà đưa ra các thông báo về kết quả tương ứng trên hình đã vẽ trước. Hình 4-28. Lưu đồ thông báo kết quả. Bắt đầu Kết thúc 0<góc<=pi/4 Pi/4<góc<=pi/2 Pi/2<góc<=3pi/4 3pi/3<góc<=pi pi<góc<=5pi/4 5pi/4<góc<=6pi/4 6pi/4<góc<=7pi/4 Đ S Đ S Đ S Đ S Đ S Đ S Đ S Kết quả 1 Kết quả 2 Kết quả 3 Kết quả 4 Kết quả 5 Kết quả 6 Kết quả 7 Kết quả 8
  • 66. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 50 g. Game Pika Pika: Chắc hẳn ai cũng đã chơi qua trò khủng long T-Rex vượt chướng ngại vật của trình duyệt web khi rớt mạng, T-Rex sẽ lần lượt nhảy qua các chướng ngại vật (CNV). Pika Pika cũng hoạt động dựa trên cơ chế đó, nhân vật chính của game là pikachu, trong game thì pikachu sẽ liên tục chạy trên đường nền, mỗi khi gặp CNV thì người chơi nhấn nút X trên PS2 để pikachu nhảy lên vượt qua. Nếu như pikachu chạm vào CNV xem như thua cuộc. Từ đó lưu đồ của game được thiết kế như sau: Hình 4-29. Lưu đồ chính game Pika Pika. Bắt đầu Khởi tạo ngoại vi Khởi tạo giá trị biến Vẽ Pikachu Vẽ CNV Nhấn X Ngắt timer5 Xử lý CNV Pikachu nhảy Kiểm tra thua Kết Thúc 1 1 Thua Thông báo Xử lý thua Đ S S Đ S Đ
  • 67. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 51 Như lưu đồ trên, mỗi lần người chơi nhấn X sẽ gọi hàm “Pikachu nhảy ” để xử lý cho pikachu nhảy lên và hàm xử lý cho CNV di chuyển liên tục. Bắt đầu Tăng độ cao Pikachu Vẽ Pikachu Độ cao < độ cao đỉnh Giảm độ cao Pikachu Vẽ Pikachu Độ cao = đất Kết thúc Đ S S Đ Bắt đầu Tọa độ CNV > 0 Di chuyển CNV sang trái Vẽ CNV Tạo tọa độ CNV mới Vẽ CNV Kết thúc S Đ Bắt đầu Pikachu chạm CNV Trả kết quả thua Kết thúc Đ S Hình 4-31.Lưu đồ di chuyển CNV. Hình 4-32. Lưu đồ kiểm tra pika có đụng CNV hay không. Hình 4-30. Lưu đồ xử lý pikachu nhảy lên.
  • 68. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 52 “Lưu đồ pikachu nhảy”: Khi người chơi đã nhấn nút X thì tăng độ cao của pikachu, sao đó so sánh với độ độ cao đỉnh đặt trước. Nếu đã đạt đỉnh thì giảm độ cao cho đến khi chạm đất hoặc thua thì dừng. “Lưu đồ xử lý di chuyển CNV” sử dụng ngắt timer để mỗi 1 khoảng thời gian cố định sẽ di chuyển CNV sang trái. Khi CNV đến cạnh trái màn hình xóa CNV, tạo CNV mới bên phải và lặp lại. Nếu như người chơi thua cuộc thì gọi hàm xử lý thua tương tự như các game trước. 4.3.2 Phần mềm lập trình cho vi điều khiển Để lập trình cho dòng vi điều khiển ARM 32 bit có nhiều chương trình hỗ trợ như Keil C, Eclipse, AC6 …Ở đây tôi sử dụng phần mềm Keil C MDK5 để lập trình vì đây là 1 phần mềm dễ sử dụng, hỗ trợ chạy Debug, có thể sử dụng cùng với phần mềm STM32CubeMX để tạo code nhanh. Phần mềm được phát hành bởi hãng armKEIL hỗ trợ lập trình tất cả các dòng ARM 32 bit. Có đầy đủ các công cụ cần thiết hỗ trợ người sử dụng cho việc code, debugging và nạp chương trình. Phần mềm cần có bản quyển để sử dụng. Hình 4-33. Giao diện phần mềm Keil C.
  • 69. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 53 Cách cài đặt phần mềm: Bước 1: tải phần mềm từ trang web keil.com, giải nén sẽ ra thư mục KeilC V5, bên trong có chứa 2 thư mục: ARM và Keil 8051. Bước 2: Ta vào thư mục ARM chạy file mdk511.exe. Bước 3: Hộp thoại cài đặt xuất hiện. Nhấn Next để tiếp tục. Bước 4: Chọn “I agree to all the tems of the preceding License Agreement”, sau đó chọn Next. Bước 5: Chọn đường dẫn lưu phần mềm cài đặt, sau đó chọn Next. Bước 6: Điền thông tin cá nhân vào các ô và chọn Next. Bước 7: Chờ phần mềm cài đặt xong nhấn Finish. Bước 8: Sau đó, hộp thoại Pack Installer xuất hiện, nhấn OK. Bước 9: Trong hộp thoại Pack Installer, các bạn install dòng chip các bạn đang sử dụng. STM32CubeMX được cũng cấp bởi chính hãng STMicroelectronics. Hỗ trợ việc cấu hình trước khi bắt đầu 1 project mới. Cho phép người dùng cài đặt trước các thông số cho các ngoại vi để tiến hành sinh code ban đầu. Phần mềm này có thể sinh ra code tương thích với các IDE như Keil C, IAR...Phần mềm được cung cấp miễn phí. Hình 4-34.Giao diện phần mềm STM32CubeMX.
  • 70. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 54 Cách cài đặt phần mềm: Bước 1: Tải phần mềm trên web st.com. Vào chạy file cài đặt với tên SetupSTM32CubeMX.exe. Xuất hiện hộp thoại nhấn NEXT để tiếp tục. Bước 2: Xuất hiện hộp thoại chọn “I accept the terms of this license agreement” nhấn Next để tiếp tục. Bước 3: Xuất hiện hộp thoại chọn vùng nhớ để lưu cài đặt. Sau đó chọn Next. Bước 4: Xuất hiện hộp thoại. Chọn Next để tiếp tục. Bước 5: Đợi phần mềm thực hiện quá trình cài đặt. Bước 6: Sau khi hoàn thành chọn Next. Bước 7: Xuất hiện hộp thoại ta chọn Done để kết thúc quá trình cài đặt phần mềm. Cách tạo project mới: Bước 1: Mở phần mềm bằng cách kích đúp vào biểu tượng trên màn hình Bước 2: Vào New Project để tạo 1 Project mới, sau đó xuất hiện hộp thoại. Chọn tab Board Seletor Bước 3: Ở mục Type of board chọn Discovery và mục MCU series chọn STM32F7. Bước 4: Ở Boards List chọn và kích đúp vào hàng trên cùng là Discovery – STM32F746G DISCO – STM32F746NGHx. Bước 5: Tiến hành cấu hình xung clock và các ngoại vi cần thiết cho Project. Bước 6: Sau khi cấu hình xong vào tab Project –> Setting… ở đây tiến hành đặt tên Project muốn khởi tạo. Chọn đường dẫn lưu Project. Bước 7: Ở mục Toolchain/IDE chọn MDK-ARM V5. Sau đó nhấn OK. Bước 8: Sau khi cài đặt xong vào tab Project –> Generate code. Đợi phần mềm add các thư viện cần thiết cho Project và chọn Open Project.
  • 71. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 55 4.4. TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC: 4.4.1 Viết tài liệu hướng dẫn sử dụng: Sau khi lập trình xong thì dưới đây là các hướng dẫn sử dụng máy chơi game giúp cho người chơi dễ dàng biết được sử dụng tay cầm PS2 cũng như màn hình như thế nào đối với từng game: Bước 1: Khi cấp nguồn cho mạch thì màn hình sáng lên. Sau đó sẽ hiện lên danh mục các Game có sẵn trong máy. Người chơi cần kết nối tay cầm PS2 vào.  Bước 1.1: Bắt đầu thì hệ thống sẽ mặc định game đã chọn là game thứ nhất. Người chơi nhấn nút Up/Down trên PS2 để thay đổi Game muốn chơi.  Bước 1.2: Nhấn nút Start để bắt đầu trò chơi đang được chọn. Bước 2: Bắt đầu thao tác Game. Game 1:  Bước 2.1: Lần lượt từng người chơi chạm vào các ô được vẽ sẵn trên màn hình để tạo nên kí hiệu X/O của mình.  Bước 2.2: Khi có người thắng cuộc màn hình sẽ nhấp nháy những kí hiệu của người đó.  Bước 2.3: Chạm vào màn hình để chơi ván mới hoặc nhấn nút Select trên PS2 để thoát Game. Gam 2:  Bước 2.1: Xuất hiện 3 option bao gồm: loại banh, số người chơi, mức độ game, người chơi chạm vào màn hình tại vị trí tương ứng để chọn các thông số trên.  Bước 2.2: Nhấn Start trên PS2 để bắt đầu Game.  Bước 2.3: Banh sẽ di chuyển trong màn hình. Đối với 1 người chơi thì sử dụng 2 nút Left/Right để di chuyển thanh ngang để đón quả banh. Nếu 2 người chơi thì người chơi thứ 2 chạm vào màn hình để di chuyển thanh ngang thứ 2.
  • 72. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 56  Bước 2.4: Khi có người thua. Nhấn Start để trở lại chế độ cài đặt. Nhấn Start để chơi lại. Nhấn Select để thoát Game. Game 3:  Bước 2.1: khi bắt đầu, người chơi nhấn nút X trên PS2 để cho Bird bay lên.  Bước 2.2: khi thua cuộc. Nhấn Start để chơi lại hoặc Select để thoát Game. Game 4:  Bước 2.1: Nhấn nút X để vẽ dài cầu ra. Thả nhấn X để bắt đầu xoay cầu.  Bước 2.2: Nếu người chơi thua cuộc thì làm tương tự Bước 3.2. Game 5: Game này sẽ thao tác chủ yếu trên màn hình:  Bước 2.1: Bắt đầu sẽ xuất hiện màn hình chào Game. Chạm màn hình tại vị trí “Bắt đầu” để bắt đầu chơi hoặc nhấn Select để thoát Game.  Bước 2.2: Sau khi xuất hiện 4 đáp án. Người chơi có 30s để chọn câu trả lời. Quá 30s sẽ xem như thua cuộc và trở lại Bước 5.1. Chọn được đáp án trong 30s nếu câu trả lời đúng sẽ chuyển sang câu tiếp theo nếu sai thì xem như thua cuộc chuyển về bước 5.1.  Bước 2.3: Sau khi trả lời hết 15 câu hỏi thì người chơi chiến thắng chuyển về bước 5.1 Game 6:  Bước 2.1: Khi bắt đầu, người chơi chạm vào màn hình để bắt đầu cho kim xoay và chờ đợi kết quả.  Bước 2.2: Sau khi có kết quả thì tiếp tục chạm vào màn hình để bắt đầu lần quay mới hoặc có thể nhấn Select để thoát Game. Game 7:  Bước 2.1: Bắt đầu, pikachu sẽ chạy về hướng các CNV. Người chơi nhấn nút X để pikachu nhảy lên vượt qua.
  • 73. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 57  Bước 2.2: Nếu như vượt không qua CNV thì xem như thua cuộc. Nhấn Start để chơi lại hoặc Select để chơi game khác. 4.4.2 Thao tác sử dụng: Để tăng sự tương quan thì tôi sẽ trình bày các thao tác dụng dụng mạch bằng hình ảnh mà tôi chụp lại trong quá trình sử dụng. Người dùng sử dụng 2 nút lên xuống bên trái để lựa chọn tựa game và nhấn nút Start để bắt đầu vào Game. Hình 4-35. Thao tác chọn game
  • 74. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 58 Game Cờ caro thì người chơi chạm vào các ô trống theo dấu mũi tên để vẽ kí hiệu theo lượt của mình. Người chơi cài đặt các chế độ tại 3 vị trí trên. Sau đó nhấn nút Start. Vào game thì chỉ sử dụng 2 nút trái phải nếu 1 người chơi và thêm chạm màn hình nếu 2 người chơi để di chuyển thanh ngang. Nếu có người thua thì nhấn Start để bắt đầu lại hoặc Select để thoát game. Hình 4-36. Thao tác Game Cờ Caro. Hình 4-37. Thao tác chọn chế độ Game BBB.
  • 75. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 59 Game này người chơi chỉ cần nhấn nút X để Bird bay lên. Nếu thua thì nhấn Hình 4-39. Thao tác game Flappy Bird. Hình 4-38. Nút nhấn điều khiển game BBB.
  • 76. THI CÔNG HỆ THỐNG BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 60 Start để bắt đầu lại và nhấn Select để thoát Game. Người chơi nhấn giữ nút X để tăng độ dài của cầu sao đó thả nhấn để đến các bước tiếp theo. Nếu như thua cuộc thì làm như game trước. Các game sau cũng sử dụng tương tự như phần hướng dẫn sử dụng. Hình 4-40. Thao tác game Stick Hero.
  • 77. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 61 Chương 5: KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ Sau quá trình tìm hiểu, nghiên cứu và thực hành thì tôi đã cơ bản hoàn thành được những yêu cầu đặt ra lúc bắt đầu đồ án này. Từ đó rút ra được nhiều kinh nghiệm cũng như kiến thức mới từ GVHD, từ chính bản thân trong lúc thực hiện đồ án. Biết được cách giao tiếp cơ bản với tay cầm PS2, module phát nhạc, vi điều khiển ARM32, lập trình hệ thống với phần mềm Keil C cùng với đó là sử dụng được phần mềm STM32CubeMX-phần mềm giúp ích rất nhiều cho lập trình viên sử dụng ARM32. Biết được thêm các giải thuật xử lý chuỗi đơn giản, tính sắp xếp logic cho quá trình chạy các game. 5.1. KẾT QUẢ 5.1.1 Phần cứng Sau khi thi công, lắp ráp KIT, mạch kết nối, bộ khung thì được 1 khối hoàn chỉnh Hình 5-1. Kết quả phần cứng.
  • 78. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 62 5.1.2 Phần mềm Sau khi lập trình hệ thống, kết quả đạt được các game với giao diện: Hình 5-2. Giao diện chọn Game. Tiếp theo là các hình về các game đã lập trình được: Hình 5-3. Game Cờ Caro. Hình 5-4. Chọn chế độ Game BBB.
  • 79. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 63 Hình 5-5. Game Ball Bing Bong. Hình 5-6. Game Flappy Bird.
  • 80. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 64 Hình 5-7. Game Stick Hero. Hình 5-8. Game Vòng Quay Sát Phạt.
  • 81. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 65 Hình 5-9. Game Ai Là Triệu Phú. Hình 5-10. Game Pika Pika. 5.2. ĐÁNH GIÁ KẾT QUẢ, NHẬN XÉT VÀ ĐÁNH GIÁ Sau quá trình thực hiện tôi đã hoàn thành được 7 Game mini phổ biến, kết hợp được giữa KIT, PS2 và module VS1003 chạy cùng với nhau trong hệ thống. Game chạy cơ bản chính xác. Tuy nhiên do thời gian có giới hạn nên đồ họa của Game vẫn còn đơn giản, hình ảnh chủ yếu lấy từ mạng internet mà chưa tự thiết kế được. Đôi lúc hệ thống vẫn có lỗi nhỏ như Game 1 do ô nhỏ nên chạm vào ô này nhưng kết quả lại ra ô kế cạnh... Nếu như được tự đánh giá, tôi xin đánh giá hệ thống thực đạt khoảng 90%.
  • 82. KẾT LUẬN_HƯỚNG PHÁT TRIỂN BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 66 Chương 6: KẾT LUẬN_HƯỚNG PHÁT TRIỂN 6.1. KẾT LUẬN Sau quá trình thực hiện trong 3 tháng dưới sự hướng dẫn tận tình của thầy Phan Vân Hoàn cùng sự cố gắng của bản thân thì đồ án đã hoàn thành đúng dự định, đảm bảo yêu cầu đặt ra từ ban đầu. Chạy được 7 Game như đã đặt ra từ đầu, phát được nhạc trong quá trình chơi và kết hợp được tay cầm PS2 vào thao tác. Trong đó, tôi đã sử dụng được phần mềm Keil C 5 để lập trình cho vi điều khiển ARM32, phần mềm STM32CubeMX hỗ trợ sinh code, phần mềm Altium Design để thiết kế mạch PCB, phần mềm Adobe Photoshop để chỉnh sửa hình ảnh. Nhận xét và đánh giá: Phần mềm chạy tốt, đảm bảo các Game chạy mượt, ít giật lag. Tay cầm PS2 sử dụng ổn định, tác động nhanh khi tác động, module phát âm thanh chạy tốt nhạc được phát đúng tốc độ không bị trễ. Phần cứng được thiết kế chạy ổn định chưa thấy hiện tượng treo máy. Khung được thiết kế chắc chắn, thẩm mỹ. Jack cắm PS2 vị trí hợp lý dễ dàng kết nối. 6.2. HƯỚNG PHÁT TRIỂN Do chỉ dừng lại ở mức thiết kế game đã có sẵn nên để phát triển hơn tôi có những ý tưởng như sau dành cho những người có ý định phát triển tiếp đồ án này:  Tăng đồ họa cho Game.  Những đoạn giới thiệu game có thể cho phát Video thay vì chỉ là 1 ảnh cùng với đoạn âm thanh.  Kết hợp thêm các chế độ người chơi với máy bằng thuật toán AI đặc biệt là Game 1 và Game 2.  Làm thêm nhiều Game.