Một hệ thống đồng hồ báo thức thường bao gồm các thành phần chính như bộ vi điều khiển để xử lý và lưu trữ thông tin thời gian, màn hình hiển thị thường là LCD hoặc LED để thể hiện thời
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH KHOA/VIỆN: VIỆN KỸ THUẬT HUTECH
TÊN CHỦ ĐỀ: THIẾT KẾ ĐỒNG HỒ THEO THỜI GIAN THỰC
THÀNH VIÊN: BÙI NGUYỄN HOÀNG DUY
MSSV: 2282500175
GIẢNG VIÊN HƯỚNG DẪN: PHẠM HÙNG KIM KHÁNH
Trang 2LỜI CẢM ƠN
Lời đầu tiên, em xin gửi lời cảm ơn chân thành đến Trường Đại họccông nghệ TP.HCM đã đưa học phần vi điều khiển vào chương trìnhgiảng dạy Đặc biệt em xin gửi lời cảm ơn chân thành và sâu sắc đếngiảng viên hướng dẫn – Thầy Phạm Hùng Kim Khánh đã quan tâmgiúp đỡ, truyền đạt những kiến thức quý báu cho chúng em trongsuốt thời gian học tập và hoàn thiện môn vi điều khiển vừa qua Từnhững kiến thức mà thầy truyền đạt, chúng em đã dần có nhữngkiến thức, kinh nghiệm, những bài học hay và là hành trang đểchúng em vững bước trên hành trình sau này Vi điều khiển là mônhọc thú vị, vô cùng bổ ích nhằm giúp sinh viên trang bị cho mìnhnhững kiến thức cơ bản về lập trình, tính toán và thiết kế các mạchđiện trong ô tô Giúp sinh viên hiểu được về kết cấu, cấu tạo của các
bộ phận điện tử, các con chip Kiến thức là vô hạn và sự tiếp nhậnkiến thức ở bản thân mỗi con người luôn tồn tại những hạn chế nhấtđịnh Với điều kiện thời gian cũng như kinh nghiệm còn hạn chế củabản thân, bài báo cáo này không thể tránh được những thiếu sót.Nhóm em rất mong nhận được sự chỉ bảo, đóng góp ý kiến của cácthầy cô để nhóm em có điều kiện bổ sung, nâng cao và tích lũy kinhnghiệm, kỹ năng của mình để phục vụ tốt hơn công tác thực tế saunày Lời cuối cùng, nhóm chúng em xin kính chúc thầy sức khỏe,hạnh phúc và thành công trong sự nghiệp giảng dạy Nhóm em xinchân thành cảm ơn!
Trang 3MỤC LỤC
Chương 1: GIỚI THIỆU ĐỀ TÀI 1
1.1 Đặt vấn đề giới thiệu đề tài 1
1.2 Mục tiêu đề tài 1
Chương 2: CÁC LINH KIỆN ĐƯỢC SỬ DỤNG TRONG MẠCH 2
2.1 Màn hình LCD 2
2.1.1 Định nghĩa 2
2.1.2 Công dụng 2
2.2 Minres (điện trở) 3
2.2.1 Định nghĩa 3
2.2.2 Chức năng 3
2.2.3 Cách đọc tên điện trở 3
2.3 Capacitor (tụ điện) 4
2.3.1 Định nghĩa 4
2.3.2 Chức năng 4
2.4 Biến trở 5
2.4.1 Định nghĩa 5
2.4.2 Chức năng 5
2.5 Crystal (thạch anh) 6
2.5.1 Định nghĩa 6
2.5.2 Chức năng 6
Trang 42.6 Vi điều khiển PIC16F877A 7
2.6.1 Giới thiệu 7
2.6.2 Thông số kỹ thuật 7
2.6.3 Chức năng các chân của PIC16F877A 8
Chương 3: THIẾT KẾ VÀ THI CÔNG MẠCH
10 3.1 Thiết kế dựa trên phần mềm protues
10 Chương 4: CHƯƠNG TRÌNH CHÍNH 11
4.1 Viết code trên phần mềm CCS
12 4.2 Kết quả
12
Chương 5: KẾT LUẬN 13
Chương 1: GIỚI THIỆU ĐỀ TÀI 1.1 Đặt vấn đề giới thiệu đề tài
Trong lĩnh vực kỹ thuật điện tử và điều khiển, đồng hồ báo thức là một ví dụ thực tiễn tuyệt vời về việc ứng dụng các nguyên lý cơ bản của vi điều khiển Đây là một hệ thống có thể tương tác với con người thông qua các tín hiệu âm thanh và hình ảnh, đòi hỏi sự chính xác cao trong việc xử lý thời gian và lập trình các chức năng liên quan Một hệ thống đồng hồ báo thức thường bao gồm các thành phần chính như bộ vi điều khiển để xử lý và lưu trữ thông tin thời gian, màn hình hiển thị (thường là LCD hoặc LED) để thể hiện thời gian hiện tại, và hệ thống phát âm thanh để thực hiện chức năng báo thức Bên cạnh đó, trong quá trình học tập và nghiên cứu về vi điều
Trang 5khiển, việc xây dựng một dự án đồng hồ báo thức giúp sinh viên hiểu
rõ hơn về cách các thiết bị điện tử có thể tương tác với nhau để thựchiện những chức năng cụ thể Chúng tôi có cơ hội tiếp cận với cáckhái niệm quan trọng như cấu trúc của vi điều khiển, lập trình điềukhiển thiết bị đầu vào và đầu ra, cũng như quản lý và xử lý thời gianthực Đây là những kiến thức cốt lõi không chỉ có giá trị trong cácứng dụng nhỏ như đồng hồ báo thức mà còn có thể mở rộng sangcác hệ thống tự động phức tạp hơn Với những kiến thức và kỹ năngthu thập được từ quá trình thực hiện dự án này, chúng em hy vọng
sẽ cung cấp cái nhìn toàn diện và sâu sắc về cách ứng dụng vi điềukhiển trong thực tế Không chỉ giúp tăng cường khả năng lập trình vàthiết kế mạch điện tử, dự án này còn mang lại cơ hội học hỏi về cáckhía cạnh khác của công nghệ
2.1.1 Định nghĩa
LCD (Liquid Crystal Display) là loại màn hình phẳng sử
dụng công nghệ tinh thể lỏng để hiển thị hình ảnh Tinh thể lỏng
Trang 6không tự phát sáng, mà cần ánh sáng nền (backlight), thường là đèn LED hoặc đèn huỳnh quang, để hiển thị nội dung rõ ràng
LCD được ứng dụng rộng rãi trong các thiết bị như máy tính, đồng
hồ, điện thoại di động, và các thiết bị đo lường
Trang 7dựa trên nguyên lý của Định luật Ohm, theo đó điện trở tỷ lệ thuận
với điện áp và nghịch tỷ lệ với dòng điện
2.2.2 Chức năng
+ Giới hạn dòng điện để bảo vệ các linh kiện khác
+ Phân chia điện áp trong các mạch điện
+ Điều chỉnh mức độ tín hiệu trong mạch khuếch đại
+ Tạo ra nhiệt trong các ứng dụng như bộ sưởi điện trở
Điện trở có thể ở dạng cố định hoặc biến trở, trong đó biến trở chophép điều chỉnh giá trị điện trở bằng cách thay đổi vị trí của conchạy trên cuộn dây hoặc lớp carbon
2.2.3 Cách đọc tên điện trở
3
Trang 8Mỗi điện trở có một giá trị nhất định, vòng màu in trên điện trở thểhiện giá trị của nó.Thông thường điện trở có 4 vòng màu, 2 vòngmàu đều là 2 chữ số đầu của giá trị, vòng màu thứ 3 thể hiện chữ số
“0” đứng sau, vòng thứ 4 thể hiện sai số Có tất cả 12 màu, mỗi màu
2.3.2 Chức năng
Lưu trữ năng lượng: Tụ điện tích trữ năng lượng và giải phóng khicần, ví dụ như cung cấp điện trong thời gian ngắn khi nguồn điệnchính bị ngắt
Lọc tín hiệu: Trong các mạch điện tử, tụ điện thường được sử dụng
để lọc các tín hiệu nhiễu, loại bỏ thành phần điện áp xoay chiềukhông mong muốn
Trang 9Tạo dao động: Tụ điện kết hợp với cuộn cảm hoặc điện trở để tạo
ra mạch dao động, được ứng dụng trong radio, bộ tạo sóng và cácthiết bị viễn thông
Ghép mạch: Trong các mạch khuếch đại, tụ điện được sử dụng đểghép nối các tầng khuếch đại, ngăn không cho tín hiệu một chiềutruyền qua nhưng cho phép tín hiệu xoay chiều đi qua
Làm trơn dòng điện: Tụ điện giúp làm phẳng các dạng sóng điện
áp trong các bộ nguồn điện
Khác với điện trở cố định có giá trị không đổi, biến trở có thể điềuchỉnh được bằng cách xoay hoặc trượt một núm điều chỉnh (gọi làcon chạy) để thay đổi chiều dài của đường dẫn điện qua đó dòngđiện di chuyển
2.4.2 Chức năng:
Điều chỉnh dòng điện hoặc điện áp: Biến trở có thể thay đổi điệntrở của mạch, từ đó kiểm soát lượng dòng điện chạy qua hoặc điện
áp trên tải
Trang 10Điều chỉnh âm lượng: Trong các thiết bị âm thanh, biến trở thườngđược dùng để điều chỉnh âm lượng (như núm volume trên loa)
Điều chỉnh độ sáng: Biến trở được sử dụng để điều chỉnh độ sángcủa đèn LED, đèn điện và các thiết bị chiếu sáng
Thay đổi tốc độ động cơ: Trong các ứng dụng điều khiển động cơ,biến trở giúp thay đổi tốc độ quay của động cơ
Cảm biến vị trí: Một số biến trở được dùng làm cảm biến, cho biết
vị trí của một bộ phận cơ học (ví dụ như bàn đạp ga trên ô tô)
5
2.5 Crystal (thạch anh)
2.5.1 Định nghĩa
Là một linh kiện thụ động, thường được gọi là thạch anh dao động
(crystal oscillator), có khả năng tạo ra tần số dao động rất chính xáckhi được kích thích bởi một dòng điện Thạch anh là một vật liệu cóđặc tính áp điện, nghĩa là khi có điện áp đặt lên, nó sẽ dao động ởmột tần số xác định
2.5.2 Chức năng
Tạo xung nhịp (clock): Thạch anh thường được sử dụng để tạoxung nhịp trong các vi điều khiển, vi xử lý, đồng hồ và các hệ thống
Trang 11kỹ thuật số Tần số dao động ổn định của thạch anh đảm bảo rằng
hệ thống hoạt động chính xác và đồng bộ
Ổn định tần số: Trong các thiết bị truyền thông như radio, điệnthoại di động, và các thiết bị mạng, thạch anh giúp ổn định tần số,đảm bảo rằng các tín hiệu được phát và nhận ở đúng tần số
Tạo tần số tham chiếu: Thạch anh được sử dụng làm nguồn tần sốtham chiếu trong các bộ dao động (oscillator), cung cấp tần số chínhxác cho các mạch điện tử khác
Ứng dụng trong thiết bị đo thời gian: Do tính chính xác của tần sốdao động, thạch anh thường được sử dụng trong đồng hồ, máy tính
và các thiết bị điện tử cần tính toán thời gian chính xác
6
2.6 Vi điều khiển PIC16F877
2.6.1 Giới thiệu
PIC16F877 là một vi điều khiển thuộc dòng PIC (Peripheral Interface
Controller) của hãng Microchip Technology Đây là một vi điều khiển
8-bit rất phổ biến trong lĩnh vực phát triển các ứng dụng nhúng nhờvào tính linh hoạt và nhiều tính năng tích hợp
Trang 122.6.2 Thông số kỹ thuật
Kiến trúc: 8-bit RISC (Reduced Instruction Set Computer)
Bộ nhớ Flash: 14 KB (để lưu chương trình)
RAM: 368 bytes (để lưu trữ dữ liệu tạm thời)
EEPROM: 256 bytes (bộ nhớ không bay hơi dùng để lưu trữ dữ liệuvĩnh viễn)
Tần số hoạt động: Tối đa 20 MHz
Chân I/O: 33 chân xuất nhập (I/O), cho phép điều khiển và giao tiếpvới các thiết bị ngoại vi
Bộ định thời (Timers): 3 bộ định thời 8-bit/16-bit
Bộ chuyển đổi ADC: 10-bit, có khả năng chuyển đổi tín hiệu tương tựsang số với 8 kênh ADC
Giao tiếp: Hỗ trợ nhiều giao thức như UART (Universal AsynchronousReceiver-Transmitter), SPI (Serial Peripheral Interface), và I2C (Inter-Integrated Circuit)
Tính năng ngắt: Hỗ trợ các ngắt bên ngoài và ngắt nội bộ từ nhiềunguồn
7
Trang 132.6.3 Chức năng các chân của PIC16F877
Chân 1-8 (RA0-RA7):
Các chân I/O số trên cổng A, có thể được sử dụng cho mục đíchvào/ra Một số chân còn được tích hợp chức năng ADC (bộ chuyển đổitín hiệu tương tự sang số)
Trang 14Các chân I/O số thuộc cổng C, có thể thực hiện nhiều giao thức giaotiếp như UART, SPI, I2C.
Chân nối đất thứ hai
Chân 39-40 (OSC1/CLKI, OSC2/CLKO):
Chân dùng để kết nối thạch anh tạo xung nhịp cho vi điều khiển(OSC1 là đầu vào và OSC2 là đầu ra)
Chức năng đặc biệt:
MCLR (Chân 1): Chân thiết lập lại (Reset) của vi điều khiển, có thể
sử dụng để đưa vi điều khiển về trạng thái ban đầu
ADC (RA0-RA5, RE0-RE2): PIC16F877 hỗ trợ ADC 10-bit với 8 kênh
đầu vào
9
Chương 3: THIẾT KẾ VÀ THI CÔNG MẠCH 3.1 Thiết kế dựa trên phần mềm protues:
Trang 15Chương 4: CHƯƠNG TRÌNH CHÍNH 4.1: Chương trình trên CCS
Trang 16#include <main.h>
#define LCD_ENABLE_PIN PIN_D3
#define LCD_RS_PIN PIN_D1
#define LCD_RW_PIN PIN_D2
#define LCD_DATA4 PIN_D4
#define LCD_DATA5 PIN_D5
#define LCD_DATA6 PIN_D6
#define LCD_DATA7 PIN_D7
Trang 18Trong dự án này, chúng tôi đã thiết kế và triển khai một hệ thống điều khiển màn hình LCD sử dụng vi điều khiển PIC16F877A Mục tiêu của dự án là tạo ra một chiếc đồng hồ có thể chạy theo thời gianthực khi chúng ta cài đặt chúng
Dự án không chỉ giúp chúng tôi làm quen với vi điều khiển
PIC16F877A và các tính năng của nó, mà còn cung cấp cho chúng tôi
cơ hội áp dụng và cải thiện kỹ năng lập trình nhóm Ngoài ra, việc hiểu rõ hơn về cách thức hoạt động của các thành phần điện tử và cách tương tác với chúng thông qua mã lập trình cũng là một phần quan trọng của trải nghiệm học tập
Tổng quan, dự án đã đạt được mục tiêu đề ra và mang lại cho chúng tôi một cơ hội thực hành quý báu trong lĩnh vực phát triển các ứng dụng nhúng Qua quá trình này, chúng tôi cảm thấy tự tin hơn trong việc thực hiện các dự án tương tự trong tương lai và đã tích luỹ được nhiều kiến thức và kỹ năng quý giá
13
Trang 19Thang đo Rubric đánh giá học phần Vi điều khiển
Tên giảng viên: Phạm Hùng Kim Khánh Khoa/Viện: Viện Kỹ Thuật Hutech
Họ tên SV: Bùi Nguyễn Hoàng Duy Mã SV: 2282500175 Lớp: 22DOTC2
Học kỳ: 1A Năm học: 2024-2025Tên đề tài: Thiết kế đồng hồ theo thời gian thực
Mức độ đạt chuẩn quy định
Điểm Mức F
(0-3.9)
Mức D (4.0-5.4)
Mức C (5.5-6.9)
Mức B (7.0-8.4)
Mức A (8.5-10)
Đánh giá bài thi kết thúc học phần (100%)
và địnhdạng vănbản
Khôngchú thíchhình ảnh,bảngbiểu, đồthị, biểuđồ
Khôngtuân thủqui định
về bố cụcKhôngtrình bàyTLTKtheo quyđịnh
Khôngtrích dẫnTLTK
Mắc trên 20lỗi chính tả,ngữ pháp
và địnhdạng vănbản
Nhưngkhông biếtcách sửdụng vănphong khoahọc Chúthích hìnhảnh, bảngbiểu, đồ thị,biểu đồchưa đầy
đủ, chưađúng quyđịnh
Có tuân thủqui định về
nhưng nộidung củatừng phầnđược sắpxếp logic
Mắc 10-20lỗi chính tả,ngữ pháp
và địnhdạng vănbản nhưngkhông biếtcách sửdụng vănphong khoahọc Chúthích hìnhảnh, bảngbiểu, đồ thị,biểu đồchưa đầy
đủ, chưađúng quyđịnh
Trình bàyđúng bốcục nhưngnội dungcủa từngphần đượcsắp xếpchưa hợp
Mắc dưới
10 lỗi chính
tả, ngữpháp vàđịnh dạngvăn bản,
sử dụnghợp lý vănphong
khoa họcnhưng cònlỗi trongviệc sửdụng thuậtngữ
chuyênngành Chúthích hìnhảnh, bảngbiểu, đồthị, biểu đồ
nhưngchưa đúngquy định
Trình bàyđúng bốcục phầnlớn nộidung cácphần rõ
Hầu nhưkhôngmắc lỗichính tả,ngữ pháp
và địnhdạng vănbản sửdụng hợp
lý vănphongkhoa học
và thuậtngữ
chuyênngành Chúthích hìnhảnh, bảngbiểu, đồthị, biểu
đồ đúngquy định
Trình bàyđúng bốcục, nộidung tất
cả cácphần rõràng, hợp
lý, chi tiếtTrích dẫn
Trang 20
Có trìnhbày TLTKtheo quyđịnh Khôngtrích dẫnTLTK
lý
Trình bàyTLTK theoquy định,nhưng vẫncòn saisót Tríchdẫn không
TLTK
ràng vàhợp lý
Trình bàyTLTK theoquy định
Trích dẫnTLTK hợplý
Đáp ứng 50% - dưới 70% yêu cầu
Đáp ứng70% - dưới80% yêucầu
Đáp ứng80% -100% yêucầu
Trả lời đúngdưới 1/2 sốcâu hỏi
Trả lời đúng1/2 số câuhỏi
Trả lờiđúngtrên 2/3 sốcâu hỏi
Trả lờiđúngtất cả cáccâu hỏi
kỹ năngtrình bày
Thiếu kỹnăngthuyết trình
Bìnhthường,không gìđặc biệt
Biết thuhút ngườinghe
Nói rõ, tựtin, thuyếtphục, giaolưu ngườinghe
RUBRIC ĐÁNH GIÁ HỌC PHẦN
VI ĐIỀU KHIỂN
1 Chuẩn đầu ra học phần (CLO)
CLO1: Sử dụng vi điều khiển trong các hệ thống tự động, điện tử
CLO2: Phân tích các kiến trúc lập trình và khả năng kết nối giữa cácthiết bị ngoại vi
CLO3: Sử dụng được các kỹ thuật, công cụ và phần mềm cho việcphân tích, mô phỏng, thiết kế, chế tạo các sản phẩm điện, điện tử,điều khiển và tự động hóa
CLO4: Phân tích, thiết kế các hệ thống dùng vi điều khiển
CLO5: Có khả năng đọc và hiểu tài liệu kỹ thuật, trình bày, giải đáp
và phản biện những vấn đề kỹ thuật chuyên sâu thuộc lĩnh vực viđiều khiển
CLO6: Biết đánh giá và hướng dẫn công việc chuyên môn trong vận