Tải bản đầy đủ (.pdf) (52 trang)

Báo cáo bài tập lớn công nghệ phần mềm nhúng đề tài xe điều khiển thông qua bluetooth

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (6.09 MB, 52 trang )

HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA CÔNG NGHỆ THÔNG TIN
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

BÁO CÁO BÀI TẬP LỚN CÔNG NGHỆ PHẦN MỀM NHÚNG
ĐỀ TÀI: XE ĐIỀU KHIỂN THƠNG QUA BLUETOOTH

Ngành: Cơng nghệ thơng tin
Chun ngành: Kỹ thuật phần mềm nhúng và di động

Sinh viên thực hiện:
Hồng Hữu Thơm – CT040347
Bạch Đình Bảo Phúc – CT040339
Nguyễn Đức Phú – CT040338
Lớp: Công nghệ phần mềm nhúng – L03
Giảng viên hướng dẫn:
Ths. Lê Đức Thuận
Khoa Công nghệ thông tin – Học viện Kỹ thuật mật mã

Hà Nội, 2022


MỤC LỤC
LỜI NÓI ĐẦU .......................................................................................................... 1
TÓM TẮT ĐỀ TÀI .................................................................................................. 3
CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀ ARDUINO VÀ CÔNG NGHỆ
BLUETOOTH .......................................................................................................... 5
1.1 Giới thiệu về ARDUINO. .................................................................................... 5
1.1.1 Giới thiệu về ARDUINO UNO R3. ....................................................... 5
1.1.2 Thông số kỹ thuật của ARDUINO UNO R3 ......................................... 6
1.1.3 Vi điều khiển .......................................................................................... 6


1.1.4 Các cổng kết nối của ARDUINO UNO R3 ........................................... 7
1.1.5 Năng lượng và bộ nhớ ............................................................................ 8
1.2 Thiết kế............................................................................................................... 10
1.2.1 Thiết kế nguồn ...................................................................................... 10
1.2.2 Thiết kế mạch dao động. ....................................................................... 11
1.2.3 Thiết kế mạch reset. .............................................................................. 12
1.2.4 Thiết kế mạch nạp và giao tiếp máy tính. ............................................. 13
1.3 Lập trình cho ARDUINO UNO R3. .................................................................. 14
1.4 Sơ lược công nghệ Bluetooth. ............................................................................ 18
1.4.1 Sơ lược về kết nối bluetooth ................................................................ 18
1.4.2 Các chuẩn kết nối Bluetooth................................................................. 19
1.4.3 Các tính năng của Bluetooth................................................................. 19
1.4.4 Ưu và nhược điểm của công nghệ Bluetooth ....................................... 20
1.5 Giới thiệu về module Bluetooth HC05 .............................................................. 21
1.5.1 Giới thiệu về Module Bluetooth HC05 ................................................ 21
1.5.2 Thông số Module Bluetooth HC05 ...................................................... 21
1.6 Tổng kết chương 1 ............................................................................................. 22
Chương 2: PHÂN TÍCH, THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG.............. 23
2.1 Thiết kế phần cứng............................................................................................. 23
2.1.1 Thiết kế sơ đồ khối ................................................................................ 23
2.1 2 Tổng quan phần cứng ............................................................................ 23
2.2 Thiết kế phần mềm. ........................................................................................... 28
2.2.1 Sơ đồ Use Case tổng quát ...................................................................... 28
2.2.2 Đặc tả các Use Case............................................................................... 29
2.2.3 Phân tích các ca sử dụng........................................................................ 30
2.2.4 Sơ đồ thuật toán điều khiển ................................................................... 32
2.2.5 Mơ tả quy trình ...................................................................................... 32
2.2.6 Phần mềm điều khiển............................................................................. 33
2.3 Lắp ráp và hoàn thiện hệ thống.......................................................................... 34
2.3.1 Code Arduino......................................................................................... 34

2.3.2 Mơ hình thử nghiệm .............................................................................. 36
2.4 Tổng kết chương 2. ............................................................................................ 38
CHƯƠNG 3: THỬ NGHIỆM VÀ ĐÁNH GIÁ HỆ THỐNG............................ 39
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN............................................................ 40
TÀI LIỆU THAM KHẢO ..................................................................................... 42


PHỤ LỤC ................................................................................................................ 43


DANH MỤC HÌNH VẼ
Hình 1.1 Arduino Uno R3 ................................................................................................. 5
Hình 1.2 Vi điều khiển ARDUINO UNO R3 ..................................................................... 7
Hình 1.3 Các cổng kết nối của Arduino Uno R3 .............................................................. 7
Hình 1.4 Thiết kế nguồn.................................................................................................. 10
Hình 1.5 Thiết kế mạch dao động ................................................................................... 12
Hình 1.6 Thiết kế mạch reset .......................................................................................... 13
Hình 1.7 Thiết kế mạch nạp và giao tiếp máy tính ......................................................... 14
Hình 1.8 Lập trình Arduino Uno trên phần mềm Arduino IDE ..................................... 15
Hình 1.9 Lập trình Arduino bằng ngơn ngữ C/C++ ...................................................... 16
Hình 1.10 Tương thích với bo mạch Arduino ................................................................. 17
Hình 1.11 Thư viện phong phú ....................................................................................... 17
Hình 1.12 Sơ lược về kết nối Bluetooh ........................................................................... 18
Hình 1.13 Module HC05................................................................................................. 21
Hình 2.1 Arduino Uno R3 ............................................................................................... 24
Hình 2.2 Module Bluetooth HC05 .................................................................................. 24
Hình 2.3 Cấu hình sơ đồ chân L298n ............................................................................. 25
Hình 2.4 Động cơ vàng giảm tốc .................................................................................... 26
Hình 2.5 Pin 18650 ......................................................................................................... 27
Hình 2.6 Cơng tắc 2 chân ............................................................................................... 27

Hình 2.7 Biểu đồ Use Case tổng quát............................................................................. 28
Hình 2.8 Biểu đồ trình tự đi thẳng .................................................................................. 30
Hình 2.9 Biểu đồ trình tự đi lùi ....................................................................................... 31
Hình 2.10 Biểu đồ trình tự rẽ trái ................................................................................... 31
Hình 2.11 Biểu đồ trình tự rẽ phải.................................................................................. 31
Hình 2.12 Sơ đồ thuật tốn xe điều khiển bluetooth....................................................... 32
Hình 2.13 Ứng dụng điều khiển xe thơng qua kết nối bluetooth .................................... 33
Hình 2.14 Giao diện ứng dụng. ...................................................................................... 33
Hình 2.15 Giao diện ứng dụng. ...................................................................................... 34
Hình 2.16 Định nghĩa các chân gán vào động cơ .......................................................... 34
Hình 2.17 Định nghĩa các chân tín hiệu ......................................................................... 35
Hình 2.18 Điều chỉnh tốc độ của xe ............................................................................... 35
Hình 2.19 Thiết lập các chức năng di chuyển của xe ..................................................... 36


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Hình 2.20 Sơ đồ kết nối của hệ thống xe ........................................................................ 37
Hình 2.21 Xe khi được lắp ráp hồn thiện ..................................................................... 37

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

DANH MỤC BẢNG BIỂU
Bảng 1 thành phần linh kiện cấu tạo của xe..................................................................... 4
Bảng 2 Thông số kỹ thuật của Arduino Uno R3 ............................................................... 6
Bảng 3 Mô tả các chân của Module L298n .................................................................... 26
Bảng 4 Đặc tả Use Case “Driver” ................................................................................. 29

Bảng 5 Đặc tả Use Case “Adjust” ................................................................................. 30

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

LỜI NĨI ĐẦU
Cùng với sự phát triển nhanh chóng của lĩnh vực Khoa học – Kỹ thuật, từ những
hệ thống máy tính lớn đến những hệ thống máy tính cá nhân, từ những việc điều khiển
các máy công nghiệp đến các thiết bị phục vụ đời sống hằng ngày của con người. Trong
các hệ thống đó, việc trao đổi thơng tin là vơ cùng quan trọng.
Cùng với đó việc điều khiển từ xa ngày cảng trở nên phổ biến trong đời sống hằng
ngày. Nhờ có sự phát triển của cơng nghệ điều khiển từ xa, ngày nay một số công việc
thay vì sử dụng nhân cơng trực tiếp thì người ta đã thay thế nó bằng việc điều khiển từ xa.
Và một trong những máy móc đó là “Xe điều khiển thông qua bluetooth”. Công nghệ
truyền tin không dây ngày càng phát triển, đặc biệt công nghệ Bluetooth đã phổ biến hầu
hết các thiết bị điện tử di động.
Trong các khu cơng nghiệp hay một số nhà máy hóa chất, việc vận chuyển đồ các
vật tư trang bị từ nơi này đến nơi khác luôn xảy ra thường xuyên với tần suất cao. Đặc
biệt khối lượng vận chuyển cũng không hề nhỏ đối với một số trường hợp. Trong các nhà
máy, một số phịng có thể an tồn nhưng số ít khác trong q trình hoạt động có thể tạo ra
nhiều hóa chất độc hại.Việc sử dụng nhân cơng là con người trong các mơi trường này
thực sự có thể gây hại về lâu về dài và ảnh hưởng đến chất lượng cơng việc cũng như q
trình hoạt động. Vì thế nên để giảm thiểu rủi ro gây ra cũng như giảm thiểu chi phí và
thiệt hại về kinh tế trong quá trình vận động, việc điều khiển các phương tiện vận chuyển
từ xa là vấn đề cấp thiết cần được thực hiện.
Những lợi ích mang lại của xe điều khiển từ xa bluetooth:
- An toàn: Sử dụng xe điều khiển từ xa giúp cho công nhân không phải hoạt động
trong mơi trường độc hại, q trình vận hành cũng ít có rủi ro về tai nạn hơn.

- Giảm thiểu nhân lực: Có thể cắt giảm số lượng nhân cơng, thay vì sử dụng mỗi
người một phương tiện trong quá trình vận chuyển thì giời đây có thể cắt giảm
để một số người vận chuyển cùng lúc một hoặc nhiều máy tùy vào năng lực.
- Tiết kiệm chi phí: Với việc cắt giảm nhân lực cũng như sử dụng bằng máy móc
có thể tiết kiệm chi phí trong việc trả lương cho nhân viên.
Mục tiêu của để tài chính là nghiên cứu và chế tạo “Xe điều khiển từ xa thơng qua
bluetooth”, trên cơ sở đó tiếp tục phát triển để giúp sản phẩm tiến sát hơn với thực tiễn
các cơng việc trong đời sống như: vận chuyển hàng hóa, hoạt động trong môi trường hoặc
khu vực mà con người khó tiếp cận,...

1

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Bản báo cáo này sẽ trình bày kết quả của quá trình nghiên cứu và phát triển đề tài
“Xe điều khiển thơng qua bluetooth”.
Vì trong q trình nghiên cứu cịn tồn tại khá nhiều hạn chế, cũng như kiến thức
thực tế chưa được sâu rộng nên không thể tránh khỏi những sai sót. Rất mong nhận được
sự góp ý từ thầy cô và các bạn.
Nội dung nghiên cứu được tập trung vào các nội dung chính như sau:
NỘI DUNG 1: Tiến hành khảo sát và xây dựng bài toán
NỘI DUNG 2: Phân tích, thiết kế và xây dựng hệ thống
NỘI DUNG 3: Thử nghiệm và đánh giá hệ thống
NỘI DUNG 4: Kết luận tổng quan về hệ thống và đưa ra hướng phát triển cũng như
tính ứng dụng của hệ thống trong tương lai.

2


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

TÓM TẮT ĐỀ TÀI
Yêu cầu chung và các chức năng của hệ thống:
- u cầu chung:
• Tính thực thi cao, có khả năng phát triển.
• Đảm bảo về chất lượng, độ chính xác cao, làm việc lâu dài, bền bỉ.
• Tiết kiệm chi phí, linh kiện dễ kiếm dễ sử dụng và dễ dàng thay thế khi
xảy ra sự cố.
• Giảm thiểu chi phí, thời gian vận hành, bảo dưỡng và sửa chữa.
- Chức năng: Xe có khả năng di chuyển tiến, lùi, rẽ trái , rẽ phải, dừng lại, điều
chỉnh tốc độ khi nhận được tín hiệu điều khiển thông qua bluetooth từ điện
thoại.
Phương án thiết kế:
Các loại xe bluetooth nói chung có kết cấu khá đa dạng và phong phú. Mỗi kết cấu
được thực hiện với nhiều phương án khá nhau, mỗi phương án sẽ trình bày dưới dạng
một một sơ đồ biểu hiện các đặc điểm chính của kết cấu đó.
Cần phải lựa chọn các thành phần cấu tạo sao cho cấu trúc của xe luôn luôn được
đảm bảo trong quá trình hoạt động, hạn chế tối đa thiệt hại cũng như ảnh hưởng đến các
linh kiện bên trong (đặc biệt là phần mạch điện tử).
Mơ hình được xây dựng dựa trên khuôn mẫu của xe ô tô 4 bánh để đảm bảo độ ổn
định, giúp xe giữ thăng bằng tốt hơn trong một số môi trường khác. Phần khung xe cần
được gia cố chắc chắn và phải rộng đủ để bảo vệ các linh kiện trong trường hợp xảy ra
sự cố về va chạm.
Đối với các xe điều khiển bluetooth, việc cấp nguồn và duy trì dịng điện trong q
trình vận hành là cực kì quan trọng. Vì thế cần phải sử dụng lượng điện áp ổn định, sử

dụng pin 18650 dòng xả 5C đảm bảo đủ điện năng cho xe trong quá trình vận hành,
tránh hao hụt điện năng của như đáp ứng đủ năng lượng hoạt động cho các thành phần
của xe trong vòng 1 tiếng liên tục.

3

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Linh kiện sử dụng:
Xe được thiết kế với các linh kiện cấu tạo sau đây:
Số lượng

Thành phần

1

Khung xe mica 4 bánh 2 tầng

2

Pin 18650 dòng xả 5C 2600mAh

3

Dây điện đơn 1 màu

1


Arduino Uno R3

1

Module bluetooth HC05

Động cơ vàng giảm tốc DC 3-6V -E11

Đế pin 18650 2 viên nối tiếp 7.4v (có dây)

4

1

4

Bánh xe vàng

Module điều khiển động cơ L298n (6C2.1)

1

1

Cơng tắc 2 chân 2 vị trí nhỏ
Bảng 1 thành phần linh kiện cấu tạo của xe
4

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99



37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀ ARDUINO VÀ CÔNG NGHỆ
BLUETOOTH
Chương này trình bày tồn bộ những kiến thức phần lý thuyết liên quan tới Arduino
cũng như phần mềm lập trình Arduino IDE.
1.1 Giới thiệu về ARDUINO.
1.1.1 Giới thiệu về ARDUINO UNO R3.
Arduino Uno R3 là dòng Arduino thế hệ thứ 3 cũng giống như các phiên bản trước
đây giúp người dùng dễ dàng tiếp cận với lập trình để tạo ra phần cứng có những tính năng
mong muốn một cách nhanh chóng với chi phí hợp lý.

Hình 1.1 Arduino Uno R3
Arduino là một board mạch vi xử lý, nhằm xây dựng các ứng dụng tương tác với
nhau hoặc với môi trường được thuận lợi hơn. Phần cứng bao gồm một board mạch
nguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel 8bit, hoặc ARM Atmel 32bit. Những Model hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân đầu vào
analog, 14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác nhau.
Arduino có thể kết nối với những gì?
Một hệ thống Arduino có thể cung cấp cho bạn rất nhiều sự tương tác với môi
trường xung quanh với:
- Hệ thống cảm biến đa dạng về chủng loại (đo đạc nhiệt độ, độ ẩm, gia tốc, vận tốc,
cường độ ánh sáng, màu sắc vật thể, lưu lượng nước, phát hiện chuyển động, phát
hiện kim loại, khí độc, …)
- Các thiết bị hiển thị (màn hình LCD, đèn LED, …).
5

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99



37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

- Các module chức năng (shield) hỗ trợ kêt nối có dây với các thiết bị khác hoặc các
kết nối không dây thông dụng (3G, GPRS, Wifi, Bluetooth, 315/433Mhz, 2.4Ghz,
…),
- Định vị GPS, nhắn tin SMS, …
1.1.2 Thông số kỹ thuật của ARDUINO UNO R3
Vi điều khiển

Atmega328 họ 8 bit

Điện áp hoạt động

5V DC (chỉ được cấp qua cổng USB)

Tần số hoạt động

16MHz

Dòng tiêu thụ

Khoảng 30mA

Điện áp khuyên dùng

7-12V DC

Điện áp vào giới hạn


6-20V DC

Số chân Digital I/O

14 (6 chân hardware PWM)

Số chân Analog

6 (độ phân giải 10 bit)

Dòng tối đa trên mỗi chân I/O

30 mA

Dòng ra tối đa (5V)

500 mA

Dòng ra tối đa (3,3V)

50 mA
32 KB (Atmega328) với 0,5KB dùng

Bộ nhớ flash

bởi booloader

SRAM

2 KB (Atmega328)


EEPROM

1 KB (Atmega328)
Bảng 2 Thông số kỹ thuật của Arduino Uno R3

1.1.3 Vi điều khiển
Arduino UNO có thể sử dụng 3 vi điều khiển họ 8bit AVR là ATmega8,
Atmega168, Atmega328. Bộ não này có thể xử lí những tác vụ đơn giản như điều khiển
đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm một trạm đo nhiệt độ - độ
ẩm và hiển thị lên màn hình LCD, … hay những ứng dụng khác

6

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Hình 1.2 Vi điều khiển ARDUINO UNO R3
Thiết kế tiêu chuẩn của Arduino UNO sử dụng vi điều khiển Atmega328 với giá khoảng
90.000đ. Tuy nhiên nếu yêu cầu phần cứng của bạn không cao hoặc túi tiền không cho
phép, bạn có thể sử dụng các loại vi điều khiển khác có chức năng tương đương nhưng rẻ
hơn như Atmega8 (bộ nhớ flash 8KB) với giá khoảng 45.000đ hoặc Atmega168 (bộ nhớ
flash 16KB) với giá khoảng 65.000đ.
1.1.4 Các cổng kết nối của ARDUINO UNO R3
Arduino UNO có 14 chân digital 7lue để đọc hoặc xuất tín hiệu. Chúng chỉ có 2
mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA. Ở mỗi chân đều
có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển Atmega328 (mặc định thì
các điện trở này khơng được kết nối).


Hình 1.3 Các cổng kết nối của Arduino Uno R3
Một số chân digital có các chức năng đặc biệt như sau:


2 chân Serial: 0 (RX) và 1 (TX): 7lue để gửi (transmit – TX) và nhận (receive –
RX) dữ liệu TTL Serial. Arduino Uno có thể giao tiếp với thiết bị khác thông qua
2 chân này. Kết nối 7luetooth thường thấy nói nơm na chính là kết nối Serial không
7

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66







dây. Nếu khơng cần giao tiếp Serial, bạn khơng nên sử dụng 2 chân này nếu không
cần thiết
Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM với độ phân
giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analogWrite().
Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân này từ mức
0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác.
Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Ngoài các chức
năng thơng thường, 4 chân này cịn 8lue để truyền phát dữ liệu bằng giao thức SPI
với các thiết bị khác.

LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L). Khi bấm nút
Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu. Nó được nối với chân số 13. Khi
chân này được người 8lue sử dụng, LED sẽ sáng.

Arduino UNO có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit (0 →
210-1) để đọc giá trị điện áp trong khoảng 0V → 5V. Với chân AREF trên board, bạn có
thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog. Tức là nếu bạn cấp điện
áp 2.5V vào chân này thì bạn có thể 8lue các chân analog để đo điện áp trong khoảng từ
0V → 2.5V với độ phân giải vẫn là 10bit.
Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với
các thiết bị khác.

1.1.5 Năng lượng và bộ nhớ
Arduino UNO có thể được cấp nguồn 5V thơng qua cổng USB hoặc cấp nguồn
ngồi với điện áp khuyên 8lue là 7-12V DC và giới hạn là 6-20V. Thường thì cấp nguồn
bằng pin vng 9V là hợp lí nhất nếu bạn khơng có sẵn nguồn từ cổng USB. Nếu cấp
nguồn vượt quá ngưỡng giới hạn trên, bạn sẽ làm hỏng Arduino UNO.
a. Các chân năng lượng.









GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO. Khi bạn 8lue các
thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối
với nhau.

5V: cấp điện áp 5V đầu ra. Dòng tối đa cho phép ở chân này là 500mA.
3.3V: cấp điện áp 3.3V đầu ra. Dòng tối đa cho phép ở chân này là 50mA.
Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, bạn nối cực dương
của nguồn với chân này và cực âm của nguồn với chân GND.
IOREF: điện áp hoạt động của vi điều khiển trên Arduino UNO có thể được đo ở
chân này. Và dĩ nhiên nó ln là 5V. Mặc dù vậy bạn không được lấy nguồn 5V
từ chân này để sử dụng bởi chức năng của nó khơng phải là cấp nguồn.
RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với
việc chân RESET được nối với GND qua 1 điện trở 10KΩ.
8

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Lưu ý:










Arduino UNO khơng có bảo vệ cắm ngược nguồn vào. Do đó bạn phải hết sức
cẩn thận, kiểm tra các cực âm – dương của nguồn trước khi cấp cho Arduino
UNO. Việc làm chập mạch nguồn vào của Arduino UNO sẽ biến nó thành một

miếng nhựa chặn giấy. mình khuyên bạn nên 9lue nguồn từ cổng USB nếu có thể.
Các chân 3.3V và 5V trên Arduino là các chân 9lue để cấp nguồn ra cho các thiết
bị khác, không phải là các chân cấp nguồn vào. Việc cấp nguồn sai vị trí có thể
làm hỏng board. Điều này khơng được nhà sản xuất khuyến khích.
Cấp nguồn ngồi khơng qua cổng USB cho Arduino UNO với điện áp dưới 6V có
thể làm hỏng board.
Cấp điện áp trên 13V vào chân RESET trên board có thể làm hỏng vi điều khiển
Atmega328.
Cường độ dòng điện vào/ra ở tất cả các chân Digital và Analog của Arduino UNO
nếu vượt quá 200mA sẽ làm hỏng vi điều khiển.
Cấp điệp áp trên 5.5V vào các chân Digital hoặc Analog của Arduino UNO sẽ làm
hỏng vi điều khiển.
Cường độ dòng điện qua một chân Digital hoặc Analog bất kì của Arduino UNO
vượt quá 40mA sẽ làm hỏng vi điều khiển. Do đó nếu khơng 9lue để truyền nhận
dữ liệu, bạn phải mắc một điện trở hạn dịng.

Khi mình nói rằng bạn “có thể làm hỏng”, điều đó có nghĩa là chưa chắc sẽ hỏng ngay
bởi các thông số kĩ thuật của linh kiện điện tử luôn có một sự tương đối nhất định. Do đó
hãy cứ tuân thủ theo những thông số kĩ thuật của nhà sản xuất nếu bạn không muốn phải
mua một board Arduino UNO thứ 2.Khi mình nói rằng bạn “có thể làm hỏng”, điều đó
có nghĩa là chưa chắc sẽ hỏng ngay bởi các thông số kĩ thuật của linh kiện điện tử ln
có một sự tương đối nhất định. Do đó hãy cứ tuân thủ theo những thông số kĩ thuật của
nhà sản xuất nếu bạn không muốn phải mua một board Arduino UNO thứ 2.
b. Bộ nhớ.

Vi điều khiển Atmega328 tiêu chuẩn cung cấp cho người 9lue:







32KB bộ nhớ Flash: những đoạn lệnh bạn lập trình sẽ được lưu trữ trong bộ nhớ
Flash của vi điều khiển. Thường thì sẽ có khoảng vài KB trong số này sẽ được
9lue cho bootloader nhưng đừng lo, bạn hiếm khi nào cần quá 20KB bộ nhớ này
đâu.
2KB cho SRAM (Static Random Access Memory): giá trị các biến bạn khai báo
khi lập trình sẽ lưu ở đây. Bạn khai báo càng nhiều biến thì càng cần nhiều bộ nhớ
RAM. Tuy vậy, thực sự thì cũng hiếm khi nào bộ nhớ RAM lại trở thành thứ mà
bạn phải bận tâm. Khi mất điện, dữ liệu trên SRAM sẽ bị mất.
1KB cho EEPROM (Electrically Eraseble Programmable Read Only Memory):
đây giống như một chiếc ổ cứng mini – nơi bạn có thể đọc và ghi dữ liệu của
mình vào đây mà khơng phải lo bị mất khi cúp điện giống như dữ liệu trên
SRAM.
9

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

1.2 Thiết kế.
1.2.1 Thiết kế nguồn

Hình 1.4 Thiết kế nguồn
Phần nguồn của Board mạch Arduino được thiết kế để thực hiện các nhiệm vụ sau:


Lựa chọn nguồn cung cấp cho board mạch (khối màu cam trong hình dưới). Board
mạch Arduino có thể được cung cấp nguồn bởi Adapter thơng qua Jack DC hoặc từ

10

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

cổng USB (2 mũi tên màu đỏ). Trong trường hợp chỉ có 1 trong 2 nguồn cung cấp thì
Board Arduino sẽ sử dụng nguồn cung cấp đó. Trong trường hợp có cả 2 nguồn cung
cấp thì Arduino sẽ ưu tiên lựa chọn nguồn cung cấp từ Jack DC thay vì từ cổng USB.
Việc ưu tiên này được thực hiện bởi OpAmp trong IC LMV358 và
MOSFET FDN340P. Điện áp từ Jack DC sau khi qua Diode bảo vệ D1 thì được gọi là
điện áp VIN. Điện áp VIN qua cầu phân áp để tạo thành VIN/2 để so sánh với điện
áp 3.3V. Vì VIN/2 >3.3V nên điện áp đầu ra của OpAmp là 5V, điều này làm cho
MOSFET khơng được kích, nguồn cung cấp cho Board Arduino là từ Jack DC sau khi
qua ổn áp.






Tạo ra các điện áp 5v và 3.3v (2 khối màu xanh) để cung cấp cho vi điều khiển và cũng
là điểm cấp nguồn cho các thiết bị bên ngoài sử dụng. Mạch Arduino sử dụng IC ổn
áp NCP1117 để tạo điện áp 5V từ nguồn cung cấp lớn và IC ổn áp LP2985 để tạo điện
áp 3.3V. Đây đều là những IC ổn áp tuyến tính, tuy hiệu suất khơng cao nhưng ít gợn
nhiễu và mạch đơn giản.
Bảo vệ ngược nguồn, quá tải (vòng tròn màu đỏ). F1 là một cầu chì tự phục hồi, trong
trường hợp bạn chỉ sử dụng dây cáp USB để cấp nguồn thì tổng dịng tiêu thụ khơng
được q 500mA. Nếu khơng cầu chì sẽ ngăn khơng cho dịng điện chạy qua. D1 là

một Diode, chỉ cho dòng điện 1 chiều chạy qua (từ Jack DC vào mạch), trong trường
hợp mạch Arduino của bạn có mắc với các thiết bị khác và có nguồn cung cấp lớn hơn
nguồn vào Jack DC, nếu có sai sót chập mạch..vv.. thì sẽ khơng có trường hợp nguồn
các thiết bị bên ngoài chạy ngược vào Adapter.
Báo nguồn. Đèn nguồn ON sáng lên báo thiết bị đã được cấp nguồn. Nếu các bạn đã
cắm nguồn mà đèn nguồn khơng sáng thì có thể nguồn cung cấp của bạn đã bị hỏng
hoặc jack kết nối lỏng, hoặc mạch Arduino kết nối với các linh kiện bên ngoài bị ngắn
mạch.

1.2.2 Thiết kế mạch dao động.
Mạch giao động tạo ra các xung clock giúp cho vi điều khiển hoạt động, thực thi lệnh…
Board mạch Arduino Uno R3 sử dụng thạch anh 16Mhz làm nguồn dao động.

11

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Hình 1.5 Thiết kế mạch dao động
1.2.3 Thiết kế mạch reset.
Để vi điều khiển thực hiện khởi động lại thì chân RESET phải ở mức logic LOW
(~0V) trong 1 khoản thời gian đủ yêu cầu. Mạch reset của board Arduino UnoR3 phải
đảm bảo được 02 việc:
– Reset bằng tay: Khi nhấn nút, chân RESET nối với GND, làm cho MCU RESET.
Khi không nhấn nút chân Reset được kéo 5V.
– Reset tự động: Reset tự động được thực hiện ngay khi cấp nguồn cho vi điều khiển
nhờ sự phối hợp giữa điện trở nối lên nguồn và tụ điện nối đất. Thời gian tụ điện nạp
giúp cho chân RESET ở mức LOW trong 1 khoản thời gian đủ để vi điều khiển thực

hiện reset.
– Khởi động vi điều khiển trước khi nạp chương trình mới.

12

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Hình 1.6 Thiết kế mạch reset
1.2.4 Thiết kế mạch nạp và giao tiếp máy tính.
– Vi điều khiển Atmega328P trên Board Arduino UnoR3 đã được nạp sẵn 1
bootloader, cho phép nhận chương trình mới thơng qua chuẩn giao tiếp UART (chân
0 và 1) ở những giây đầu sau khi vi điều khiển Reset.
– Máy tính giao tiếp với Board mạch Arduino qua chuẩn giao tiếp USB (D+/D-),
thông qua một vi điều khiển trung gian là ATMEGA16U2 hoặc một IC trung gian là
CH340 (thường thấy trong các mạch sử dụng chip dán). Vi điều khiển hoặc IC này
có nhiệm vụ chuyển đổi chuẩn giao tiếp USB thành chuẩn giao tiếp UART để nạp
chương trình hoặc giao tiếp truyền nhận dữ liệu với máy tính (Serial).
– Phần thiết kế mạch nạp có tích hợp thêm 02 đèn LED, nên khi nạp chương trình các
bạn sẽ thấy 2LED này nhấp nháy. Cịn khi giao tiếp, nếu có dữ liệu từ máy tính gửi
xuống vi điều khiển thì đèn LED Rx sẽ nháy. Cịn nếu có dữ liệu từ vi điều khiển gửi
lên máy tính thì đèn Tx sẽ nháy.
13

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66


Hình 1.7 Thiết kế mạch nạp và giao tiếp máy tính
1.3 Lập trình cho ARDUINO UNO R3.
Các thiết bị dựa trên nền tảng Arduino được lập trình bằng ngơn riêng. Ngôn ngữ
này dựa trên ngôn ngữ Wiring được viết cho phần cứng nói chung. Và Wiring lại là một
biến thể của C/C++. Một số người gọi nó là Wiring, một số khác thì gọi là C hay C/C++.
Riêng mình thì gọi nó là “ngơn ngữ Arduino”, và đội ngũ phát triển Arduino cũng gọi như
vậy. Ngôn ngữ Arduino bắt nguồn từ C/C++ phổ biến hiện nay do đó rất dễ học, dễ hiểu.
Nếu học tốt chương trình Tin học 11 thì việc lập trình Arduino sẽ rất dễ thở đối với bạn.
Để lập trình cũng như gửi lệnh và nhận tín hiệu từ mạch Arduino, nhóm phát triển
dự án này đã cũng cấp đến cho người 14lue một môi trường lập trình Arduino được gọi là
Arduino IDE (Intergrated Development Environment) như hình dưới đây.
14

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Hình 1.8 Lập trình Arduino Uno trên phần mềm Arduino IDE
Các tính năng chính của Arduino IDE:
- Phần mềm lập trình mã nguồn mở miễn phí
IDE trong Arduino IDE là phần có nghĩa là mã nguồn mở, nghĩa là phần mềm
này miễn phí cả về phần tải về lẫn phần bản quyền: Người 15lue có quyền sửa
đổi, cải tiến, phát triển, nâng cấp theo một số nguyên tắc chung được nhà phát
hành cho phép mà không cần xin phép ai, điều mà họ không được phép làm đối
với các phần mềm nguồn đóng.
Tuy là phần mềm mã nguồn mở nhưng khả năng bảo mật thông tin của Arduino
IDE là vô cùng tuyệt vời, khi phát hiện lỗi nhà phát hành sẽ vá nó và cập nhật rất
nhanh khiến thơng tin của người 15lue khơng bị mất hoặc rị rỉ ra bên ngồi.

- Sử dụng ngơn ngữ lập trình C/C++ thân thiện với các lập trình viên

15

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

Arduino IDE sử dụng ngơn ngữ lập trình C/C++ rất phổ biến trong giới lập trình.
Bất kỳ đoạn code nào của C/C++ thì Arduino IDE đều có thể nhận dạng, giúp
các lập trình viên thuận tiện trong việc thiết kế chương trình lập cho các bo mạch
Arduino.

Hình 1.9 Lập trình Arduino bằng ngơn ngữ C/C++
- Hỗ trợ lập trình tốt cho bo mạch Arduino
Arduino có một module quản lý bo mạch, nơi người 16lue có thể chọn bo mạch
mà họ muốn làm việc cùng và có thể thay đổi bo mạch thơng qua Menu. Q trình
sửa đổi lựa chọn cũng liên tục tự động cập nhật để các dữ liệu có sẵn trong bo
mạch và dữ liệu sửa đổi đồng nhất với nhau. Bên cạnh đó, Arduino IDE cũng
giúp bạn tìm ra lỗi từ code mà bạn biết giúp bạn sửa lỗi kịp thời tránh tình trạng
bo mạch Arduino làm việc với code lỗi quá lâu dẫn đến hư hỏng hoặc tốc độ xử lý
bị giảm sút.

16

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66


Hình 1.10 Tương thích với bo mạch Arduino
- Thư viện hỗ trợ phong phú
Arduino IDE tích hợp với hơn 700 thư viện, được viết và chia sẻ bởi nhà phát
hành Arduino Software và thành viên trong cộng đồng Arduino. Mọi người có
thể tận dụng chúng cho dự án của riêng mình mà khơng cần phải bỏ ra bất kỳ chi
phí nào.

Hình 1.11 Thư viện phong phú
- Giao diện đơn giản, dễ sử dụng
Arduino IDE có một giao diện đơn giản, dễ sử dụng giúp người 17lue thuận tiện
hơn trong thao tác.
17

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

- Hỗ trợ đa nền tảng như Window, MacOS, Linux
Arduino IDE hoạt động trên 3 hệ điều hành phổ biến nhất là Windows, Mac
OS và Linux giúp người 18lue có thể truy cập vào phần mềm ở bất cứ đâu, bất cứ
khi nào miễn là họ có một cái máy tính. Ngồi ra, người 18lue có thể truy cập vào
cơng cụ từ đám mây. Điều này cho phép các nhà lập trình lựa chọn tạo và lưu dự
án của mình trên đám mây hoặc xây dựng chương trình trên máy tính và upload
nó lên bo mạch Arduino
1.4 Sơ lược cơng nghệ Bluetooth.
1.4.1 Sơ lược về kết nối bluetooth
Bluetooth được phát minh bởi cơng ty Ericsson vào năm 1994, nó có thể kết nối
nhiều thiết bị và khắc phục các vấn đề về đồng bộ hóa. Ngày nay hầu hết các nhà máy

đều sản xuất các thiết bị có sử dụng cơng nghệ Bluetooth. Các thiết bị này gồm có điện
thoại di động, laptop, tablet và thiết bị hỗ trợ cá nhân (Personal Digital Assistant – PDA)
khác. Công nghệ này thường được sử dụng để truyền thông giữa hai loại thiết bị khác
nhau.

Hình 1.12 Sơ lược về kết nối Bluetooh
Bluetooth sử dụng Blue Radio tần số 2.4GHz. Tuy sử dụng cùng tần số với công
nghệ Wifi nhưng chúng không hề xung đột với nhau vì Bluetooth sử dụng tần số có
bước Blue ngắn hơn.
Bluetooth là một chuẩn điện tử, điều đó có nghĩa là các 18lue sản xuất muốn có
đặt tính này trong sản phẩm thì họ phải tuân theo các yêu cầu của chuẩn của Bluetooth
18

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.C.33.44.55.54.78.655.43.22.2.4.55.2237.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.66

cho sản phẩm của mình. Những chỉ tiêu kỹ thuật này bảo đảm cho các thiết bị có thể
nhận ra và tương tác với nhau khi sử dụng công nghệ Bluetooth.
1.4.2 Các chuẩn kết nối Bluetooth.
- Bluetooth 1.0: Phiên bản Bluetooth đầu tiên với tốc độ 1Mpbs, nhưng khả năng tương
thích chưa cao.
- Bluetooth 1.1: Phiên bản cải thiện lỗi của 1.0 nhưng không cải thiện tốc độ.
- Bluetooth 1.2: Bản nâng cấp của Bluetooth 1.0 với sự cải tiến về tốc độ kết nối, truyền
tải.
- Bluetooth 2.0 + ERD: Ra mắt vào tháng 7/2007 với sự ổng định và tốc độ chia sẻ
nhanh hơn, tiết kiệm năng lượng hơn các phiên bản trước.
- Bluetooth 2.1 + ERD: Bản nâng cấp của Bluetooth 2.0 với cơ chế kết nối phạm vi
nhỏ.

- Bluetooth 3.0 + HS: Ra mắt vào năm 2009 với tốc độ lý thuyết lên đến 24 Mbps.
Bluetooth 3.0 rất phổ biến trên các mẫu điện thoại lúc bấy giờ, phù hợp với việc truyền
dữ liệu nhỏ như hình ảnh, file nhạc, …
- Bluetooth 4.0: Bluetooth 4.0 được ra đời vào ngày 30/6/2010 là một phiên bản tối ưu
hóa các chuẩn Bluetooth trước đó (Classic Bluetooth) cho phép truyền tải tốc độ cao
nhờ vào Bluetooth High Speed và tiêu tốn năng lượng thấp hơn nhờ vào Bluetooth
Low Energy.
- Bluetooth 5.0: Là thế hệ mới nhất hiện tại được SIG trình làng vào ngày 16/6/2016 với
nhiều cải tiến vượt bật như tầm phủ 19lue rộng gấp 4 lần, tốc độ nhanh hơn gấp
đôi và tiết kiệm điện hơn gấp 2.5 lần so với 4.0.
Bluetooth 5.1: Nâng cấp 19lue khả năng tìm hướng AoA (Angle of Arrival) và AoD
(Angle of Departure) giúp xác định vị trí chính xác của thiết bị. Ngồi ra Bluetooth 5.1
cịn trang bị khả năng kết nối khơng cần gói dữ liệu giúp kết nối, đồng bộ đơn giản và
ít điện năng hơn.
- Bluetooth 5.2: Được ra mắt năm 2020 với tính năng giao thức thuộc tính nâng cao
(EATT) giúp giảm độ trễ và 19lue mã hóa trong kết nối, tính năng kiểm sốt LEPC để
kiểm sốt nguồn và ổn định chất lượng tín hiệu, giảm tỉ lệ lỗi nhận tín hiệu và tính năng
ISOC cho phép truyền dữ liệu hai chiều với cùng lúc nhiều thiết bị.
1.4.3 Các tính năng của Bluetooth.

19

37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.55.77.77.99.44.45.67.22.55.77.C.37.99.44.45.67.22.99


×