Ứng dụng IC8051 để hiển thị bộ đếm GIỜ - PHÚT – GIÂY – THỨ – NGÀY – THÁNG - NĂM trên LCD 16 -2.
ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN -- ----------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- ------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- NGÀY……THÁNG……NĂM 2009 CHỮ KÝ CỦA GVHD: NHẬN XÉT CỦA HỘI ĐỒNG CHẤM ĐIỂM -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- DHCN TPHCM - 1 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- NGÀY …… THÁNG ……NĂM 2009 CHỮ KÝ CỦA GVPB: 1. Lời mở đầu DHCN TPHCM - 2 - SVTH : NGUYEN NGOC SANG A – MỞ ĐẦU ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Ngày nay nhân loại đang trải qua những sự phát triển vượt về mọi mặt. Trong đó điện tử tự - động hố đóng một vai trò không nhỏ. Điện tử góp phần vào quá trình tự động hố mọi thứ giúp con người hiện đại hố cuộc sống. Vận dụng những kiến thức đã được học trong quá trình học tập ở trường em thực hiện đồ án II này. Đồ án này được áp dụng chủ yếu dựa vào vi điều khiển. Mà thực tế là IC họ 8051 IC89C51, nhằm mục đích dúp em hiểu một cách tường tận hơn về những gì về vi điều khiển, cách đọc, viết va nhận biết về các chân IC mà em đã được học từ thầy cô trong trường, tìm hiểu và nghiên cứu qua sách cũng như cách thức vận dụng nó trong thực tế . Trong thực tế, các ứng dụng của vi điều khiển rất đa dạng và phong phú. Từ những ứng dụng đơn giản chỉ có vài thiết bị ngoại vi cho đến những hệ thống điều khiển phức tạp .Tuy nhiên do pham vi trình độ của em còn hạn chế, nên việc nghiên cứu và tìm hiểu về vi điều khiển còn nhiều điều chưa biết. Trong bài viết của em, em xin giới thiêu ứng dụng IC8051 để hiển thị bộ đếm GIỜ - PHÚT – GIÂY – THỨ – NGÀY – THÁNG - NĂM trên LCD 16 -2. Tuy nhiên trong quá trình viêt do trình độ hiểu biết của em còn hạn chế, nên còn xẩy ra nhiều sai sót mong thầy và các bạn góp ý bổ sung để em được hiểu biết hơn trong quá trình học tâp tiếp theo. Em xin chân thành cảm ơn! 2. Lời cảm tạ Em thực hiện đồ án này cám ơn thầy Trương Năng Tồn đã tận tình hướng dẫn và tạo điều kiện thuận lợi cho em hồn thành tốt đề tài này . Em thực hiện đồ án này xin chân thành cám ơn quý thầy cô trong khoa điện tử cùng các bạn sinh viên trong khoa đã đóng góp ý kiến và kinh nghiệm trong quá trình thực hiện đề tài này. DHCN TPHCM - 3 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Chương DHCN TPHCM - 4 - SVTH : NGUYEN NGOC SANG B - NỘI DUNG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 1.1 GIỚI THIỆU CẤU TRÚC PHẦN CỨNG HỌ MCS-51 (8951): 1.1.1 Giới thiệu họ MCS-51: MCS-51 là họ IC vi điều khiển do hãng Intel sản xuất. Các IC tiêu biểu cho họ là 8051 và 8031. Các sản phẩm MCS-51 thích hợp cho những ứng dụng điều khiển. Việc xử lý trên Byte và các tốn số học ở cấu trúc dữ liệu nhỏ được thực hiện bằng nhiều chế độ truy xuất dữ liệu nhanh trên RAM nội. Tập lệnh cung cấp một bảng tiện dụng của những lệnh số học 8 Bit gồm cả lệnh nhân và lệnh chia. Nó cung cấp những hổ trợ mở rộng trên Chip dùng cho những biến một Bit như là kiểu dữ liệu riêng biệt cho phép quản lý và kiểm tra Bit trực tiếp trong điều khiển và những hệ thống logic đòi hỏi xử lý luận lý. AT89C51 là một vi điều khiển 8 Bit, chế tạo theo công nghệ CMOS chất lượng cao, công suất thấp với 4 KB PEROM (Flash Programmable and erasable read only memory). Thiết bị này được chế tạo bằng cách sử dụng bộ nhớ không bốc hơi mật độ cao của ATMEL và tương thích với chuẩn công nghiệp MCS-51 về tập lệnh và các chân ra. PEROM ON-CHIP cho phép bộ nhớ lập trình được lập trình trong hệ thống hoặc bởi một lập trình viên bình thường. Bằng cách kết hợp một CPU 8 Bit với một PEROM trên một Chip đơn, ATMEL AT89C51 là một vi điều khiển mạnh (có công suất lớn) mà nó cung ấp một sự linh động cao và giải pháp về giá cả đối với nhiều ứng dụng vi điều khiển. AT89C51 cung cấp những đặc tính chuẩn như sau: 4 KB bộ nhớ chỉ đọc có thể xóa và lập trình nhanh (EPROM), 128 Byte RAM, 32 đường I/O, 2 TIMER/COUNTER 16 Bit, 5 vectơ ngắt có cấu trúc 2 mức ngắt, một Port nối tiếp bán song công, 1 mạch dao động tạo xung Clock và bộ dao động ON-CHIP. Thêm vào đó, AT89C51 được thiết kế với logic tĩnh cho hoạt động đến mức không tần số và hỗ trợ hai phần mềm có thể lựa chọn những chế độ tiết kiệm công suất, chế độ chờ (IDLE MODE) sẽ dừng CPU trong khi vẫn cho phép RAM, timer/counter, port nối tiếp và hệ thống ngắt tiếp tục hoạt động. Chế độ giảm công suất sẽ lưu nội dung RAM nhưng sẽ treo bộ dao động làm mất khả năng hoạt động của tất cả những chức năng khác cho đến khi Reset hệ thống. DHCN TPHCM - 5 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Các đặc điểm của 8951 được tóm tắt như sau: − 4 KB bộ nhớ có thể lập trình lại nhanh, có khả năng tới 1000 chu kỳ ghi xố − Tần số hoạt động từ: 0Hz đến 24 MHz − 3 mức khóa bộ nhớ lập trình − 2 bộ Timer/counter 16 Bit − 128 Byte RAM nội. − 4 Port xuất /nhập I/O 8 bit. − Giao tiếp nối tiếp. − 64 KB vùng nhớ mã ngồi − 64 KB vùng nhớ dữ liệu ngoại. − Xử lý Boolean (hoạt động trên bit đơn). − 210 vị trí nhớ có thể định vị bit. − 4 µs cho hoạt động nhân hoặc chia. 1.1.2 Sơ đồ khối của AT89C51 a. Sơ đồ nguyên lý DHCN TPHCM - 6 - SVTH : NGUYEN NGOC SANG OTHER REGISTER 128 byte RAM 128 byte RAM 8032\8052 ROM 0K: 8031\8032 4K:8951 8K:8052 INTERRUP CONTROL INT1\ INT0\ SERIAL PORT TEMER0 TEMER1 TEMER2 8032\8052 CPU OSCILATOR BUS CONTROL I/O PORT SERIAL PORT EA\ RST ALE\ PSEN\ P 0 P 1 P 2 P 3 Address\Data TXD RXD TEMER2 8032\8052 TEMER1 TEMER1 ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Hình 1.1: Sơ đồ khối của AT89C51 − Interrup Control: Khối điều khiển ngắt ngồi − Other Register: Các thanh ghi − Ram: Bộ nhớ truy xuất ngẩu nhiên (128 Byte) − Eprom: Bộ nhớ chỉ đọc, xóa, lập trình được − Timer 1: Bộ định thời − Timer 0: Bộ định thời − Serial Port: Cổng vào ra nối tiếp − I/O Port: Các cổng vào ra − CPU: Vi xử lý − Oscilator: Mạch dao động nội − Bus Control: Các đường điều khiển Bus b. Sơ đồ chi tiết DHCN TPHCM - 7 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Hình 1.2: Sơ đồ chi tiết của AT89C51 1.2 KHẢO SÁT SƠ ĐỒ CHÂN 8951, CHỨC NĂNG TỪNG CHÂN: 1.2.1. Sơ đồ chân 8951 : DHCN TPHCM - 8 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Hình 1.3: Sơ đồ chân của AT89C51 1.2.2. Chức năng các chân của 8951 AT89C51 có tất cả 40 chân có chức năng như các đường xuất nhập. Trong đó có 24 chân có tác dụng kép (có nghĩa 1 chân có 2 chức năng), mỗi đường có thể hoạt động như đường xuất nhập hoặc như đường điều khiển hoặc là thành phần của các bus dữ liệu và bus địa chỉ. a. Các Port : Port 0: Port 0 là port có 2 chức năng ở các chân 32 – 39 của 8951. Trong các thiết kế cỡ nhỏ không dùng bộ nhớ mở rộng nó có chức năng như các đường IO. Đối với các thiết kế cỡ lớn có bộ nhớ mở rộng, nó được kết hợp giữa bus địa chỉ và bus dữ liệu. Port 1: Port 1 là port IO trên các chân 1-8. Các chân được ký hiệu P1.0, P1.1, P1.2, … có thề dùng cho giao tiếp với các thiết bị ngồi nếu cần. Port 1 không có chức năng khác, vì vậy chúng chỉ được dùng cho giao tiếp với các thiết bị bên ngồi. Port 2: DHCN TPHCM - 9 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Port 2 là 1 port có tác dụng kép trên các chân 21- 28 được dùng như các đường xuất nhập hoặc là byte cao của bus địa chỉ đối với các thiết bị dùng bộ nhớ mở rộng. Port 3: Port 3 là port có tác dụng kép trên các chân 10-17. Các chân của port này có nhiều chức năng, các công dụng chuyển đổi có liên hệ với các đặc tính đặc biệt của 8951 như ở bảng sau: Bit Tên Chức năng chuyển đổi P3.0 RXT Ngõ vào dữ liệu nối tiếp. P3.1 TXD Ngõ xuất dữ liệu nối tiếp. P3.2 INT0\ Ngõ vào ngắt cứng thứ 0 P3.3 INT1\ Ngõ vào ngắt cứng thứ 1 P3.4 T0 Ngõ vào của TIMER/COUNTER thứ 0 P3.5 T1 Ngõ vào của TIMER/COUNTER thứ 0 P3.6 WR\ Tín hiệu ghi dữ liệu lên bộ nhớ ngồi P3.7 RD\ Tín hiệu đọc dữ liệu bộ nhớ ngồi Bảng 1.1: Chức năng các chân của Port 3 b. Các ngõ tín hiệu điều khiển: Ngõ tín hiệu PSEN (Program store enable): PSEN là tín hiệu ngõ ra ở chân 29 có tác dụng cho phép đọc bộ nhớ chương trình mở rộng thường được nói đến chân 0E\ (output enable) của Eprom cho phép đọc các byte mã lệnh. PSEN ở mức thấp trong thời gian Microcontroller 8951 lấy lệnh. Các mã lệnh của chương trình được đọc từ Eprom qua bus dữ liệu và được chốt vào thanh ghi lệnh bên trong 8951 để giải mã lệnh. Khi 8951 thi hành chương trình trong ROM nội PSEN sẽ ở mức logic 1. Ngõ tín hiệu điều khiển ALE (Address Latch Enable): Khi 8951 truy xuất bộ nhớ bên ngồi, port 0 có chức năng là bus địa chỉ và bus dữ liệu do đó phải tách các đường dữ liệu và địa chỉ. Tín hiệu ra ALE ở DHCN TPHCM - 10 - SVTH : NGUYEN NGOC SANG [...]... - 32 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 BẮT ĐẦU GIẢI MÃ SỐ BCD CỦA GIỜ-PHÚTGIÂY,HIỂN THỊ LÊN HÀNG 1 CỦA LCD KẾT THÚC 5.7 HÀNG 2 BẮT ĐẦU GIẢI MÃ SỐ BCD CỦA THỨ, NGÀY, THÁNG, NĂM HIỂN THỊ HÀNG 2 CỦA LCD KẾT THÚC 5.8 CHƯƠNG TRÌNH SETTING DHCN TPHCM - 33 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 BẮT ĐẦU HEX TO BCD HÀNG 1 HÀNG 2 TĂNG BIẾN ĐẾM 1 SELECT= 00 B ĐẾM... 5.10 CHƯƠNG TRÌNH GIẢM BẮT ĐẦU DHCN TPHCM - 35 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Đ GIẢM GIÂY Đ GIẢM PHÚT Đ GIẢM GIỜ Đ GIẢM THỨ Đ GIẢM NGÀY Đ GIẢM THÁNG Đ BIẾN ĐẾM 1=1 GIẢM NĂM S BIẾN ĐẾM 1=2 S BIẾN ĐẾM 1=3 S BIẾN ĐẾM 1=4 S BIẾN ĐẾM 1=5 S BIẾN ĐẾM 1=6 S BIẾN ĐẾM 1=7 S KẾT THÚC Chương CHUONG TRINH HIEN THI DONG HO TREN LCD DHCN TPHCM - 36 - SVTH : NGUYEN NGOC SANG ... nối với LCD để hiển thị thông tin lịch vạn niên Chân VR của LCD được kết nối với biến trở VR1(10K) để chỉnh độ sáng tối của LCD Chân RS , R / W ,Enable của LCD là các chân điều khiển Các nút nhấn Select, Up, Down, Ok dùng để hiệu chỉnh thông tin lịch vạn niên của Dalas DHCN TPHCM - 27 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Chương 5.1 CHƯƠNG TRÌNH CHÍNH DHCN TPHCM - 28 - SVTH :... SELECT= 00 B ĐẾM 1=8 Đ BIẾN ĐẾM 1 = 1 UP = 0 DOWN = 0 S Đ TĂNG Đ GIẢM OK = 0 Đ KẾT THÚC DHCN TPHCM - 34 - SVTH : NGUYEN NGOC SANG S ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 5.9 CHƯƠNG TRÌNH TĂNG BẮT ĐẦU Đ TĂNG GIÂY Đ TĂNG PHÚT Đ TĂNG GIỜ Đ TĂNG THỨ Đ TĂNG NGÀY Đ TĂNG THÁNG Đ BIẾN ĐẾM 1=1 TĂNG NĂM S BIẾN ĐẾM 1=2 S BIẾN ĐẾM 1=3 S BIẾN ĐẾM 1=4 S BIẾN ĐẾM 1=5 S BIẾN ĐẾM 1=6 S BIẾN ĐẾM 1=7 S KẾT THÚC 5.10 CHƯƠNG... ĐƠNG HỒ SỐ TRÊN LCD 16X2 BẮT ĐẦU KHỞI TẠO LCD KHỞI TẠO DALLAS ĐỌC GIỜ PHÚT GIÂY BIẾN ĐẾM 1 = 1 HEX TO BCD SETTING HÀNG 1 HÀNG 2 S KẾT THÚC SELECT=0 Đ 5.2 CHƯƠNG TRÌNH KHỞI TẠO LCD DHCN TPHCM - 29 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 BẮT ĐẦU XÁC LẬP CẤU HÌNH HOẠT ĐỘNG CỦA LCD THEO DATASHEET XÁC LẬP FONT 5*7 KẾT THÚC 5.3 CHƯƠNG TRÌNH KHỞI TẠO DALLAS DHCN TPHCM - 30 - SVTH : NGUYEN... thời gian từ IC đồng hồ, xử lý các nút nhấn khi nhập dữ liệu, xuất dữ liệu hiển thị − Khối hiển thị: Dùng Led 7 đoạn hiển thị giá mua vào, giá bán ra và ngày, tháng, năm − Khối nút nhấn: Dùng 4 nút nhấn (SELECT, OK, UP, DOWN) để hiệu chỉnh các giá trị hiển thị DHCN TPHCM - 17 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Chương 4.1 SƠ ĐỒ NÚT NHẤN +5V +5V 4K7 +5V 4K7 SELEC T 4K7 U P P 3 2... ĐIỀU KHIỂN) - 16 - HIỂN THỊ (DISPLAY) SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 NÚT NHẤN KHỐI NGUỒN (NGUỒN +5VDC) Hình 3.1: Sơ đồ khối 3.2 CHỨC NĂNG CÁC KHỐI − Khối nguồn: Cung cấp nguồn ổn định cho các khối (+5VDC) − Khối đồng hồ: Dùng IC Real Time Clock để có giờ ổn định, không bị sai giờ khi mất điện, có 113 byte RAM đa dụng để mở rộng RAM ngồi khi viết chương trình − Khối điều khiển:... SỐ TRÊN LCD 16X2 BẮT ĐẦU GHI VÀO THANH GHI A CỦA DALLAS NỘI DUNG 20H GHI VÀO THANH GHI B CỦA DALLAS NỘI DUNG 06H KẾT THÚC 5.4 CHƯƠNG TRÌNH ĐỌC GIỜ, PHÚT, GIÂY DHCN TPHCM - 31 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 BẮT ĐẦU ĐỌC THÔNG TIN LỊCH VẠN NIÊN CỦA DALLAS TỪ Ô NHỚÙ 00H – 09H LƯU VÀO Ô NHỚ 60H – 69H CỦA 89C51 KẾT THÚC 5.5 HEX TO BCD BẮT ĐẦU SỐ HEX ĐỌC TỪ DALLAS CHIA CHO 10 ĐỂ... MAXXIM với những tính năng sau: • Được sử dụng chạy đồng hồ, lịch trong các dòng máy tính IBM AT • Sơ đồ chân tương thích với các loại IC MC146818 và DS1287 • Tự vận hành với pin nội có tuổi thọ lên đến 10 năm • Đếm giờ, phút, giây, ngày, tháng, năm, thứ với thời gian đến năm 2100 • Dữ liệu ngày giờ được truy xuất dưới dạng binary hoặc BCD • Có thể lựa chọn hiển thị giờ Mode 24 hoặc Mode 12 với AM và PM... tắt nguồn; chỉ thốt khi xóa về 0) tiết kiệm năng lượng DHCN TPHCM - 21 - SVTH : NGUYEN NGOC SANG ĐỒ ÁN 2 ĐƠNG HỒ SỐ TRÊN LCD 16X2 Port 0: chân 3 2-3 9(AD0-AD7) là các đường dữ liệu và địa chỉ được nối đến chân 4-1 1(AD0-AD7) IC đồng hồ DS12C887 Port 2: chỉ sử dụng các chân 21, 22, 23 (P2.0, P2.1, P2.2) được nối đến chân 9,10, 11 của LCD 16x2 Port 3: chân 12, 13, 14, 15 (P3.2, P3.3, P3.4, P3.5) được nối . -- -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - . -- -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - -- - --