TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA ĐIỆN-ĐIỆN TỬ ĐỘC LẬP - TỰ DO - HẠNH PHÚC
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH ----o0o----
Tp. HCM, ngày 05 tháng 10 năm 2018
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Phạm Quang Minh MSSV: 14141195
Hồ Văn Trọng MSSV: 14141338
Chuyên ngành: CNKT Điện tử - Truyền thông Mã ngành: 141
Hệ đào tạo: Đại học chính quy Mã hệ: 1
Khóa: 2014 Lớp: 14141DT1
I. TÊN ĐỀ TÀI:
THIẾT KẾ VÀ THI CÔNG BỘ THÍ NGHIỆM
82 trang |
Chia sẻ: huong20 | Ngày: 13/01/2022 | Lượt xem: 433 | Lượt tải: 0
Tóm tắt tài liệu Đồ án Thiết kế và thi công bộ thí nghiệm vi xử lý giao tiếp kit intel galileo, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
VI XỬ LÝ GIAO TIẾP KIT
INTEL GALILEO
II. NHIỆM VỤ
1. Các số liệu ban đầu:
- Thiết kế và thi công được bộ thí nghiệm vi xử lý hoàn chỉnh với những chức năng
cơ bản như: bàn phím, led đơn, led 7 đoạn, LCD hoặc những ứng dụng cao
hơn: giao tiếp máy tính, điều khiển động cơ.
- Xây dựng các bài tập thí nghiệm giao tiếp đơn giản với led đơn, led 7 đoạn, nút
nhấn, switch, bàn phím ma trận, LCD, chuyển đổi ADC.
2. Nội dung thực hiện:
- Tìm hiểu về kit Intel Galileo, phần mềm Arduino, các mạch giao tiếp ngoại vi
với vi điều khiển.
- Thiết kế phần cứng bộ thí nghiệm (thiết kế mạch nguyên lý, mạch in, thi công).
- Xây dựng các bài thực hành cơ bản, viết chương trình thực thi và kiểm tra kết
quả trên bộ thí nghiệm.
- Thu thập kết quả. Kiểm tra tính ổn định của hệ thống. Viết báo cáo luận văn.
- Báo cáo đề tài tốt nghiệp.
III. NGÀY GIAO NHIỆM VỤ: 01/10/2018
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 05/01/2019
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: ThS. Ngô Bá Việt
CÁN BỘ HƯỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
i
TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA ĐIỆN-ĐIỆN TỬ ĐỘC LẬP - TỰ DO - HẠNH PHÚC
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH ----o0o----
Tp. HCM, ngày 05 tháng 10 năm 2018
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên 1: Phạm Quang Minh
Lớp: 14141DT1A MSSV: 14141195
Họ tên sinh viên 2: Hồ Văn Trọng
Lớp: 14141DT1A MSSV: 14141338
Tên đề tài:
THIẾT KẾ VÀ THI CÔNG BỘ THÍ NGHIỆM VI XỬ LÝ SỬ DỤNG KIT
INTEL GALILEO
Xác nhận
Tuần/ngày Nội dung
GVHD
- Gặp GVHD để phổ biến quy định: thực hiện chọn
đề tài, tên đề tài, thời gian làm việc.
1
(01-06/10) - Duyệt đề tài.
- Viết đề cương cho đề tài.
- Tìm hiểu tổng quan về kit Intel Galileo.
2 - Tìm hiểu về cách thức lập trình và biên dịch trên
(08-13/10)
kit Intel Galileo.
- Thiết kế sơ đồ khối, giải thích chức năng các khối
3
(15-20/10) - Tính toán lựa chọn linh kiện cho từng khối
- Thiết kế sơ đồ nguyên lý và giải thích hoạt động
4
(22-27/10) của mạch.
5
(29/10- - Thiết kế và thi công từng khối nhỏ trong mạch.
03/11)
- Lập trình trên phần mềm Arduino.
6 - Mô phỏng, chạy chương trình từng khối đã thi
(05-10/11)
công.
- Lập trình trên phần mềm Arduino.
7 - Mô phỏng, chạy chương trình từng khối đã thi
(12-17/11)
công.
ii
- Lập trình trên phần mềm Arduino.
8 - Mô phỏng, chạy chương trình từng khối đã thi
(19-24/11)
công.
9 - Thiết kế và thi công mô hình tổng hợp các khối.
(26/11-
- Mô phỏng, chạy chương trình tổng hợp các khối.
01/12)
- Thiết kế và thi công mô hình tổng hợp các khối.
10
(03-08/12) - Mô phỏng, chạy chương trình tổng hợp các khối.
11 - Kiểm tra, hoàn thiện mô hình, chạy thử và sửa lỗi.
(10-15/12)
12 - Viết báo cáo.
(17-22/12)
13 - Viết báo cáo.
(24-29/12)
14 - Hoàn thiện, chỉnh sửa báo cáo gửi cho GVHD để
(31/12-
xem xét góp ý lần cuối trước khi in báo cáo.
05/01)
15 - Nộp quyển báo cáo và làm Slide báo cáo.
(06-18/01)
GV HƯỚNG DẪN
(Ký và ghi rõ họ và tên)
iii
LỜI CAM ĐOAN
Đề tài này là do chúng tôi tự thực hiện dựa vào một số tài liệu trước đó và không
sao chép từ tài liệu hay công trình đã có trước đó.
Người thực hiện đề tài
Phạm Quang Minh
Hồ Văn Trọng
iv
LỜI CẢM ƠN
Để hoàn thành đề tài nghiên cứu này, lời đầu tiên cho phép chúng tôi được gửi
lời cảm ơn chân thành đến toàn thể quý thầy cô Trường Đại Học Sư Phạm Kỹ Thuật
TP.HCM nói chung và các thầy cô trong Khoa Điện – Điện Tử nói riêng, những
người đã tận tình dạy dỗ, trang bị cho chúng tôi những kiến thức nền tảng và kiến
thức chuyên ngành quan trọng, giúp nhóm chúng tôi có được cơ sở lý thuyết vững
vàng và đã luôn tạo điều kiện giúp đỡ tốt nhất cho chúng tôi trong quá trình học tập
và nghiên cứu.
Đặc biệt, chúng tôi xin chân thành cảm ơn ThS. Ngô Bá Việt đã tận tình giúp
đỡ, đưa ra những định hướng nghiên cứu cũng như hướng giải quyết một số vấn đề
để chúng tôi có thể thực hiện tốt đề tài.
Mặc dù đã cố gắng hết sức, song do điều kiện thời gian và kinh nghiệm thực tế
của chúng tôi còn ít, cho nên đề tài không thể tránh khỏi thiếu sót. Vì vậy, chúng tôi
rất mong nhận được sự đóng góp ý kiến của quý thầy, cô giáo.
Xin chân thành cảm ơn!
TP.HCM, ngày 05 tháng 01 năm 2019
Sinh viên thực hiện
Phạm Quang Minh
Hồ Văn Trọng
v
MỤC LỤC
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP...............................................................................i
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ............................................... ii
LỜI CAM ĐOAN ............................................................................................................. iv
LỜI CẢM ƠN..................................................................................................................... v
MỤC LỤC .......................................................................................................................... vi
LIỆT KÊ HÌNH ẢNH................................................................................................... viii
LIỆT KÊ BẢNG ...............................................................................................................xi
DANH SÁCH CÁC TỪ VIẾT TẮT ........................................................................... xii
TÓM TẮT ....................................................................................................................... xiii
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....................................................................................................................2
Chương 2. CƠ SỞ LÝ THUYẾT ..............................................................................4
2.1 KHÁI QUÁT VỀ VI XỬ LÝ – VI ĐIỀU KHIỂN ..............................................4
2.1.1 Vi xử lý và vi điều khiển ..........................................................................4
2.1.2 Hệ thống điều khiển tích hợp (SoC)........................................................5
2.2 TRUYỀN DỮ LIỆU CHUẨN I2C .......................................................................5
2.3 TRUYỀN DỮ LIỆU CHUẨN SPI........................................................................8
2.4 TRUYỀN DỮ LIỆU CHUẨN 1-WIRE ...............................................................9
2.5 PHẦN MỀM ARDUINO .................................................................................... 10
2.6 GIỚI THIỆU PHẦN CỨNG ............................................................................... 11
2.6.1 Bộ xử lý trung tâm - Intel Galileo Gen 2............................................. 11
2.6.2 Thiết bị đầu vào ...................................................................................... 14
2.6.3 Thiết bị đầu ra ......................................................................................... 16
2.6.4 Thiết bị thời gian thực DS1307 ............................................................ 26
Chương 3. TÍNH TOÁN VÀ THIẾT KẾ ............................................................ 28
3.1 GIỚI THIỆU ......................................................................................................... 28
3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG ...................................................... 28
vi
3.2.1 Thiết kế sơ đồ khối hệ thống ................................................................. 28
3.2.2 Tính toán và thiết kế mạch .................................................................... 29
3.3 SƠ ĐỒ NGUYÊN LÝ TOÀN MẠCH .............................................................. 38
Chương 4. THI CÔNG HỆ THỐNG .................................................................... 39
4.1 GIỚI THIỆU ......................................................................................................... 39
4.2 THI CÔNG HỆ THỐNG ..................................................................................... 39
4.2.1 Thi công bo mạch hệ thống ................................................................... 39
4.2.2 Lắp ráp và kiểm tra................................................................................. 42
4.3 ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH .......................................................... 44
4.3.1 Đóng gói, thiết kế mô hình .................................................................... 44
4.3.2 Thi công mô hình.................................................................................... 44
4.4 LẬP TRÌNH HỆ THỐNG ................................................................................... 46
4.4.1 Lưu đồ giải thuật..................................................................................... 46
4.4.2 Phần mềm lập trình cho Intel Galileo Gen 2 ....................................... 48
4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC............................ 51
Chương 5. KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ ................................................ 55
5.1 KẾT QUẢ.............................................................................................................. 55
5.1.1 Kết quả nghiên cứu................................................................................. 55
5.1.2 Kết quả thi công ...................................................................................... 55
5.2 NHẬN XÉT – ĐÁNH GIÁ ................................................................................. 56
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ....................................... 57
6.1 KẾT LUẬN ........................................................................................................... 57
6.1.1 Ưu điểm ................................................................................................... 57
6.1.2 Khuyết điểm ............................................................................................ 57
6.2 HƯỚNG PHÁT TRIỂN ĐỀ TÀI ....................................................................... 58
TÀI LIỆU THAM KHẢO ............................................................................................ 59
PHỤ LỤC ......................................................................................................................... 60
vii
LIỆT KÊ HÌNH ẢNH
Hình Trang
Hình 2.1: Mô hình truyền dữ liệu chuẩn I2C ...................................................................6
Hình 2.2: Quá trình thiết bị chủ ghi dữ liệu vào thiết bị tớ ............................................6
Hình 2.3: Quá trình thiết bị chủ đọc dữ liệu vào thiết bị tớ ...........................................7
Hình 2.4: Mô hình truyền dữ liệu chuẩn SPI ...................................................................8
Hình 2.5: Mô hình truyền dữ liệu chuẩn 1-Wire .............................................................9
Hình 2.6: Dạng sóng quá trình truyền nhận dữ liệu chuẩn 1-Wire ............................ 10
Hình 2.7: Biểu tượng phần mềm Arduino ..................................................................... 10
Hình 2.8: Giao diện phần mềm Arduino ....................................................................... 11
Hình 2.9: Mặt trên kit Intel Galileo Gen 2 .................................................................... 12
Hình 2.10: Mặt dưới kit Intel Galileo Gen 2 ................................................................. 12
Hình 2.11: Sơ đồ nguyên lý chip xử lý trung tâm trên kit ........................................... 13
Hình 2.12: Sơ đồ bố trí chân I/O trên kit Intel Galileo Gen 2 .................................... 13
Hình 2.13: Ma trận phím 4x4 ngoài thực tế .................................................................. 14
Hình 2.14: Cảm biến LM35 ngoài thực tế..................................................................... 15
Hình 2.15: Led 7 đoạn đôi ngoài thực tế ....................................................................... 16
Hình 2.16: LCD 16x2 ngoài thực tế ............................................................................... 16
Hình 2.17: Sơ đồ chân LCD 16x2 .................................................................................. 17
Hình 2.18: Led ma trận 8x8 ngoài thực tế ..................................................................... 18
Hình 2.19: Sơ đồ chân led ma trận 8x8 ......................................................................... 19
Hình 2.20: IC 74HC595 ngoài thực tế ........................................................................... 19
Hình 2.21: Sơ đồ chân IC 74HC595 .............................................................................. 20
Hình 2.22: Cấu trúc bên trong IC 74HC595 ................................................................. 21
Hình 2.23: IC 74HC138 ngoài thực tế ........................................................................... 22
Hình 2.24: Sơ đồ chân IC 74HC138 .............................................................................. 22
Hình 2.25: IC L298 ngoài thực tế ................................................................................... 25
Hình 2.26: Sơ đồ chân IC L298 ...................................................................................... 25
Hình 2.27: IC DS1307 ngoài thực tế.............................................................................. 26
Hình 2.28: Sơ đồ chân IC DS1307 ................................................................................. 26
Hình 2.29: Địa chỉ các thanh ghi IC DS1307 ............................................................... 27
viii
Hình 3.1: Sơ đồ khối của hệ thống ................................................................................. 28
Hình 3.2: Sơ đồ nguyên lý của khối xử lý trung tâm ................................................... 29
Hình 3.3: Sơ đồ nguyên lý khối nút nhấn đơn .............................................................. 31
Hình 3.4: Sơ đồ nguyên lý khối ma trận phím 4x4 ...................................................... 32
Hình 3.5: Sơ đồ nguyên lý khối led đơn ........................................................................ 33
Hình 3.6: Sơ đồ nguyên lý khối led 7 đoạn ................................................................... 33
Hình 3.7: Transistor A1015 ngoài thực tế ..................................................................... 34
Hình 3.8: Sơ đồ nguyên lý khối LCD 16x2 .................................................................. 35
Hình 3.9: Sơ đồ nguyên lý khối led ma trận 8x8 .......................................................... 35
Hình 3.10: Sơ đồ nguyên lý khối cảm biến nhiệt độ .................................................... 36
Hình 3.11: Sơ đồ nguyên lý khối thời gian thực........................................................... 36
Hình 3.12: Sơ đồ nguyên lý khối động cơ..................................................................... 36
Hình 3.13: Sơ đồ nguyên lý khối nguồn ........................................................................ 37
Hình 3.14: Adapter 12V – 2A ......................................................................................... 37
Hình 3.15: Sơ đồ nguyên lý khối switch giao tiếp ....................................................... 38
Hình 4.1: Mạch in PCB lớp dưới.................................................................................... 39
Hình 4.2: Mạch in PCB lớp trên ..................................................................................... 40
Hình 4.3: Sơ đồ bố trí linh kiện ...................................................................................... 40
Hình 4.4: Board thí nghiệm mặt dưới ............................................................................ 43
Hình 4.5: Board thí nghiệm mặt trên ............................................................................. 43
Hình 4.6: Mô hình tổng thể ............................................................................................. 44
Hình 4.7: Mô hình nhìn từ trên xuống ........................................................................... 45
Hình 4.8: Mặt trước mô hình .......................................................................................... 45
Hình 4.9: Mặt hông mô hình ........................................................................................... 45
Hình 4.10: Lưu đồ hoạt động toàn bộ hệ thống ............................................................ 46
Hình 4.11: Lưu đồ điều khiển bằng nút nhấn, ma trận phím ...................................... 47
Hình 4.12: Lưu đồ hiển thị .............................................................................................. 47
Hình 4.13: Trang chủ Arduino ........................................................................................ 49
Hình 4.14: Biểu tượng phần mềm Arduino................................................................... 49
Hình 4.15: Giao diện phần mềm Arduino ..................................................................... 49
ix
Hình 4.16: Giao diện các chức năng trong mục Tools ................................................ 50
Hình 4.17: Hộp thoại Boards Manager .......................................................................... 50
Hình 4.18: Giao diện phần mềm khi tiến hành chọn kit Intel Galileo Gen 2 ........... 51
Hình 4.19: Bộ xử lý trung tâm và board thí nghiệm đã kết nối .................................. 51
Hình 4.20: Vị trí nút BTN_NGUON trên board thí nghiệm ....................................... 52
Hình 4.21: Kết nối cáp Micro USB giữa bộ xử lý trung tâm với máy tính............... 52
Hình 4.22: Giao diện phầm mềm khi tiến hành chọn kit giao tiếp............................. 53
Hình 4.23: Giao diện phần mềm khi chọn cổng COM giao tiếp ................................ 53
Hình 4.24: Báo hiệu giao tiếp thành công với kit ở góc dưới bên phải ..................... 53
Hình 4.25: Biểu tượng công cụ biên dịch chương trình .............................................. 53
Hình 4.26: Báo hiệu biên dịch chương trình hoàn tất và không có lỗi ...................... 54
Hình 4.27: Biểu tượng công cụ nạp chương trình ........................................................ 54
Hình 4.28: Báo hiệu nạp chương trình thành công ...................................................... 54
Hình 4.29: Board thí nghiệm sau khi nạp chương trình .............................................. 54
Hình 5.1: Mô hình bộ thí nghiệm ................................................................................... 55
Hình 5.2: Bộ xử lý trung tâm .......................................................................................... 56
x
LIỆT KÊ BẢNG
Bảng Trang
Bảng 2.1: Các kí hiệu và ý nghĩa chân của LCD.......................................................... 17
Bảng 2.2: Các kí hiệu và ý nghĩa chân IC 74HC595 ................................................... 20
Bảng 2.3: Bảng trạng thái IC 74HC595......................................................................... 21
Bảng 2.4: Các kí hiệu và ý nghĩa chân của 74HC138 ................................................. 23
Bảng 2.5: Bảng trạng thái IC 74HC138......................................................................... 24
Bảng 2.6: Các kí hiệu và ý nghĩa chân IC DS1307 ...................................................... 26
Bảng 3.1: Các chân của kit Intel Galileo Gen 2 sử dụng trong đề tài ........................ 30
Bảng 4.1: Danh sách các linh kiện sử dụng .................................................................. 41
Bảng 4.2: Các công cụ trên giao diện phần mềm Arduino.......................................... 48
xi
DANH SÁCH CÁC TỪ VIẾT TẮT
STT Từ viết tắt Nghĩa đầy đủ
1 SoC System-on-a-chip
2 I2C Inter-Integrated Circuit
3 SPI Serial Peripheral Bus
4 LAN Local Area Network
5 WAN Wide area network
6 VGA Video Graphics Adaptor
7 ADC Analog-to-digital Converter
8 DAC Digital-to-analog Converter
9 PWM Pulse Width Modulation
12 USB Universal Serial Bus
13 MISO Master Input Slave Output
14 MOSI Master Output Slave Input
15 SCK Serial Clock
16 SS Slave Select
17 CPU Central Processing Unit
18 SCL Serial Clock
19 SDA Serial Data
Electrically Erasable Programmable Read-Only
20 EEPROM
Memory
21 GSM Global System for Mobile
22 TFT Thin Film Transistor
xii
TÓM TẮT
Hiện nay, vi điều khiển và vi xử lý là xu hướng tuy không mới nhưng rất thịnh
hành. Vì thế trong những năm gần đây, các nhà sản xuất chip điện tử đã cho ra đời
những dòng vi điều khiển mới với những tính năng vượt bậc đáp ứng nhu cầu phát
triển ngày càng cao của khoa học kỹ thuật. Một trong những dòng vi điều khiển mới
phải kể đến là Intel Galileo.
Với mục đích muốn tiếp cận gần hơn với dòng vi điều khiển mới này nên nhóm
chúng tôi thực hiện đồ án “Thiết kế và thi công bộ thí nghiệm vi xử lý giao tiếp kit
Intel Galileo”. Hệ thống của chúng tôi bao gồm những chức năng sau:
Bộ thí nghiệm vi xử lý hoàn chỉnh với những chức năng cơ bản như: bàn phím,
led đơn, led 7 đoạn, LCD hoặc những ứng dụng cao hơn: giao tiếp máy tính,
điều khiển động cơ.
Các bài tập thí nghiệm giao tiếp đơn giản với led đơn, led 7 đoạn, nút nhấn,
bàn phím ma trận, LCD, chuyển đổi ADC
xiii
CHƯƠNG 1. TỔNG QUAN
Chương 1. TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ
Vi điều khiển đã trở nên quen thuộc trong các ngành kỹ thuật và dân dụng với
nhiều ưu điểm hơn hẳn so với IC số như: thiết kế board mạch đơn giản, điều khiển dễ
dàng, linh hoạt hơn từ đó mang lại cho người sử dụng nhiều tiện ích. Trong những
năm gần đây, các nhà sản xuất chip điện tử đã cho ra đời những dòng vi điều khiển
với những tính năng mới đáp ứng nhu cầu phát triển ngày càng cao của khoa học kỹ
thuật: giao tiếp cổng USB, truyển dữ liệu UART, điều chế độ rộng xung, tăng bộ nhớ
nội [1].
Nhận thấy tầm quan trọng trên nên việc khảo sát, tìm hiểu vi điều khiển ở nhiều
cấp độ khác nhau từ đơn giản đến phức tạp là hết sức cần thiết. Vì thế đã có rất nhiều
đề tài, đồ án tốt nghiệp, bộ thí nghiệm liên quan đến vi điều khiển để phục vụ việc
học tập, thực hành, nghiên cứu đối với học sinh, sinh viên ví dụ như: “Thiết kế bộ thí
nghiệm PIC 18F2455/2550/5555/4550” [2], “Thiết kế nhà thông minh dùng vi điều
khiển PIC 16F887” [3], “Hệ thống điểm danh bằng vân tay ứng dụng vi điều khiển
ARM” [4], “Ứng dụng kit Raspberry nhận dạng mặt người” [5]
Từ thực tế hiện nay, ta thấy các đề tài thường sử dụng vi điều khiển họ PIC,
ARM là chủ yếu. Bên cạnh đó chúng tôi nhận thấy dòng vi điều khiển Intel nói
chung và kit Intel Galileo nói riêng còn khá mới mẻ và chưa được phổ biến rộng rãi
nên hầu hết các bộ thí nghiệm, board thực tập hiện nay cho dòng vi điều khiển này
gần như là chưa có. Chính vì vậy, đây là lý do mà chúng tôi quyết định chọn đề tài:
“Thiết kế và thi công bộ thí nghiệm vi xử lý giao tiếp kit Intel Galileo” với mục
đích tiếp cận gần hơn với dòng vi điều khiển Intel này và hơn hết có thể phục vụ nhu
cầu học tập của các bạn sinh viên trong tương lai.
1.2 MỤC TIÊU
Thiết kế và thi công được bộ thí nghiệm vi xử lý hoàn chỉnh với những chức
năng cơ bản như: bàn phím, led đơn, led 7 đoạn, LCD hoặc những ứng dụng
cao hơn: giao tiếp máy tính, điều khiển động cơ.
Xây dựng các bài tập thí nghiệm giao tiếp đơn giản với led đơn, led 7 đoạn,
nút nhấn, bàn phím ma trận, LCD, chuyển đổi ADC
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 1
CHƯƠNG 1. TỔNG QUAN
1.3 NỘI DUNG NGHIÊN CỨU
Trong báo cáo này chúng tôi đã cố gắng trình bày một cách thật logic để người
đọc có thể dễ dàng nắm rõ được kiến thức, phương thức cũng như cách thức hoạt
động của hệ thống.
Nội dung nghiên cứu được chúng tôi chia làm 5 nội dung chính như sau:
NỘI DUNG 1: Tìm hiểu về kit Intel Galileo, phần mềm Arduino, các mạch giao
tiếp ngoại vi với vi điều khiển.
NỘI DUNG 2: Thiết kế phần cứng bộ thí nghiệm (thiết kế mạch nguyên lý,
mạch in, thi công).
NỘI DUNG 3: Xây dựng các bài thực hành cơ bản, viết chương trình thực thi
và kiểm tra kết quả trên bộ thí nghiệm.
NỘI DUNG 4: Thu thập kết quả, viết báo cáo luận văn.
NỘI DUNG 5: Báo cáo đề tài tốt nghiệp.
1.4 GIỚI HẠN
Sử dụng kit Intel Galilleo làm mạch điều khiển, sử dụng các họ IC giao tiếp,
hiển thị, giải mã, mở rộng port để thiết kế các module ngoại vi kết nối với mạch
điều khiển.
Các bài tập thí nghiệm viết trên chương trình Arduino.
Số lượng module dự kiến điều khiển: 6 module.
1.5 BỐ CỤC
Chương 1: Tổng Quan
Chương này trình bày lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các giới
hạn thông số và bố cục đồ án.
Chương 2: Cơ Sở Lý Thuyết
Chương này tập trung vào những lý thuyết liên quan đến đề tài bao gồm cơ sở
lý thuyết về Intel Galileo, các chuẩn giao tiếp sử dụng trong đề tài cũng như cơ sở lý
thuyết về các thiết bị, linh kiện sử dụng trong mô hình bộ thí nghiệm.
Chương 3: Tính Toán Và Thiết Kế
Chương này giới thiệu tổng quan về các yêu cầu của đề tài, thiết kế và tính toán
những phần nào như: thiết kế sơ đồ khối hệ thống, sơ đồ nguyên lý toàn mạch, tính
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 2
CHƯƠNG 1. TỔNG QUAN
toán thiết kế mạch.
Chương 4: Thi Công Hệ Thống
Chương này trình bày về quá trình vẽ mạch in, lắp ráp các thiết bị, đo kiểm tra
mạch, lắp ráp mô hình. Thiết kế lưu đồ giải thuật cho chương trình và viết chương
trình cho hệ thống. Hướng dẫn quy trình sử dụng hệ thống.
Chương 5: Kết Quả Nhận Xét Đánh Giá
Chương này trình bày về những kết quả đã đạt được so với mục tiêu đề ra sau
quá trình nghiên cứu thi công. Từ những kết quả đạt được để đánh giá quá trình nghiên
cứu hoàn thành bao nhiêu phần trăm so với mục tiêu ban đầu.
Chương 6: Kết Luận Và Hướng Phát Triển
Chương này trình bày về những kết quả mà đồ án đạt được, những hạn chế, từ
đó rút ra kết luận và hướng phát triển để giải quyết các vấn đề tồn đọng để đồ án hoàn
thiện hơn.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 3
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Chương 2. CƠ SỞ LÝ THUYẾT
2.1 KHÁI QUÁT VỀ VI XỬ LÝ – VI ĐIỀU KHIỂN
2.1.1 Vi xử lý và vi điều khiển
Vi xử lý là thuật ngữ chung dùng để đề cập đến kỹ thuật ứng dụng các công
nghệ vi điện tử, công nghệ tích hợp và khả năng xử lý theo chương trình vào các lĩnh
vực khác nhau.
Vào những giai đoạn đầu trong quá trình phát triển của công nghệ vi xử lý, các
chip (hay các vi xử lý) được chế tạo chỉ tích hợp những phần cứng thiết yếu như CPU
cùng các mạch giao tiếp giữa CPU và các phần cứng khác. Trong giai đoạn này, các
phần cứng khác (kể cả bộ nhớ) thường không được tích hợp trên chip mà phải ghép
nối thêm bên ngoài. Các phần cứng này được gọi là các ngoại vi. Về sau, nhờ sự phát
triển vượt bậc của công nghệ tích hợp, các ngoại vi cũng được tích hợp vào bên trong
IC và người ta gọi các vi xử lý đã được tích hợp thêm các ngoại vi là các “vi điều
khiển”. Việc tích hợp thêm các ngoại vi vào trong cùng một IC với CPU tạo ra nhiều
lợi ích như làm giảm thiểu các ghép nối bên ngoài, giảm thiểu số lượng linh kiện điện
tử phụ, giảm chi phí cho thiết kế hệ thống, đơn giản hóa việc thiết kế, nâng cao hiệu
suất và tính linh hoạt. Ranh giới giữa hai khái niệm “vi xử lý” và “vi điều khiển” thực
sự không cần phải phân biệt rõ ràng. Thuật ngữ “vi xử lý” được sử dụng khi đề cập
đến các khái niệm cơ bản của kỹ thuật vi xử lý nói chung và sẽ dùng thuật ngữ “vi
điều khiển” khi đi sâu nghiên cứu một họ chip cụ thể.
Về cơ bản kiến trúc của một vi xử lý gồm những phần cứng sau:
- Đơn vị xử lý trung tâm CPU (Central Processing Unit).
- Các bộ nhớ (Memories).
- Các cổng vào/ra song song (Parallel I/O Ports).
- Các cổng vào/ra nối tiếp (Serial I/O Ports).
- Các bộ đếm/bộ định thời (Timers).
Ngoài ra với mỗi loại vi điều khiển cụ thể còn có thể có thêm một số phần cứng
khác như bộ biến đổi tương tự-số ADC, bộ biến đổi số-tương tự DAC, các mạch điều
chế dạng sóng WG, điều chế độ rộng xung PWM
Bộ não của mỗi vi xử lý chính là CPU, các phần cứng khác chỉ là các cơ quan
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 4
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
chấp hành dưới quyền của CPU. Mỗi cơ quan này đều có một cơ chế hoạt động nhất
định mà CPU phải tuân theo khi giao tiếp với chúng. Để có thể giao tiếp và điều các
ngoại vi, CPU sử dụng 03 loại tín hiệu cơ bản là tín hiệu địa chỉ (Address), tín hiệu
dữ liệu (Data) và tín hiệu điều khiển (Control). Về mặt vật lý thì các tín hiệu này là
các đường nhỏ dẫn điện nối từ CPU đến các ngoại vi hoặc thậm chí là giữa các ngoại
vi với nhau. Tập hợp các đường tín hiệu có cùng chức năng gọi là các bus. Như vậy
ta có các bus địa chỉ, bus dữ liệu và bus điều khiển [9].
2.1.2 Hệ thống điều khiển tích hợp (SoC)
Khái niệm SoC ngày nay đã trở nên phổ biến. SoC được hiểu là toàn bộ "một
hệ thống" được đóng gói hoàn chỉnh trong một chip (vi mạch điện tử). Một hệ thống
thông thường là một hệ thống hoàn chỉnh thực hiện một hoặc nhiều chức năng nào
đó, ví dụ như một máy tính cá nhân gồm một bo mạch chủ để kết nối các thành phần
như CPU, USB, VGA, RS232
Cấu trúc phần cứng của một SoC bao gồm:
- Đơn vị xử lý trung tâm CPU (Central Processing Un... 0 và HANG2= HANG3= HANG4= 1: vậy kết luận có nút được nhấn trên
COT1.
Quét tương tự đối với những nút bấm khác. Số thứ tự tương ứng nút nhấn được
quy định bởi người lập trình.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 32
CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
c. Khối hiển thị
Khối led đơn
Sơ đồ kết nối của khối led đơn như hình bên dưới.
Hình 3.5: Sơ đồ nguyên lý khối led đơn
Tính toán chọn điện trở hạn dòng phù hợp cho led: dòng để led hoạt động tốt là
10-20mA cho mỗi con led. Với điện áp mỗi led là 1.9V, dòng ở khoảng 10mA, điện
áp vào là 5V
푉푐푐 − 푉퐿퐸퐷 5−1.9
푅퐿퐸퐷= = = 310 Ω (3.2)
퐼퐿퐸퐷 0.01
Trên thị trường không có điện trở 310 Ω mà chỉ có điện trở 330 Ω nên chúng
tôi chọn điện trở cho led là 330 Ω.
Khối led 7 đoạn
Sơ đồ kết nối của khối led 7 đoạn như hình bên dưới.
Hình 3.6: Sơ đồ nguyên lý khối led 7 đoạn
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 33
CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Để cung cấp đủ dòng thì chúng tôi chọn transistor PNP A1015 để có ngõ ra
bão hòa – tức hoạt động ở dòng Ic lớn nhất.
Hình 3.7: Transistor A1015 ngoài thực tế
Thông số kỹ thuật cơ bản:
- Loại PNP
- Điện áp cực đại: VCBO = -50V, VCEO = -50V, VEBO = -5V
- Dòng điện cực đại: IC = - 150mA, IB = -50mA
- Nhiệt độ làm việc: -55°C ~ 125°C
Tính toán chọn điện trở hạn dòng phù hợp cho led: dòng để led hoạt động tốt
là 10-20mA cho mỗi con led. Với điện áp mỗi led là 1.9V, dòng ở khoảng 10mA,
điện áp vào là 5V
푉푐푐 − 푉퐿퐸퐷 5−1.9
푅퐿퐸퐷= = = 310 Ω
퐼퐿퐸퐷 0.01
Trên thị trường không có điện trở 310 Ω mà chỉ có điện trở 330 Ω nên chúng
tôi chọn điện trở cho led là 330 Ω.
Tính toán chọn điện trở kéo lên phù hợp cho transistor:
Transistor A1015 có hệ số β thuộc khoảng từ 70 – 400, chọn hệ số β = 100.
퐼 25
퐼 = 푐 = = 0.3125 mA (3.3)
퐵 β 80
푉푐푐 − 푉퐿퐸퐷 5−2.2
푅퐵= = = 8.96 KΩ (3.4)
퐼퐵 0.3125
Chọn 푅퐵 = 10 kΩ.
Khối LCD 16x2
Sơ đồ kết nối của khối LCD 16x2 như hình bên dưới.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 34
CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Hình 3.8: Sơ đồ nguyên lý khối LCD 16x2
Khối led matrix 8x8
Sơ đồ kết nối của khối led matrix 8x8 như hình bên dưới.
Hình 3.9: Sơ đồ nguyên lý khối led ma trận 8x8
Tính toán chọn điện trở hạn dòng phù hợp cho led và điện trở kéo lên phù hợp
cho transistor tương tự như khối led 7 đoạn.
d. Khối cảm biến
Sơ đồ kết nối của khối cảm biến như hình bên dưới.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 35
CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Hình 3.10: Sơ đồ nguyên lý khối cảm biến nhiệt độ
Điện áp hoạt động: 5VDC.
Dòng tiêu thụ: 60uA.
e. Khối thời gian thực
Sơ đồ kết nối của khối thời gian thực DS1307 như hình bên dưới.
Hình 3.11: Sơ đồ nguyên lý khối thời gian thực
f. Khối động cơ
Sơ đồ kết nối của khối động cơ như hình bên dưới.
Hình 3.12: Sơ đồ nguyên lý khối động cơ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 36
CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
g. Khối nguồn
Dưới đây là sơ đồ nguyên lý khối nguồn:
Hình 3.13: Sơ đồ nguyên lý khối nguồn
Tuy nhiên thực tế, trên thị trường điện tử đã có nhiều sản phẩm với giá cả hợp
lý thay thế để cung cấp nguồn cho board mạch mang lại sự tiện dụng, tiết kiệm ví dụ
như là Adapter.
Intel Galileo Gen 2 có thể sử dụng nguồn từ 7-15 VDC để hoạt động. Tuy nhiên,
động cơ DC sử dụng nguồn 12V DC. Vì thế, chúng tôi quyết định sử dụng Adapter
12V để cung cấp nguồn cho toàn mạch và khối nguồn.
Dòng tiêu thụ của Intel Galileo Gen 2s là 100mA cho mỗi chân GPIO.
Tổng số chân GPIO sử dụng là 20 chân, công thức tính dòng tiêu thụ
Dòng tiêu thụ = 20 x 100mA = 2000mA = 2A
Dòng tiêu thụ là 2A nên nhóm chọn Adapter với dòng ngõ ra là 2A.
Hình 3.14: Adapter 12V – 2A
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 37
CHƯƠNG 3. TÍNH TOÁN VÀ THIẾT KẾ
Thông số kỹ thuật cơ bản
- Đầu vào: 100-240V 50/60Hz.
- Đầu ra: 12V – 2A.
- Trọng lượng: 91g / 3.21oz.
- Cung cấp năng lượng với đầu kết nối 2.1mm x 5.5mm.
- Kích thước nhỏ gọn và trọng lượng nhẹ.
- Hiệu quả: ≥ 80%.
- Quy định điện áp ổn định.
- Bảo vệ quá áp và ngắn mạch.
- Đầu ra ổn định, gợn thấp và nhiễu thấp.
- Hiệu quả cao và tiêu thụ năng lượng thấp.
h. Khối switch giao tiếp
Để giao tiếp các khối với khối xử lý trung tâm, chúng tôi sử dụng các switch.
Người dùng muốn sử dụng khối nào chỉ cần gạt switch cấp nguồn và switch điều
khiển (nếu có) của khối đó. Dưới đây là sơ đồ nguyên lý khối switch giao tiếp.
Hình 3.15: Sơ đồ nguyên lý khối switch giao tiếp
3.3 SƠ ĐỒ NGUYÊN LÝ TOÀN MẠCH
Sơ đồ nguyên lý toàn mạch được trình bày ở phần phụ lục.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 38
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Chương 4. THI CÔNG HỆ THỐNG
4.1 GIỚI THIỆU
Sau quá trình tính toán, thiết kế và lựa chọn các linh kiện thích hợp, tiến hành
thi công PCB, lắp ráp và kiểm tra mạch.
4.2 THI CÔNG HỆ THỐNG
4.2.1 Thi công bo mạch hệ thống
Sau khi thiết kế xong sơ đồ nguyên lý và tiến hành vẽ mạch PCB với kích thước
board là 24 x 23.6 cm. Dưới đây là sơ đồ mạch in lớp trên, lớp dưới và 3D của hệ
thống.
Hình 4.1: Mạch in PCB lớp dưới
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 39
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.2: Mạch in PCB lớp trên
Hình 4.3: Sơ đồ bố trí linh kiện
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 40
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Dưới đây là bảng linh kiện sử dụng trong đề tài: “Thiết kế và thi công bộ thí
nghiệm vi xử lý giao tiếp kit Intel Galileo”.
Bảng 4.1: Danh sách các linh kiện sử dụng
STT Tên linh kiện Thông số, Giá trị Dạng vỏ
31 chân
Vin = 7 – 15V (power supply jack)
1 Intel Galileo Gen 2
Vout = 1,8V
Iout = 100mA
16 chân
2 IC 74HC595 Nguồn cấp: 2V – 6V DIP-16
Dòng: 35mA
16 chân
3 IC 74HC138 Nguồn cấp: 2V – 6V DIP-16
Dòng: 5.2mA
15 chân Multiwatt-
4 IC L298 Nguồn cấp: 4.5V – 7V 15
Dòng ra cực đại: 3A
5 chân
5 IC LM2576 Nguồn cấp: 4V – 40V TO-263-6
Dòng ra: 3A
8 chân
6 IC DS1307 Nguồn cấp: 4.5V – 5.5V DIP-8
Dòng : 200uA
2SA1015, 3 chân, loại PNP
7 Transistor TO-92
2SC1815, 3 chân, loại NPN
4 chân kích thước 6x6x5 mm
8 Nút nhấn DIP
Loại: NC
Giá trị: 10kΩ, 330Ω, 4.7 kΩ
9 Điện trở Công suất: 0.25W Axial
Sai số: 5%
1N4407, Umax= 1000V, Imax= 1A DO-41
10 Diode
1N5822, Umax= 40V, Imax= 3A DO-201AD
Xanh, 3mm, 1.8 < ΔV < 2.2 VDC
11 Led đơn Radial
Đỏ, 5mm, 2 < ΔV < 3 VDC
Domino CON2
12 5.08mm – 200mil - 300V - 10A
KF128
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 41
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Khoảng cách mỗi chân: 2.54mm
13 Rào cái, rào đực Độ sâu của lỗ cắm / độ dài của chân Polyamid
cắm: 11.5 mm
16 chân HD44780
14 LCD 16x2 Nguồn cấp: 2.7V – 5V TUXGR
Dòng : 350uA – 600uA
10 chân, HSN-5621BS
15 Led 7 đoạn Nguồn cấp: 2.2V Tube
Dòng : 10mA
16 Thạch anh Tần số: 32.768 kHz Typical
17 Tụ Gốm 104 100nF/50V Radial
18 Ma trận phím Loại 4x4, 4.3x3.9x1cm
19 Led ma trận Loại 8x8, 1588BS, 38x38mm
5 chân, 12VDC
20 Relay
Nguồn cấp: 3V – 48VDC
21 Cuộn cảm Dòng 3A, giá trị 100uH
3 chân
22 Cảm biến LM35 Nguồn cấp: 4V – 30V TO-92-3
Dòng : 60uA
Loại: 6p, 4p, 2p màu đỏ
23 DIP Switch
Dòng : 100mA
4.2.2 Lắp ráp và kiểm tra
Quy trình lắp ráp – kiểm tra mạch :
Bước 1: Đặt và gia công mạch in 2 lớp cho board thí nghiệm.
Bước 2: Rửa board đồng sạch sẽ bằng nước rửa mạch sau khi ủi mạch.
Bước 3: Tiến hành khoan lỗ cho board mạch xử lý trung tâm.
Bước 4: Hàn tất cả các linh kiện cần thiết vào 2 board mạch.
Bước 5: Kết nối các đầu bus của board mạch xử lý trung tâm với board mạch
bộ thí nghiệm.
Bước 6: Kiểm tra kết nối các bus hoàn chỉnh.
Bước 7: Cuối cùng nạp chương trình và test chương trình có đạt như yêu cầu
ban đầu không.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 42
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.4: Board thí nghiệm mặt dưới
Hình 4.5: Board thí nghiệm mặt trên
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 43
CHƯƠNG 4. THI CÔNG HỆ THỐNG
4.3 ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH
4.3.1 Đóng gói, thiết kế mô hình
Sau khi kiểm tra mạch hoạt động tốt ta tiến hành đóng hộp thành mô hình. Mô
hình được đóng gói trong 1 hình hộp chữ nhật bằng mica trong dày 4 mm với kích
thước là 38x25x7 cm.
4.3.2 Thi công mô hình
Mô hình được làm bằng chất liệu mica - một dạng bọt xốp thường được sử dụng
để làm mô hình trong ngành kiến trúc. Loại nguyên liệu này rất dễ mua, có thể tìm
thấy ở các cửa hàng bán vật liệu quảng cáo. Tùy theo nhu cầu sử dụng mà thể mua
loại dày hay mỏng, tốt hay thường. Đặc điểm của mica là tuy nhẹ nhưng lại cứng cáp.
Để cắt mica theo ý tưởng mô hình đặt ra sử dụng máy cắt laser. Để kết nối các
mảnh ghép sau khi cắt, chúng tôi sử dụng keo chuyên dụng là keo 502.
Hình 4.6: Mô hình tổng thể
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 44
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.7: Mô hình nhìn từ trên xuống
Hình 4.8: Mặt trước mô hình
Hình 4.9: Mặt hông mô hình
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 45
CHƯƠNG 4. THI CÔNG HỆ THỐNG
4.4 LẬP TRÌNH HỆ THỐNG
4.4.1 Lưu đồ giải thuật
a. Lưu đồ hoạt động toàn bộ hệ thống
Để bắt đầu cho một chương trình hay yêu cầu được thực hiên trên board thì việc
đầu tiên là khởi tạo hệ thống (khai báo các chân tín hiệu điều khiển), bộ xử lý trung
tâm sẽ đưa tín hiệu điều khiển thông qua các chân kết đến từng khối trong board,
kiểm tra nếu sai thì quay lại để kiểm tra , ngược lại nếu đúng thì bộ xử lý trung tâm
sẽ gửi tín hiệu điều khiển đi theo lập trình trên phần mềm và hiển thị theo yêu cầu.
Bắt đầu
Khởi tạo hệ thống
S
Kiểm tra tín hiệu
Đ
Phân tích, trích
xuất hiển thị
Kết thúc
Hình 4.10: Lưu đồ hoạt động toàn bộ hệ thống
b. Lưu đồ điều khiển bằng nút nhấn, ma trận phím
Tương tự như phần lưu đồ hoạt động toàn bộ hệ thống, dưới đây là lưu đồ điều
khiển bằng nút nhấn, ma trận phím. Nếu nút nhấn có nhấn, sẽ gửi tín hiệu về cho bộ
xử lý trung tâm xử lý, nếu chưa có tác động của nút nhấn thì quay lại tiếp tục kiểm
tra, nếu có tác động thì sẽ thực hiện yêu cầu của người lập trình trên phần mềm.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 46
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Bắt đầu
Khởi tạo hệ thống
S
Kiểm tra nút nhấn?
Đ
Thực hiện yêu cầu
Kết thúc
Hình 4.11: Lưu đồ điều khiển bằng nút nhấn, ma trận phím
c. Lưu đồ hiển thị
Bộ xử lý trung tâm sẽ đưa tín hiệu điều khiển các IC 74HC595, các IC này sẽ
gửi tín hiệu đầu ra ở các chân để kiểm tra và điều khiển từng thiết bị, nếu sai sẽ quay
lại kiểm tra xem dữ liệu có được xuất đến IC hay chưa , đúng thì sẽ đưa dữ liệu ra
ngoài và hiển thị lên thiết bị theo yêu cầu người lập trình.
Bắt đầu
Khởi tạo hệ thống
Dữ liệu vào
74HC595
S Kiểm tra tín hiệu
yêu cầu
Đ
Hiển thị dữ liệu lên
LCD, led đơn, led
7 đoạn
Kết thúc
Hình 4.12: Lưu đồ hiển thị
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 47
CHƯƠNG 4. THI CÔNG HỆ THỐNG
4.4.2 Phần mềm lập trình cho Intel Galileo Gen 2
Arduino 1.8.7
Môi trường phát triển tích hợp Arduino IDE 1.8.7 là một ứng dụng đa nền tảng
được viết bằng Java, và được dẫn xuất từ IDE cho ngôn ngữ lập trình xử lý và các dự
án lắp ráp. Do có tính chất mã nguồn mở nên môi trường lập trình này hoàn toàn miễn
phí và có thể mở rộng thêm bởi người dùng có kinh nghiệm.
Người sử dụng chỉ cần định nghĩa hai hàm để thực hiện một chương trình hoạt
động theo chu trình:
setup(): hàm chạy một lần duy nhất vào lúc bắt đầu của một chương trình dùng
để khởi tạo các thiết lập.
loop(): hàm được gọi lặp lại liên tục cho đến khi bo mạch được tắt.
Các icon cho phép sử dụng nhanh các chức năng thường dùng của IDE được
mô tả như bảng dưới đây:
Bảng 4.2: Các công cụ trên giao diện phần mềm Arduino
ICON Tên Chức năng
Biên dịch chương trình soạn thảo để
Verify
kiểm tra các lỗi lập trình
Biên dịch và nạp chương trình đang
Upload
soạn thảo
New Mở trang soạn thảo mới
Open Mở các chương trình đã lưu
Save Lưu chương trình đang soạn thảo
Mở cửa sổ Serial Monitor để gửi và
Serial Monitor
nhận dữ liệu giữa máy tính và board
Các bước giao tiếp phần mềm Arduino 1.8.7 với kit Intel Galileo Gen 2:
Bước 1: Truy cập vào trang chủ Arduino để tải phần mềm
và cài đặt. Chọn thẻ Software rồi chọn mục Download. Phần mềm được hỗ trợ
miễn phí cho người dùng, với bản cập nhật mới nhất là Arduino 1.8.8. Ở đề tài này
chúng tôi sử dụng phiên bản 1.8.7.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 48
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.13: Trang chủ Arduino
Bước 2: Tiến hành cài đặt phần mềm. Phần mềm sau khi cài đặt sẽ có biểu
tượng trên giao diện desktop như sau:
Hình 4.14: Biểu tượng phần mềm Arduino
Bước 3: Mở phần mềm bằng cách nhấp đúp chuột vào biểu tượng như hình
trên. Sau khi mở, phần mềm sẽ có giao diện như sau:
Hình 4.15: Giao diện phần mềm Arduino
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 49
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Bước 4: Chọn Tools -> Board -> Boards Manager
Hình 4.16: Giao diện các chức năng trong mục Tools
Bước 5: Một hộp thoại sẽ hiện ra. Chọn Arduino Certified trong mục Type .
Nhấp chuột chọn thẻ Intel i586 Boards by Intel. Chọn Version mới nhất trong mục
Select Version rồi Install. Chờ cài đặt hoàn thành.
Hình 4.17: Hộp thoại Boards Manager
Bước 6: Sau khi hoàn thành cài đặt, board Intel Galileo Gen 2 đã được tích
hợp vào phần mềm. Tiến hành chọn kit Intel Galileo Gen 2 như hình sau. Như vậy đã
có thể giao tiếp phần mềm Arduino với kit Intel Galileo Gen 2.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 50
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.18: Giao diện phần mềm khi tiến hành chọn kit Intel Galileo Gen 2
4.5 VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC
Để đề tài được áp dụng trong thực tế và người dùng có thể dễ dàng sử dụng.
Dưới đây là tài liệu hướng dẫn sử dụng do chúng tôi trình bày:
Bước 1: Kết nối bộ xử lý trung tâm với board thí nghiệm. Cấp nguồn cho bộ xử
lý trung tâm và board thí nghiệm. Nhấn nút BTN_NGUON để cấp điện cho board thí
nghiệm. Khi led nguồn ở khối nguồn phát sáng báo hiệu board thí nghiệm đã được
cấp nguồn thành công.
Hình 4.19: Bộ xử lý trung tâm và board thí nghiệm đã kết nối
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 51
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.20: Vị trí nút BTN_NGUON trên board thí nghiệm
Bước 2: Cắm cáp Micro USB để kết nốt board Intel Galileo với máy tính người
dùng để bắt đầu lập trình.
Hình 4.21: Kết nối cáp Micro USB giữa bộ xử lý trung tâm với máy tính
Bước 3: Mở và viết chương trình trên phần mềm Arduino.
Bước 4: Từ giao diện phần mềm chọn Tools -> Board -> Intel Galileo Gen 2.
Chọn cổng COM giao tiếp phù hợp trong Tools -> Port. Sau khi chọn kết quả lần lượt
như sau:
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 52
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.22: Giao diện phầm mềm khi tiến hành chọn kit giao tiếp
Hình 4.23: Giao diện phần mềm khi chọn cổng COM giao tiếp
Hình 4.24: Báo hiệu giao tiếp thành công với kit ở góc dưới bên phải
Bước 5: Biên dịch và kiểm tra chương trình cho đến khi hết lỗi. Nhấn công cụ
trong khung màu đỏ ở hình dưới đây để tiến hành biên dịch.
Hình 4.25: Biểu tượng công cụ biên dịch chương trình
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 53
CHƯƠNG 4. THI CÔNG HỆ THỐNG
Hình 4.26: Báo hiệu biên dịch chương trình hoàn tất và không có lỗi
Bước 6: Nạp chương trình từ phần mềm xuống board thí nghiệm. Nhấn công
cụ trong khung màu đỏ ở hình dưới đây để tiến hành nạp chương trình.
Hình 4.27: Biểu tượng công cụ nạp chương trình
Hình 4.28: Báo hiệu nạp chương trình thành công
Bước 7: Gạt switch nguồn và switch điều khiển (nếu có) của khối cần sử dụng.
Lưu ý: chỉ có thể sử dụng 1 trong 3 khối: led ma trận 8x8 , ma trận phím 4x4 hoặc
động cơ, không thể sử dụng song song cùng lúc 3 khối này.
Nạp chương trình lại 1 lần nữa và quan sát kết quả trên bộ thí nghiệm.
Hình 4.29: Board thí nghiệm sau khi nạp chương trình
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 54
CHƯƠNG 5. KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ
Chương 5. KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ
5.1 KẾT QUẢ
5.1.1 Kết quả nghiên cứu
Trong quá trình nghiên cứu và thực hiện đề tài gần 3 tháng, chúng tôi đã đạt
được các kết quả như sau:
Tìm hiểu và nghiên cứu tổng quan cấu tạo, chức năng của kit Intel Galileo
Gen 2.
Thiết kế và thi công hoàn thiện bộ thí nghiệm, tổng hợp được nhiều khối trên
cùng một board mạch.
Biết cách sử dụng phần mềm thiết kế mạch như Altium Designer cùng với
phần mềm lập trình cho kit Intel Galileo Gen 2.
Xây dựng được các bài tập thí nghiệm đơn giản hoạt động như mong muốn
trên board mạch.
5.1.2 Kết quả thi công
Qua quá trình thiết kế phần cứng, chọn lựa linh kiện và lên ý tưởng hoàn thiện
mô hình, dưới đây là kết quả mà chúng tôi đã thực hiện được:
Hình 5.1: Mô hình bộ thí nghiệm
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 55
CHƯƠNG 5. KẾT QUẢ NHẬN XÉT ĐÁNH GIÁ
Hình 5.2: Bộ xử lý trung tâm
5.2 NHẬN XÉT – ĐÁNH GIÁ
Sau thời gian nghiên cứu, thi công thì đồ án tốt nghiệp của nhóm với đề tài
“Thiết kế và thi công bộ thí nghiệm vi xử lý giao tiếp kit Intel Galileo” đã hoàn
thiện.
Nhìn chung, mô hình đã hoạt động ổn định, có thể làm việc liên tục, đạt 90%
yêu cầu đề ra ban đầu. Người dùng thao tác đơn giản, dễ sử dụng. Hệ thống đảm bảo
an toàn cho người dùng.
Hệ thống sử dụng nguồn cấp nhỏ nên an toàn cho người sử dụng trước nguy cơ
điện giật.
Thời gian đáp ứng từ khi nhấn nút nhấn trực tiếp khá nhanh. Thời gian đáp ứng
khi nạp chương trình cho đến khi mạch hoạt động tùy thuộc máy tính người sử dụng.
Tuy nhiên, do sự hạn chế về kiến thức và thời gian thực hiện, nguồn tài liệu
tham khảo chủ yếu thông qua Internet và một số giáo trình tham khảo nên đề tài không
tránh khỏi sai sót và còn một số hạn chế:
- Hạn chế lớn nhất là chưa có được nguồn điện dự trữ để cung cấp cho hệ
thống hoạt động khi bị mất nguồn chính.
- Vì điều kiện kinh phí và thời gian có hạn, nên nhóm chỉ thực hiện mô hình
mang tính tương đối.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 56
CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
6.1 KẾT LUẬN
Với những mục tiêu đã đề ra, đề tài đã giải quyết và hoàn thành được những
mục tiêu đặt ra ban đầu như:
- Tìm hiểu tổng quan: cấu tạo phần cứng, chức năng các chân của dòng kit
Intel Galileo mang tính ứng dụng cao.
- Thiết kế và thi công được bộ thí nghiệm vi xử lý hoàn chỉnh với những chức
năng cơ bản như: bàn phím, led đơn, led 7 đoạn, LCD hoặc những ứng
dụng cao hơn: giao tiếp máy tính, điều khiển động cơ.
- Xây dựng các bài tập thí nghiệm giao tiếp đơn giản với led đơn, led 7 đoạn,
nút nhấn, bàn phím ma trận, LCD, chuyển đổi ADC.
- Mô hình hệ thống dễ sử dụng, tiện lợi, đáp ứng nhu cầu cần thiết về sử dụng
thiết bị của người dùng.
- Phần mềm miễn phí, có sẵn trên Internet.
6.1.1 Ưu điểm
- Phần cứng được thiết kế nhỏ gọn, đơn giản, dễ sử dụng, mô hình được trang
trí đẹp, trực quan.
- Cách thức điều khiển và giao tiếp với mô hình đơn giản với người lập trình.
- Chi phí của hệ thống ở mức trung bình khá và đáp ứng gần như đầy đủ các
yêu cầu đặt ra.
6.1.2 Khuyết điểm
Dù chúng tôi đã rất cố gắng hoàn thành đề tài một cách tốt nhất có thể tuy nhiên
hệ thống vẫn còn một vài khuyết điểm sau:
- Các khối hiển thị chưa đạt hiệu suất hiển thị tối đa, khối led matrix 8x8 còn
nhấp nháy liên tục khó quan sát, chưa thể kết hợp cùng các khối khác .
- Khối LCD 16x2 và khối led 7 đoạn khi hiển thị cùng 1 lúc thì hiệu suất hiển
thị kém, led 7 đoạn nhấp nháy liên tục nhưng khi sử dụng độc lập thì tương
đối ổn định.
- Nạp chương trình vào kit Intel Galileo Gen 2 xảy ra nhiều lỗi.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 57
CHƯƠNG 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
- Kiến thức, thời gian cũng như kinh phí hạn chế nên mô hình không được tối
ưu 100%.
6.2 HƯỚNG PHÁT TRIỂN ĐỀ TÀI
Với mong muốn đưa đến cho người sử dụng một bộ thí nghiệm hoàn thiện để
có thể ứng dụng thực tiễn hơn, chúng tôi xin được đưa ra một số ý kiến phát triển cho
đề tài như sau:
- Ngoài phần mềm Arduino IDE được sử dụng trong đề tài thì có thể lập trình
thêm trên 2 phần mềm có thể lập trình cho kit Intel Galileo Gen 2 như Linux
hoặc Mac OS X.
- Mở rộng thêm nhiều port để tăng số thiết bị ngoại vi nhằm tăng tính ứng
dụng cho bộ thí nghiệm.
- Trong đề tài này, chúng tôi sử dụng phần mềm Arduino IDE để lập trình trên
kit Intel Galileo Gen 2, vì thế ngoài kit mà đề tài sử dụng thì có thể dùng kit
Arduino UNO R3 để lập trình thay thế tương ứng.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 58
TÀI LIỆU THAM KHẢO
TÀI LIỆU THAM KHẢO
[1] Nguyễn Đình Phú, “Giáo trình vi điều khiển PIC 16F887”, Xuất bản ĐH
SPKT TP.HCM, năm 2014.
[2] Phạm Văn Khích, “Thiết kế bộ thí nghiệm PIC 18F2455/2550/5555/4550”,
NCKH cấp trường, trường ĐHSPKT, TP.HCM, tháng 10 năm 2008.
[3] Nguyễn Văn Bình, “Thiết kế nhà thông minh dùng vi điều khiển PIC
16F887”, Đồ án tốt nghiệp, trường ĐHSPKT, TP.HCM, năm 2014.
[4] Trần Anh Đề, Trần Sơn Lành, “Hệ thống điểm danh bằng vân tay ứng dụng
vi điều khiển ARM”, Đồ án tốt nghiệp, trường ĐHSPKT, TP.HCM, tháng 7 năm 2016.
[5] Huỳnh Công Thành, Nguyễn Trung Vinh, “Ứng dụng kit Raspberry nhận
dạng mặt người”, Đồ án tốt nghiệp, trường ĐHSPKT, TP.HCM, tháng 7 năm 2016.
[6] Đỗ Tiến Anh, Lâm Thanh Sang, “Thiết kế hệ thống điều khiển và giám sát
thiết bị qua webserver sử dụng kit Intel Edison”, Đồ án tốt nghiệp, trường ĐHSPKT,
TP.HCM, tháng 07 năm 2018.
[7] Nguyễn Đình Phú, “Giáo trình thực hành vi điều khiển PIC”, Xuất bản ĐH
SPKT TP.HCM, tháng 08 năm 2016.
[8] Trần Thu Hà (chủ biên), Trương Thị Bích Ngà, Nguyễn Thị Lưỡng, Bùi
Thị Tuyết Đan, Phù Thị Ngọc Hiếu, Dương Thị Cẩm Tú, “Giáo trình Điện tử cơ
bản”, NXB Đại học Quốc gia TP.HCM, 2014.
[9] Lê Hiếu, “Vi điều khiển, Vi xử lý là gì ?”, thegioiic.com/forums/vi-dieu-
khien-vi-xu-ly-la-gi, 19 tháng 03 năm 2012.
[10] MSP430, “Giới thiệu giao thức SPI”, electronicctu.net/Thread-Chuan-
giao-tiep-SPI.html, 26 tháng 5 năm 2012.
[11] Ý tưởng nhanh, “Chuẩn giao tiếp 1-Wire”, ytuongnhanh.vn/chi-tiet/chuan-
giao-tiep-1-wire-156.html, năm 2017.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 59
PHỤ LỤC
PHỤ LỤC
1. Các bài tập thí nghiệm giao tiếp đơn giản và kết quả thu được
Bài 1: Đo và hiển thị nhiệt độ ở bên trái hàng 2 của LCD. Hàng 1 hiển thị chữ
“NHIET DO PHONG:”.Có 4 nút nhấn lần lượt với chức năng như sau:
BTN1: nhấn lần 1 nhiệt độ hiển thị ở bên phải hàng 2 của LCD, nhấn lần 2 nhiệt
độ hiển thị ở bên trái hàng 2 của LCD và lặp lại.
BTN2: Nhấn lần 1 sáng 4 led bên phải, nhấn lần 2 sáng 4 led bên trái, nhấn lần
3 8 led sáng xen kẽ , nhấn lần 4 led tắt và lặp lại.
BTN3: Nhấn lần 1 động cơ hoạt động, nhấn lần 2 động cơ ngừng và lặp lại .
BTN4: Thay đổi cấp tốc độ động cơ (2 cấp).
Code chương trình:
//DIEU KHIEN LED DON
int SHCP_LEDDON = 0;
int STCP_LEDDON = 8;
int G_3M =6;
int DS_LEDDON = 1;
//DIEU KHIEN NUT NHAN DON
const int nutnhan4 = A3;
const int nutnhan3 = A2;
const int nutnhan2 = 2;
const int nutnhan1 = 3;
//DIEU KHIEN DONG CO
int input1 = 5;//PWM
int input2 = 4;
int E_L298 = A1;
//DIEU KHIEN LCD VA CAM BIEN NHIET DO
#include
#include
LiquidCrystal lcd(7);
int cambien = A0;
void setup() {
//KHOI TAO DONG CO
pinMode(input1,OUTPUT);
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 60
PHỤ LỤC
pinMode(input2,OUTPUT);
pinMode(E_L298,OUTPUT);
digitalWrite(E_L298,LOW);
digitalWrite(input1,LOW);
digitalWrite(input2,LOW);
digitalWrite(E_L298,HIGH);
//KHOI TAO LCD VA CAM BIEN NHIET DO
analogReadResolution(12);
Wire.begin();
lcd.initSPI(7);
pinMode(G_3M,OUTPUT);
digitalWrite(G_3M,LOW);
lcd.begin(16, 2);
lcd.clear();
lcd.print(" NHIET DO PHONG:");
//KHOI TAO LED DON
pinMode(DS_LEDDON,OUTPUT);
pinMode(STCP_LEDDON,OUTPUT);
pinMode(SHCP_LEDDON,OUTPUT);
pinMode(G_3M,OUTPUT);
digitalWrite(G_3M,LOW);
xuat_8led(0x00);
//KHOI TAO NUT NHAN DON
pinMode(nutnhan4,INPUT);
pinMode(nutnhan1,INPUT);
pinMode(nutnhan2,INPUT);
pinMode(nutnhan3,INPUT);
digitalWrite(nutnhan4,HIGH);
digitalWrite(nutnhan1,HIGH);
digitalWrite(nutnhan2,HIGH);
digitalWrite(nutnhan3,HIGH);
delay(100);}
//KIEM TRA VA CHONG DOI NUT NHAN DON
int ktnutnhan(int chan){
if(!digitalRead(chan)){
delay(20);
if(!digitalRead(chan)){
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 61
PHỤ LỤC
while(!digitalRead(chan));
return 0;}}
return 1;}
//XUAT DU LIEU LED DON
void xuat_byte( byte bytexuat)
{shiftOut(DS_LEDDON, SHCP_LEDDON, MSBFIRST, bytexuat); }
void xuat_8led( byte y0)
{
xuat_byte(y0);
digitalWrite(STCP_LEDDON,LOW);
digitalWrite(STCP_LEDDON,HIGH);}
//XUAT DU LIEU DONG CO
void dongco_quaythuan(){
digitalWrite(input1,HIGH);
digitalWrite(input2,LOW);}
void dongco_quaynghich(){
digitalWrite(input1,LOW);
digitalWrite(input2,HIGH);}
void dongco_dungquay(){
digitalWrite(input1,LOW);
digitalWrite(input2,LOW);}
void dongco_thaydoi_tocdo(int speed) {
speed = constrain(speed, 0, 255);
analogWrite(input1, speed);
digitalWrite(input2, LOW);}
int tt1=0,tt2=0,tt3=0,tt4=0;
void loop() {
//DOC GIA TRI CAM BIEN NHIET DO
int giatri = analogRead(cambien);
float nhietdo = giatri * ((5.0*100/4096));
//KIEM TRA TRANG THAI NUT NHAN DON
int buttonStatus1 = ktnutnhan(nutnhan1);
int buttonStatus2 = ktnutnhan(nutnhan2);
int buttonStatus3 = ktnutnhan(nutnhan3);
int buttonStatus4 = ktnutnhan(nutnhan4);
//TANG CAP TOC DO DONG CO
if (buttonStatus4 == LOW) {
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 62
PHỤ LỤC
tt4=tt4+30;
if(tt4>50){tt4=0;}}
//TAT/MO DONG CO
if (buttonStatus3 == LOW) {tt3=tt3+1;if(tt3>1) {tt3=0;}}
if(tt3==0){dongco_dungquay();tt4=0;}
if(tt3==1){dongco_thaydoi_tocdo(20+tt4);}
//HIEN THI LED
if (buttonStatus2 == LOW) {
tt2=tt2+1;
if(tt2>3) {tt2=0;}}
if(tt2==0){xuat_8led(0x00);}
if(tt2==1){xuat_8led(0x0f);}
if(tt2==2){xuat_8led(0xf0);}
if(tt2==3){xuat_8led(0xaa);}
//HIEN THI NHIET DO RA LCD
if (buttonStatus1 == LOW) {
tt1=tt1+1;
if(tt1>1) {tt1=0;}}
if(tt1==0){
lcd.setCursor(0, 1);
lcd.print(nhietdo,2);
lcd.write(223);
lcd.print("C");
lcd.setCursor(7, 1);
lcd.print(" "); }
else {
lcd.setCursor(8, 1);
lcd.print(nhietdo,2);
lcd.write(223);
lcd.print("C");
lcd.setCursor(0, 1);
lcd.print(" "); }}
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 63
PHỤ LỤC
Quan sát kết quả trên bộ thí nghiệm:
Kết quả thu được trên bộ thí nghiệm khi nhấn BTN1 lần 1 như hình dưới.
Kết quả thu được trên bộ thí nghiệm khi nhấn BTN1 lần 2 như hình dưới.
Kết quả thu được trên bộ thí nghiệm khi nhấn BTN2 lần 1 như hình dưới.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 64
PHỤ LỤC
Kết quả thu được trên bộ thí nghiệm khi nhấn BTN2 lần 2 như hình dưới.
Kết quả thu được trên bộ thí nghiệm khi nhấn BTN2 lần 3 như hình dưới.
Bài 2: Đồng hồ thời gian thực hiển thị trên 6 led 7 đoạn.
Code chương trình:
#include
const int DS_7DOAN = 10;
const int STCP_7DOAN = 9;
const int SHCP_7DOAN = 12;
const int G_3M = 6;
int ma7doan[10]= {0XC0,0XF9,0xA4,0XB0,0X99,0X92,0X82,0XF8,
0X80,0X90};
int thutuled[6]={0xfd,0xfb,0xf7,0xef,0xdf,0xbf};
int led7[6]={0xff,0xff,0xff,0xff,0xff,0xff};
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 65
PHỤ LỤC
//
int giay, phut, gio, thu, ngay, thang, nam;
int bcd2dec(byte num)
{
return ((num/16 * 10) + (num % 16));
}
int dec2bcd(byte num)
{
return ((num/10 * 16) + (num % 10));
}
void nap_thoi_gian_ds1307(byte hr,byte min,byte sec,byte wd,byte d,byte mth,byte
yr){
Wire.beginTransmission(0x68);
Wire.write(byte(0x00)); // đặt lại pointer
Wire.write(dec2bcd(sec));
Wire.write(dec2bcd(min));
Wire.write(dec2bcd(hr));
Wire.write(dec2bcd(wd)); // day of week: Sunday = 1, Saturday = 7
Wire.write(dec2bcd(d));
Wire.write(dec2bcd(mth));
Wire.write(dec2bcd(yr));
Wire.endTransmission();
}
void doc_thoi_gian_ds1307()
{
Wire.beginTransmission(0x68);
Wire.write((byte)0x00);
Wire.endTransmission();
Wire.requestFrom(0x68, 7);
giay = bcd2dec(Wire.read() & 0x7f);
phut = bcd2dec(Wire.read() );
gio = bcd2dec(Wire.read() & 0x3f); // chế độ 24h.
thu = bcd2dec(Wire.read() );
ngay = bcd2dec(Wire.read() );
thang = bcd2dec(Wire.read() );
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 66
PHỤ LỤC
nam = bcd2dec(Wire.read() );
nam += 2000;}
//
void setup() {
Wire.begin();
pinMode(DS_7DOAN,OUTPUT);
pinMode(STCP_7DOAN,OUTPUT);
pinMode(SHCP_7DOAN,OUTPUT);
pinMode(G_3M,OUTPUT);
digitalWrite(G_3M, LOW);
delay(100);
//nap_thoi_gian_ds1307(16,21,00,3,18,12,18); }
void xuat_1byte(unsigned int bytexuat)
{
shiftOut(DS_7DOAN, SHCP_7DOAN, MSBFIRST, bytexuat);
}
void xuat_led_7doan_quet_1( int y1,int y0)
{
xuat_1byte(y1);
xuat_1byte(y0);
digitalWrite(STCP_7DOAN,LOW);
digitalWrite(STCP_7DOAN,HIGH);
}
void xuat_led_7doan_quet_tat()
{
xuat_led_7doan_quet_1( 0xff,0xff);
}
void xuat_led_7doan_quet_2( int y1,int y0)
{
xuat_1byte(thutuled[y1]);
xuat_1byte(y0);
digitalWrite(STCP_7DOAN,LOW);
digitalWrite(STCP_7DOAN,HIGH);
}
void xuat_led_quet_tatca(){
for(int i =0;i<6;i++){
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 67
PHỤ LỤC
xuat_led_7doan_quet_2( i,led7[i]);
delayMicroseconds(1);
xuat_led_7doan_quet_tat(); } }
void giaima(){
led7[0]=ma7doan[giay%10];
led7[1]=ma7doan[giay/10];
led7[2]=ma7doan[phut%10];
led7[3]=ma7doan[phut/10];
led7[4]=ma7doan[gio%10];
led7[5]=ma7doan[gio/10]; }
void loop() {
doc_thoi_gian_ds1307();
giaima();
xuat_led_quet_tatca(); }
Quan sát kết quả trên bộ thí nghiệm:
Kết quả thu được trên bộ thí nghiệm của bài 2 như hình dưới.
2. Sơ đồ nguyên lý toàn mạch
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 68
P
Các file đính kèm theo tài liệu này:
- do_an_thiet_ke_va_thi_cong_bo_thi_nghiem_vi_xu_ly_giao_tiep.pdf