Thiết kế và thi công đồng hồ thời gian thực tự động báo giờ học ứng dụng vi điều khiển Pic

Kỹ thuật vi điều khiển hiện nay phát triển rất mạnh mẽ, nó được ứng dụng vào rất nhiều

lĩnh vực từ trong đời sống sinh hoạt hàng ngày (mạch quang báo, mạch chống trộm,

khóa số, tủ lạnh, ti vi) cho tới các lĩnh vực trong công nghiệp cũng như trong quân sự.

Do có nhiều ưu điểm như nhỏ gọn, khả năng lập trình để điều khiển theo ý muốn, giá

thành thấp, có khả năng xử lí được nhiều công việc nên vi điều khiển trở thành linh kiện

không thể thiếu được trong các thiết bị phục vụ con người chúng ta.

Họ vi điểu khiển PIC là một trong những họ vi điều khiển mới sau này, có rất nhiều ưu

điểm vượt trội so với các họ vi điều khiển trước đó. Hiện nay, các trường kỹ thuật đã bắt

đầu đưa họ vi điều khiển PIC vào giảng dạy và thực hành cũng như ứng dụng trong các

đề tài khoa học (đặc biệt trong các cuộc thi ROBOCON sử dụng rất nhiều). Vì vậy, việc

nghiên cứu và ứng dụng họ vi điều khiển PIC là vấn đề cấp thiết cần được quan tâm.

Hiện nay đã có một số trường học sử dụng mạch tự động báo giờ học. Việc sử dụng

mạch này giúp cho các trường học tiết kiệm được công cử người trực theo dõi giờ để

bấm chuông báo giờ vào, ra tiết học. Tuy nhiên vẫn còn rất nhiều trường vẫn chưa lắp

đặt mạch báo giờ tự động này và các mạch tự động báo giờ thực tế hiện nay chủ yếu sử

dụng các linh kiện, vi điều khiển đơn giản nên gây khó khăn cho việc mở rộng thiết kế,

thi công. Từ nhu cầu thực tế đó, cần đến mạch đồng hồ thời gian thực và tự động báo

giờ học sử dụng vi điều khiển PIC với ưu điểm tiết kiệm kinh phí, nâng cao độ chính

xác, ổn định trong việc báo giờ học và tiện lợi khi sử dụng.

pdf 6 trang dienloan 6560
Bạn đang xem tài liệu "Thiết kế và thi công đồng hồ thời gian thực tự động báo giờ học ứng dụng vi điều khiển Pic", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Thiết kế và thi công đồng hồ thời gian thực tự động báo giờ học ứng dụng vi điều khiển Pic

Thiết kế và thi công đồng hồ thời gian thực tự động báo giờ học ứng dụng vi điều khiển Pic
Tạp chí Khoa học và Giáo dục, Trường Đại học Sư phạm Huế 
ISSN 1859-1612, Số 03(31)/2013: tr. 35-40 
THIẾT KẾ VÀ THI CÔNG ĐỒNG HỒ THỜI GIAN THỰC 
TỰ ĐỘNG BÁO GIỜ HỌC ỨNG DỤNG VI ĐIỀU KHIỂN PIC 
NGUYỄN TÚ HÀ 
Trường Đại học Sư phạm - Đại học Huế 
Tóm tắt: Bài báo trình bày quá trình thiết kế và thi công mạch đồng hồ thời 
gian thực (RTC- RealTime Clock) tự động báo giờ vào và ra tiết học sử dụng 
vi điều khiển PIC. Mạch hiển thị giờ, phút, giây, thứ, ngày, tháng, năm và 
nhiệt độ bằng Led 7 đoạn. Dữ liệu thời gian được đọc từ IC thời gian thực 
DS12C887; dữ liệu nhiệt độ được đọc từ IC cảm biến nhiệt độ LM35. Quá 
trình đọc dữ liệu và hiển thị thời gian nhiệt độ được điều khiển bởi vi điều 
khiển PIC16F877A. 
Từ khóa: Vi điều khiển PIC, đồng hồ thời gian thực. 
1. ĐẶT VẤN ĐỀ 
Kỹ thuật vi điều khiển hiện nay phát triển rất mạnh mẽ, nó được ứng dụng vào rất nhiều 
lĩnh vực từ trong đời sống sinh hoạt hàng ngày (mạch quang báo, mạch chống trộm, 
khóa số, tủ lạnh, ti vi) cho tới các lĩnh vực trong công nghiệp cũng như trong quân sự. 
Do có nhiều ưu điểm như nhỏ gọn, khả năng lập trình để điều khiển theo ý muốn, giá 
thành thấp, có khả năng xử lí được nhiều công việc nên vi điều khiển trở thành linh kiện 
không thể thiếu được trong các thiết bị phục vụ con người chúng ta. 
Họ vi điểu khiển PIC là một trong những họ vi điều khiển mới sau này, có rất nhiều ưu 
điểm vượt trội so với các họ vi điều khiển trước đó. Hiện nay, các trường kỹ thuật đã bắt 
đầu đưa họ vi điều khiển PIC vào giảng dạy và thực hành cũng như ứng dụng trong các 
đề tài khoa học (đặc biệt trong các cuộc thi ROBOCON sử dụng rất nhiều). Vì vậy, việc 
nghiên cứu và ứng dụng họ vi điều khiển PIC là vấn đề cấp thiết cần được quan tâm. 
Hiện nay đã có một số trường học sử dụng mạch tự động báo giờ học. Việc sử dụng 
mạch này giúp cho các trường học tiết kiệm được công cử người trực theo dõi giờ để 
bấm chuông báo giờ vào, ra tiết học. Tuy nhiên vẫn còn rất nhiều trường vẫn chưa lắp 
đặt mạch báo giờ tự động này và các mạch tự động báo giờ thực tế hiện nay chủ yếu sử 
dụng các linh kiện, vi điều khiển đơn giản nên gây khó khăn cho việc mở rộng thiết kế, 
thi công. Từ nhu cầu thực tế đó, cần đến mạch đồng hồ thời gian thực và tự động báo 
giờ học sử dụng vi điều khiển PIC với ưu điểm tiết kiệm kinh phí, nâng cao độ chính 
xác, ổn định trong việc báo giờ học và tiện lợi khi sử dụng. 
2. GIỚI THIỆU VI ĐIỀU KHIỂN PIC 
PIC là một họ vi điều khiển RISC được sản xuất bởi công ty Microchip Technology. 
PIC bắt nguồn là chữ viết tắt của "Programmable Intelligent Computer". 
Họ vi điều khiển này được sử dụng rộng rãi vì có các ưu điểm:[1]Dễ dàng tìm mua tại 
thị trường Việt Nam với giá thành không quá đắt; có đầy đủ các tính năng của một vi 
NGUYỄN TÚ HÀ 
36 
điều khiển khi hoạt động độc lập; sự hỗ trợ của nhà sản xuất về trình biên dịch, các công 
cụ lập trình, nạp chương trình từ đơn giản đến phức tạp; các tính năng đa dạng của vi 
điều khiển PIC, và các tính năng này không ngừng được phát triển; PIC là một sự bổ 
sung rất tốt về kiến thức cũng như về ứng dụng cho họ vi điều khiển mang tính truyền 
thống: họ vi điều khiển 8051. 
Ngoài ra số lượng người sử dụng họ vi điều khiển PIC hiện nay tại Việt Nam cũng như 
trên thế giới rất rộng rãi. Điều này tạo nhiều thuận lợi trong quá trình tìm hiểu và phát 
triển các ứng dụng như: số lượng tài liệu, số lượng các ứng dụng mở đã được phát triển 
thành công, dễ dàng trao đổi, học tập, dễ dàng tìm được sự chỉ dẫn khi gặp khó khăn. 
Hình 1. Sơ đồ chân của vi điều khiển PIC16F874A/16F877A 
PIC sử dụng tập lệnh RISC. Tập lệnh bao gồm các lệnh tính toán trên các thanh ghi, với 
các hằng số, hoặc các vị trí bộ nhớ, cũng như có các lệnh điều kiện, lệnh nhảy/gọi hàm, 
và các lệnh để quay trở về, nó cũng có các tính năng phần cứng khác như ngắt hoặc 
sleep (chế độ hoạt động tiết kiệm điện). Microchip cung cấp môi trường lập trình 
MPLAB, nó bao gồm phần mềm mô phỏng và trình dịch ASM. Một số công ty khác 
xây dựng các trình dịch C, Basic, Pascal cho PIC [1]. 
Để nạp chương trình cho PIC, ta có thể sử dụng các mạch nạp được cung cấp bởi nhà 
sản xuất là hãng Microchip hoặc các mạch nạp khác được thiết kế dành cho từng loại vi 
điều khiển PIC. 
Trong bài báo này, chúng tôi lựa chọn sử dụng PIC16F877A. Đây là vi điều khiển thuộc 
họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit. Mỗi lệnh đều được thực thi 
trong một chu kì xung clock. Tốc độ hoạt động tối đa cho phép là 20 MHz với một chu kì 
lệnh là 200ns. Bộ nhớ chương trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ 
nhớ dữ liệu EEPROM với dung lượng 256x8 byte. Số PORT I/O là 5 với 33 pin I/O. [2] 
THIẾT KẾ VÀ THI CÔNG ĐỒNG HỒ THỜI GIAN THỰC TỰ ĐỘNG BÁO GIỜ HỌC... 
37 
3. THIẾT KẾ MẠCH ĐỒNG HỒ THỜI GIAN THỰC RTC 
Đây là ứng dụng sử dụng vi điều khiển PIC để thiết kế một đồng hồ điện tử treo tường 
có các chức năng sau: 
- Hiển thị giờ, phút, giây; thứ, ngày, tháng, năm; nhiệt độ; 
- Điều chỉnh được giờ, phút, giây, thứ, ngày, tháng, năm; 
- Hẹn giờ để báo chuông giờ vào/ra tiết học theo yêu cầu. 
* Sơ đồ khối của mạch RTC: 
Hình 2. Sơ đồ khối mạch RTC 
Khối điều khiển sẽ đọc dữ liệu thời gian và nhiệt độ; sau đó sẽ hiển thị lên Led 7 đoạn. 
Đồng thời, mạch điều khiển luôn kiểm tra tín hiệu từ nút bấm để điều chỉnh thời gian 
hoặc hẹn giờ. 
3.1. Khối hiệu chỉnh nút bấm - Khối đo nhiệt độ 
Mạch sử dụng 4 nút bấm để điều chỉnh đồng hồ gồm: nút chỉnh giờ, nút hẹn giờ, nút 
tăng, nút giảm. (Hình 3) 
LM35 là bộ cảm biến nhiệt mạch tích hợp chính xác cao mà điện áp đầu ra của nó tỷ lệ 
tuyến tính với nhiệt độ theo thang độ Celsius [2]. Nhiệt độ được xác định bằng cách đo 
hiệu điện thế ngõ ra của LM35. (Hình 4) 
Hình 3. Sơ đồ kết nối nút bấm 
Hình 4. Sơ đồ kết nối LM35 
NGUYỄN TÚ HÀ 
38 
3.2. Khối hiển thị 
Mạch sử dụng 16 LED 7 đoạn để hiển thị thời gian giờ, phút, giây, thứ, ngày, tháng, 
năm và nhiệt độ. Để điều khiển các LED 7 đoạn, chúng tôi kết nối PORT D với các 
chân DATA của LED 7 đoạn và sử dụng IC giải mã 74LS154 kết hợp với Transistor để 
điều khiển sáng LED. (Hình 5) 
Hình 5. Sơ đồ nguyên lý mạch hiển thị LED 7 đoạn. 
3.3. Khối thời gian thực 
Dữ liệu thời gian sẽ được cập nhật từ IC thời gian thực DS12C887. Đây là IC thời gian 
thực được sản xuất bởi hãng Dallas với một vài đặc tính cơ bản sau: [2] 
- Chứa các giá trị thời gian giây, phút, giờ, thứ, ngày, tháng, năm với thời gian hoạt 
động đúng đến năm 2100; 
- Bộ đếm hoạt động với thời gian 10 năm nếu không có nguồn điện ngoài cung cấp; 
- Các hệ thống bên trong bao gồm hệ thống thời gian thực, nguồn nội bằng Lithium 
và bộ tạo dao động với bộ chia tần số đính kèm cho phép lập trình được. Ngoài ra 
còn hỗ trợ các ngắt phục vụ cho quá trình xử lí thông tin của hệ thống bên ngoài. 
DS12C887 gồm 24 chân và có thể được chia làm 3 nhóm như sau: 
- Nhóm chân DATA: bao gồm các chân AD7:AD0. Đây là các chân mà DS12C887 
dùng để đưa dữ liệu ra hay nhận dữ liệu vào; 
- Nhóm chân điều khiển giao tiếp BUS: bao gồm các chân MOT, AS, DS, R/W với 
các chức năng phụ thuộc vào việc lựa chọn chế độ giao tiếp BUS theo chuẩn của 
Intel (MOT=1) hay Motorola (MOT= 0); 
- Nhóm chân chức năng: bao gồm các chân RESET (dùng để reset IC), IRQ (chân tác 
động của các ngắt trong DS12C887) và chân SQW (chân tạo sóng vuông ngõ ra). 
3.4. Khối báo giờ 
Khối báo giờ sẽ thực hiện chức năng đổ chuông để báo giờ vào và ra tiết học. Dựa vào 
thời gian quy định tiết học của trường, vi điều khiển PIC sẽ so sánh thời gian thực và 
thời gian vào và ra tiết học. Nếu thời gian giống nhau thì sẽ điều khiển đổ chuông để 
báo giờ. 
THIẾT KẾ VÀ THI CÔNG ĐỒNG HỒ THỜI GIAN THỰC TỰ ĐỘNG BÁO GIỜ HỌC... 
39 
3.5. Khối điều khiển 
Khối điều khiển là mạch gồm vi điều khiển PIC 16F877A và các cổng kết nối để giao 
tiếp với các khối khác. (Hình 6) 
Hình 6. Sơ đồ nguyên lý mạch điều khiển. 
4. XÂY DỰNG CHƯƠNG TRÌNH CHO PIC 
Dựa vào thiết kế phần cứng, nguyên lý làm việc của mạch, chúng tôi sử dụng phần mềm 
CCS viết chương trình nạp cho PIC để điều khiển mạch [3]. Lưu đồ chương trình chính 
được thực hiện như sau: 
Hình 7. Lưu đồ chương trình chính. 
NGUYỄN TÚ HÀ 
40 
5. KẾT QUẢ 
Sau quá trình thiết kế và thi công mạch, chúng tôi đã hoàn thành đồng hồ thời gian thực 
có chức năng tự động báo giờ học như hình 8. Đồng hồ có thể hiển thị chính xác thời 
gian và nhiệt độ, ngoài ra còn có chức năng tự động báo giờ học mỗi khi vào/ra tiết học. 
Hình 8. Đồng hồ thời gian thực tự động báo giờ học. 
6. KẾT LUẬN 
Mạch đồng hồ thời gian thực và tự động báo giờ học sử dụng vi điều khiển PIC và IC 
chuyên dụng DS12C887 cho ta độ chính xác tuyệt đối về thời gian thực, hoạt động ổn 
định, linh hoạt. Mạch có thể áp dụng rộng rãi cho các trường học hay các cơ quan tổ 
chức có nhu cầu tự động báo giờ. 
Để sản phẩm này thêm phong phú và tăng hiệu quả sử dụng thì cần phải phát triển thêm 
các chức năng: hiển thị được ngày, tháng, năm âm lịch; sử dụng LED ma trận để hiển 
thị đẹp hơn; thay đổi phương pháp điều khiển từ xa bằng Remote,.... 
TÀI LIỆU THAM KHẢO 
[1] Website Diễn đàn điện tử (2012). Cơ bản về vi điều khiển và PIC, truy cập ngày 
20/08/2012, link:  
[2] Website Tra cứu Datasheet (2012). Datasheet PIC16F877A-DS12C887-LM35- 
74LS154, truy cập ngày 25/09/2012, link:  
[3] Ngô Diên Tập (2006). Vi điều khiển với lập trình C, NXB Khoa học kỹ thuật. 
Title: DESIGNING AND IMPLEMENTING THE REAL TIME CLOCK CIRCUIT THAT 
AUTOMATICALLY ALARMS THE SCHOOL TIME USING THE PIC 
MICROCONTROLLER 
Abstract: In this paper, we show the process of design and implementation of the real time 
clock circuit that automatically alarms the beginning and the end of the school time using the 
PIC microcontroller. This circuit displays hour, minute second, day of week, day, month, year 
and temperature using LED 7- segment. The data of time is received from realtime DS12C887 
IC, and the data of temperature is received from the thermal sensor LM35 IC. The process of 
data analysis and display are controlled by the PIC16F877A microcontroller. 
Keywords: PIC Microcontroller, RTC- RealTime Clock. 
ThS. NGUYỄN TÚ HÀ 
Khoa Vật lý, Trường Đại học Sư phạm - Đại học Huế, Email: nguyentuha82@gmail.com 

File đính kèm:

  • pdfthiet_ke_va_thi_cong_dong_ho_thoi_gian_thuc_tu_dong_bao_gio.pdf