vi ĐiỀu khiỂn - ddt.hitu.edu.vn

43
BỘ CÔNG THƯƠNG TRƯỜNG CAO ĐẲNG CÔNG THƯƠNG TP.HCM KHOA: ĐIỆN – ĐIỆN TỬ BỘ MÔN: ĐIỆN TỬ CÔNG NGHIỆP ĐỒ ÁN: VI ĐIỀU KHIỂN ĐỀ TÀI: MẠCH ĐỒNG HỒ HIỂN THỊ THỜI GIAN THỰC GVHD: Nguyễn Kim Suyên NHÓM SVTH: 1.Cao Văn Ngọc MSSV:2116060103 2.Hồ Văn Ninh MSSV:2116060109 LỚP: CCQ1606B Tp. Hồ Chí Minh, Tháng 05 Năm 2019

Upload: others

Post on 22-Oct-2021

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

BỘ CÔNG THƯƠNG

TRƯỜNG CAO ĐẲNG CÔNG THƯƠNG TP.HCM

KHOA: ĐIỆN – ĐIỆN TỬ

BỘ MÔN: ĐIỆN TỬ CÔNG NGHIỆP

ĐỒ ÁN: VI ĐIỀU KHIỂN

ĐỀ TÀI:

MẠCH ĐỒNG HỒ HIỂN THỊ THỜI GIAN

THỰC

GVHD: Nguyễn Kim Suyên

NHÓM SVTH: 1.Cao Văn Ngọc MSSV:2116060103

2.Hồ Văn Ninh MSSV:2116060109

LỚP: CCQ1606B

Tp. Hồ Chí Minh, Tháng 05 Năm 2019

Page 2: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh i

LỜI MỞ ĐẦU

Việt nam là một nước đang trên con đường phát triển và đang hòa nhập vào sự

phát triển của “WTO” tạo ra thay đổi về mặt kinh tế xã hội của nước ta. Tạo cơ hội

cho học sinh – sinh viên chúng em tiếp cận và nắm bắt được nhiều thành tựu vĩ của thế

giới, đặc biệt là về các lĩnh vực khoa học kỹ thuật nói chung và ngành điện tử nói

riêng.

Ngay những ngày khai sinh công nghệ vi điều khiển nói riêng và ngành điện tử

nói chung đã tạo ra nhiều bước đột phá mới mẽ cho các ngành kinh tế khác và còn

đảm bảo được yêu cầu của người dùng cả về chất lượng và dịch vụ. Đồng thời kiến

thức về kĩ thuật là không thể thiếu đến với mỗi sinh viên, nhất là sinh viên ngành điện

tử.

Thế hệ trẻ chúng em không tự mình phấn đấu học hỏi thì chúng em sẽ sớm lạc

hậu và nhanh chống bị đẩy lùi. Nhìn thấy được điều đó trường: “CAO ĐẲNG CÔNG

THƯƠNG TP.HCM” đã sớm chủ trương hình thức đào tạo sâu rộng, từ thấp đến cao.

Để tăng chất lượng học tập của sinh viên nhà trường nói chung và trung tâm điện tử

nói riêng đã tổ chức cho sinh viên làm đồ án môn học nhằm tạo nền tảng vửng chắc

cho sinh viên khi ra trường, đáp ứng nhu cầu tuyển dụng việc làm. Chính vì vậy chúng

em đã chọn đề tài: “đề tài: “MẠCH ĐỒNG HỒ HIỂN THỊ THỜI GIAN THỰC”.

Dưới sự hướng dẫn của thầy NGUYỄN KIM SUYÊN, em quyết định thực

hiện đề tài:” MẠCH ĐỒNG HỒ HIỂN THỊ THỜI GIAN THỰC”.

Sau thời gian nổ lực nghiêng cứu, được sự chỉ dẫn của thầy NGUYỄN KIM

SUYÊN, nhóm em đã hoàn thành đề tài đã chọn. Dưới đây là bài tiểu luận báo cáo kết

quả nghiêng cứu của nhóm em, tuy dã nổ lực hết sức nhưng trong quá trình làm còn

nhiều sai sót thực hiện đề tài, do trình độ hiểu biết còn hạn chế nên đề tài còn nhiều sai

sót, nhóm chúng em rất mong được sự giúp đỡ của thầy để em hoàn thành quá trình

học tốt hơn.

Nhóm SVTH:

Cao Văn Ngọc

Hồ Văn Ninh

Page 3: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh ii

LỜI CẢM ƠN

Em xin chân thành cám ơn thầy Nguyễn Kim Suyên đã tận tình hướng dẫn và

tạo điều kiện thuận lợi cho em hoàn thành tốt đồ án này. Em xin chân thành cám ơn

quý thầy cô trong khoa điện - điện tử cùng các bạn sinh viên trong lớp và khoa đã

đóng góp ý kiến và trao đổi kinh nghiệm trong quá trình thực hiện và hoàn thành đề tài

này.

Trong quá trình thực hiện đề tài không thể tránh khỏi sai sót, chúng em rất

mong sự đóng góp ý kiến, phê bình và hướng dẫn thêm của thầy cô.

Nhóm SVTH:

Cao Văn Ngọc

Hồ Văn Ninh

Page 4: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh iii

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

Nhận xét chung:

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

Đánh giá: (Được phép bảo vệ hay không được phép bảo vệ)

….......................................................................................................................................

….......................................................................................................................................

….......................................................................................................................................

TPHCM, ngày … tháng … năm 20...

Giáo viên hướng dẫn

(Ký và ghi rõ họ tên)

Page 5: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh iv

TIẾN ĐỘ THỰC HIỆN ĐỒ ÁN MÔN HỌC

Tên đề tài: ĐỒNG HỒ HIỂN THỊ THỜI GIAN THỰC

Ngày giao đề tài: 11/02/2019 Tuần thứ: 1

Ngày hoàn thành đề tài: 20/05/2019 Tuần thứ: 15

Nhóm SVTH: Cao Văn Ngọc MSSV: 2116060103

Hồ Văn Ninh MSSV: 2116060109

Tuần/ngày Nội dung – công việc thực hiện

Tuần 1-3

(11/02-25/02)

Chọn nhóm và đăng ký đồ án vi điều khiển

Gặp giáo viên hướng dẫn đề xuất đề tài đồ án

Tuần 4-6

(04/03-18/03)

Tìm hiểu, lên ý tưởng và thiết kế sơ đồ nguyên lý

Mô phỏng trên phần mềm proteus

Tuần 7-9

(25/03-08/04) Kiểm tra sơ đồ nguyên lý và bắt đầu thi công mạch

Tuần 10-12

(15/04-29/04)

Chỉnh sửa lỗi và lắp ráp lại mạch, giải thích nguyên lý hoạt động của

mạch

Tuần 13-14

(06/05-13/05)

Tiến hành viết báo cáo và đưa cho giáo viên hướng dẫn xem rồi chỉnh

sửa

Tuần 15

20/05 Nộp đồ án và báo cáo hoàn chỉnh trước khi bảo vệ

Xác nhận của giáo viên hướng dẫn

(Ký và ghi rõ họ và tên)

Page 6: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh v

LỜI CAM ĐOAN

Đề tài này là do em tự thực hiện dựa vào một số tài liệu tham khảo và chúng em

xin cam đoan đề tài này không sao chép bất kỳ công trình đã có trước đó. Nếu có sao

chép nhóm chúng em hoàn toàn chịu trách nhiệm.

TP.HCM, ngày 20 tháng 05 năm 2019

Ký tên

Cao Văn Ngọc Hồ Văn Ninh

Page 7: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh vi

DANH MỤC HÌNH

Hình 2.1: Sơ đồ khối mạch đồng hồ hiển thị thời gian thực .................................... 2

Hình 3.1: IC thời gian thưc DS1307 ...................................................................... ..3

Hình 3.2: IC Atmega16 ........................................................................................... .4

Hình 3.3: Led 7 đoạn ........................................................................................... .....6

Hình 3.4: Sơ đồ chân Led 7 đoạn...............................................................................7

Hình 3.5: Cách mắc LED 7 đoạn Anode chung và Cathode chung...........................8

Hình 4.1: Sơ đồ nguyên lý chung ............................................................................ 9

Hình 4.2: Khối vi điều khiển .................................................................................. 19

Hình 4.3: Khối nút nhấn ......................................................................................... 10

Hình 4.4: Khối thời gian thực ................................................................................ 11

Hình 4.5: Khối hiển thị led 7 đoạn ......................................................................... 12

Hình 4.6: Khối nguồn ............................................................................................. 13

Hình 4.7: Sơ đồ layout ............................................................................................ 14

Hình 4.8: Sơ đồ mạch in ......................................................................................... 15

Hình 4.9: Hình ảnh thực tế của mạch đồng hồ thời gian thực ................................ 15

Page 8: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh vii

DANH MỤC BẢNG

Bảng 3.1: Chức năng các chân IC DS1307...............................................................3

Bảng 3.2: Bảng trạng thái của LED 7 đoạn...............................................................6

Page 9: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh

MỤC LỤC LỜI MỞ ĐẦU ............................................................................................................. i

LỜI CẢM ƠN ............................................................................................................. ii

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ...................................................... iii

TIẾN ĐỘ THỰC HIỆN ĐỒ ÁN MÔN HỌC .......................................................... iv

LỜI CAM ĐOAN ....................................................................................................... v

DANH MỤC HÌNH .................................................................................................... vi

CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI ........................................................................ 1

1.1 Đặt vấn đề ................................................................................................ 1

1.2 Lý do chọn đề tài ..................................................................................... 1

1.3 Mục đích .................................................................................................. 1

1.4 Yêu cầu .................................................................................................... 1

CHƯƠNG 2:TỔNG QUAN VỀ MẠCH ĐỒNG HỒ HIỂN THỊ THỜI GIAN

THỰC .......................................................................................................................... 2

2.1 Sơ đồ khối mạch mạch đồng hồ thời gian thực ..................................... 2

2.2 Danh sách linh kiện trong mạch ........................................................... 2

CHƯƠNG 3: KHÁI QUÁT VỀ CÁC IC SỬ DỤNG TRONG MẠCH ................ 3

3.1 IC thời gian thực DS1307 ....................................................................... 3

3.2 IC VĐK Atmega16 ................................................................................. 4

3.2.1 Giới thiệu ........................................................................................ 4

3.2.2 Sơ đồ chân của Atmega16 ............................................................ 5

3.3 Led 7 đoạn ............................................................................................... 6

3.3.1 Giới thiệu ........................................................................................ 6

3.3.2 Sơ đồ chân của Led 7 đoạn ........................................................... 6

3.4 CẤU TẠO VÀ NGHUYÊN LÝ HOẠT ĐỘNG ................................... 7

3.4.1 Cấu tạo của led 7 đoạn .................................................................. 7

CHƯƠNG 4: SƠ ĐỒ NGUYÊN LÝ VÀ SƠ ĐỒ MẠCH IN CỦA MẠCH ĐỒNG

HỒ HIỂN THỊ THỜI GIAN THỰC .........................................................................9

Page 10: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh

4.1 Sơ đồ nguyên lý đồng hồ thời gian thực ............................................... 9

4.1.1 Sơ đồ nguyên lý .............................................................................. 9

4.1.2 Khối vi điều khiển(Atmega16) ..................................................... 9

4.1.3 Khối nút nhấn .............................................................................. 10

4.1.4 Khối thời gian thực .......................................................................... 11

4.1.5 Khối hiển thị led 7 đoạn .................................................................. 12

4.1.6 Khối nguồn ................................................................................... 13

4.2 Sơ đồ mạch in mạch đồng hồ hiển thị thời gian thực ........................ 14

PHỤ LỤC .....................................................................................................................17

1. Các phần mềm dùng trong đồ án ........................................................ 17

2. Code chương trình cho vi điều khiển .................................................. 17

TÀI LIỆU THAM KHẢO ............................................................................................33

Page 11: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 1

CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI

1.1 Đặt vấn đề

Hiện nay với sự phát triển của vi điều khiển. Các hệ thống cần thiết đều

được hoạt động một cách tự động. Đơn giản như đồng hồ để xem giờ, rất cần

thiết với tất cả chúng ta trong cuộc sông hằng ngày

Vấn đề đồng hồ là không thể thiếu đối với chúng ta, giúp mọi người chủ

động hơn về thời gian của mình. Sẽ tiện lợi trong việc sắp xếp công việc hay các

cuộc hẹn với đối tác trong công việc. Chính vì thế chúng em thiết kế mạch mạch

đồng hồ hiển thị thời gian thực, rất hữu ích cho tất cả chúng ta.

1.2 Lý do chọn đề tài

Đây là vấn đề thực tế ,được ứng dụng hằng ngày trong mỗi chúng ta

Nhằm để củng cố kiến tức lập trình vi điều khiển vừa mới học và rèn luyện

khả năng học hỏi nên chúng em đã chọn đề tài này.

1.3 Mục đích

Đồng hồ hiển thị giờ và ngày tháng năm

Đồng hồ có khả năng chỉnh lại giờ, ngày tháng năm và có thể cài đặc the về

báo thức.

1.4 Yêu cầu

Hệ thống làm việc ổn định.

Có khả năng đưa mô hình vào ứng dụng trong thực tế.

Page 12: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 2

CHƯƠNG 2:TỔNG QUAN VỀ MẠCH ĐỒNG HỒ HIỂN THỊ THỜI GIAN THỰC

2.1 Sơ đồ khối mạch mạch đồng hồ thời gian thực

Hình 2.1 Sơ đồ khối mạch đồng hồ hiển thị thời gian thực

2.2 Danh sách linh kiện trong mạch Chuông báo thức

Pin CR2032 3v

6 led 7 đoạn-A1

IC Atmega16

DS1307

Trở 4k7 ,220,330

Thạch anh

Diode 1N4007

Nút nhấn 2 chân

C1815

Tụ 1nF

Led đơn

Domino 2 chân

Led 7 đoạn

Khối Vi điều

khiển

(Atmega16)

DS1307 Chuông báo

thức

Khối Nguồn Nút nhấn

Page 13: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 3

CHƯƠNG 3: KHÁI QUÁT VỀ CÁC IC SỬ DỤNG TRONG MẠCH

3.1 IC thời gian thực DS1307

Hình 3.1 IC Thời gian thực DS1307 DS1307 là chip thời gian thực hay RTC (Read time clock), thời gian thực ở đây

là tính chính xác về thời gian tuyệt đối cho thời gian mà con người đang sử dụng: Thứ,

ngày, tháng, năm, giờ, phút, giây. Thời gian được lưu trữ trong DS1307 cho đến năm

2100.

DS1307 được chế tạo bởi Dallas Semiconductor, chip có cấu tạo bên ngoại khá

đơn giản. Chip DS1307 có 8 chân và chúng ta hay dùng là dạng Dip và thứ tự các chân

nó được mô tả như hình.

Chip DS1307 có 7 thanh ghi 8 bit mỗi thanh ghi này chứa: Thứ, ngày, tháng,

năm, giờ, phút, giây. DS1307 được đọc thông qua chuẩn truyền thông I2C nên do đó

để đọc được và ghi từ DS1307 thông qua chuẩn truyền thông này.

Bảng 3.1 Chức năng các chân IC DS1307:

Chân Tên Chức năng

1 X1 Kết nối đến thạch anh 32.768Khz làm nguồn dao động cho chip

2 X2

3 Vbat Kết nối đến cực dương của Pin dự phòng, có điện áp tiêu chuẩn

khoảng 3V

4 GND Kết nối đến mass

5 SDA Chân dữ liệu khi kết nối đến bus I2C

6 SCL Chân nhận xung clock đồng bộ khi kết nối bus I2C

7 SQW/OUT Ngõ xuất xung vuông, tần số có thể lập trình để thay đổi từ 1Hz,

4Khz, 8 Khz, 32 Khz

Page 14: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 4

8 VCC Nguồn cấp chính, khoảng 5VDC

3.2 IC VĐK Atmega16

3.2.1 Giới thiệu

Atmega16 là một họ vi điều khiển do hãng Atmel sản xuất (Atmel cũng là nhà

sản xuất dòng vi điều khiển 89C51 mà có thể bạn đã từng nghe đến). AVR là chip vi

điều khiển 8 bits với cấu trúc tập lệnh đơn giản hóa-RISC(Reduced Instruction Set

Computer), một kiểu cấu trúc đang thể hiện ưu thế trong các bộ xử lí.

Vi điều khiển Atmega16 hiệu suất cao, công suất thấp Atmel 8-bit AVR

RISC dựa trên kết hợp 16KB bộ nhớ flash có thể lập trình, 1KB SRAM, 512B

EEPROM, một 10-bit A / D chuyển đổi 8-kênh, và một giao diện JTAG cho on-chip

gỡ lỗi. Thiết bị hỗ trợ thông lượng của 16 MIPS ở 16 MHz và hoạt động giữa 4,5-5,5

volt.

Vi điều khiển Atmega16 thực hiện hướng dẫn trong một chu kỳ đồng hồ duy nhất, các thiết bị đạt được thông lượng gần 1 MIPS mỗi MHz, cân bằng điện năng tiêu thụ và tốc độ xử lý.

AVR Atmega16 so với các chip vi điều khiển 8 bits khác, AVR có nhiều đặc tính hơn hẳn, hơn cả trong tính ứng dụng (dễ sử dụng) và đặc biệt là về chức năng:

Gần như chúng ta không cần mắc thêm bất kỳ linh kiện phụ nào khi sử dụng AVR, thậm chí không cần nguồn tạo xung clock cho chip (thường là các khối thạch anh).

Thiết bị lập trình (mạch nạp) cho AVR rất đơn giản, có loại mạch nạp chỉ cần vài điện trở là có thể làm được. một số AVR còn hỗ trợ lập trình on – chip bằng bootloader không cần mạch nạp…

Bên cạnh lập trình bằng ASM, cấu trúc AVR được thiết kế tương thích C. Nguồn tài nguyên về source code, tài liệu, application note…rất lớn trên

internet.

Hình 3.2 IC Atmega 16

Page 15: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 5

3.2.2 Sơ đồ chân của Atmega16

Sơ đồ chân Atmega16 gồm có 40 chân:

- Chân 1 đến 8 : Cổng nhập xuất dữ liệu song song B ( PORTB ) nó có thể đc sử dụng các chức năng đặc biệt thay vì nhập xuất dữ liệu.

- Chân 9 : RESET để đưa chip về trạng thái ban đầu.

- Chân 10 : VCC cấp nguồn nuôi cho vi điều khiển.

- Chân 11,31 : GND 2 chân này đc nối với nhau và nối đất.

- Chân 12,13 : 2 chân XTAL2 và XTAL1 dùng để đưa xung nhịp từ bên ngoài vào chip.

- Chân 14 đến 21 : Cổng nhập xuất dữ liệu song song D ( PORTD ) nó có thể đc sử dụng các chức năng đặc biệt thay vì nhập xuất dữ liệu.

- Chân 22 đến 29 : Cổng nhập xuất dữ liệu song song C ( PORTC ) nó có thể đc sử dụng các chức năng đặc biệt thay vì nhập xuất dữ liệu.

- Chân 30 : AVCC cấp điện áp so sánh cho bộ ADC.

- Chân 32 : AREF điện áp so sánh tín hiệu vào ADC.

- Chân 33 đến 40 : Cổng vào ra dữ liệu song song A ( PORTA ) ngoài ra nó còn đc tích hợp bộ chuyển đổi tín hiệu tương tự sang tín hiệu số ADC ( analog to digital converter 2, Vào ra của vi điều khiển.

- PORTA ( PA7 … PA0 ) : là các chân số 33 đến 40. Là cổng vào ra song song 8 bít khi không dùng ở chế độ ADC. Bên trong có sẵn các điện trở kéo, khi PORTA là output thì các điện trở kéo ko hoạt động , khi PORTA là input thì các điện trở kéo đc kích hoạt.

-PORTB ( PB7 ... PB0 ) : là các chân số 1 đến 8. Nó tương tự như PORTA khi sử dụng vào ra song song. Ngoài ra các chân của PORTB còn có các chức năng đặt biệt sẽ đc nhắc đến sau.

- PORTC ( PC7 ... PC0 ) : là các chân 22 đến 30. Cũng giống PORTA và PORTB khi là cổng vào ra song song. Nếu giao tiếp JTAG đc bật, các trở treo ở các chân PC5(TDI), PC3(TMS), PC2(TCK) sẽ hoạt động khi sự kiện reset sảy ra. Chức năng giao tiếp JTAG và 1 số chức năng đặc biệt khác sẽ đc nghiên cứu sau.

-PORTD ( PD7 ... PD0 ) : là các chân 13 đến 21. Cũng là 1 cổng vào ra song song giống các PORT khác, ngoài ra nó còn có 1 số tính năng đặc biệt sẽ đc nghiên cứu sau. 3, mạch cấp nguồn nuôi cho vi điều khiển 4, mạch cấp giao động ngoài cho vi điều khiển dùng thạch anh 5, Mạch nạp avr910 usb.

Page 16: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 6

3.3 Led 7 đoạn

3.3.1 Giới thiệu

Trong các thiết bị, để báo trạng thái hoạt động của thiết bị đó cho người sử dụng

với thông số chỉ là các dãy số đơn thuần, thường người ta sử dụng "led 7 đoạn". Led 7

đoạn được sử dụng khi các dãy số không đòi hỏi quá phức tạp, chỉ cần hiện thị số là

đủ, chẳng hạn led 7 đoạn được dùng để hiển thị nhiệt độ phòng, trong các đồng hồ treo

tường bằng điện tử, hiển thị số lượng sản phẩm được kiểm tra sau một công đoạn nào

đó...

Hình 3.3 Led 7 đoạn

3.3.2 Sơ đồ chân của Led 7 đoạn

Bảng 3.2 Bảng trạng thái của led 7 đoạn

Page 17: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 7

Hình 3.4 Sơ đồ chân LED 7 đoạn

3.4 CẤU TẠO VÀ NGHUYÊN LÝ HOẠT ĐỘNG

3.4.1 Cấu tạo của led 7 đoạn

Led 7 đoạn có cấu tạo bao gồm 7 led đơn có dạng thanh xếp theo hình dạng số 8 và có thêm một led đơn hình tròn nhỏ thể hiện dấu chấm tròn ở góc dưới, bên phải của led 7 đoạn 8 led đơn trên led 7 đoạn có Anode(cực +) hoặc Cathode(cực -) được nối chung với nhau vào một điểm, được đưa chân ra ngoài để kết nối với mạch điện. 8 cực còn lại trên mỗi led đơn được đưa thành 8 chân riêng, cũng được đưa ra ngoài để kết nối với mạch điện. Nếu led 7 đoạn có Anode(cực +) chung, đầu chung này được nối với +Vcc, các chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 0. Nếu led 7 đoạn có Cathode(cực -) chung, đầu chung này được nối xuống Ground (hay Mass), các chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 1

Page 18: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 8

Hình 3.5. Cách mắc LED 7 đoạn Anode chung và Cathode chung

Vì led 7 đoạn chứa bên trong nó các led đơn, do đó khi kết nối cần đảm bảo dòng qua mỗi led đơn trong khoảng 10mA-20mA để bảo vệ led. Nếu kết nối với nguồn 5V có thể hạn dòng bằng điện trở 330Ω trước các chân nhận tín hiệu điều khiển.

Page 19: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 9

CHƯƠNG 4: SƠ ĐỒ NGUYÊN LÝ VÀ SƠ ĐỒ MẠCH IN CỦA MẠCH ĐỒNG HỒ HIỂN THỊ THỜI GIAN THỰC

4.1 Sơ đồ nguyên lý đồng hồ thời gian thực

4.1.1 Sơ đồ nguyên lý

Hình 4.1 Sơ đồ nguyên lý chung

4.1.2 Khối vi điều khiển(Atmega16)

Các chân 1-8 thuộc PORTB của vi điều khiển, trong đó từ chân 1-3 được nối với khối

nút nhấn để tao tín hiệu và điều chỉnh thông số trên led 7 đoạn.

Các chân 14-21 thuộc PORTD của vi điều khiển là ngõ ra của led 7 đoạn .Vi điều

khiển muốn hoạt động được cần có một nguồn tạo dao động. Trong các mạch vi điều

khiển thường sử dụng thạch anh để tạo dao động.

Để tăng độ ổn định tần số, người ta dùng thêm 2 tụ nhỏ C4, C5 (33pF x2), tụ bù nhiệt

ổn tần.

Khi không có mạch dao động thạch anh vô tình bằng cách nào đó bị kéo lên mức 1

(5V) thì vi điều khiển sẽ không hoạt động, vậy nên khi mạch không chạy nên kiểm tra

xem mạch dao động thạch anh đã đúng hay chưa.

Page 20: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 10

Hình 4.2 Khối vi điều khiển

4.1.3 Khối nút nhấn

Hình 4.3 Khối nút nhấn

Sử đụng các nút nhấn để tạo tín hiệu vào để điều chỉnh các thông số trên LED 7 đoạn

các nút nhấn lần lượt là K0, K1, K2, K3, K4, K5 được kết nối với các chân 1 2 3 4 5 6

thuộc PORTB của vi điều khiển.

K0 (Reset): trở về trạng thái cài đặt mặc định.

Page 21: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 11

K1: chuyển chế độ hiển thị sang ngày tháng năm.

K2 (MOD): điều chỉnh những thông số mà ta muốn thay đổi trên led 7 đoạn

K3 (UP): tăng giá trị của thông số trên led 7 đoạn

K4 (DW): giảm giá trị thông số trên led 7 đoạn

K5: cài đặt thời gian báo thức

4.1.4 Khối thời gian thực

VCC,GND: nguồn 1 chiều được cung cấp tới các chân này. VCC là đầu vào 5V. Khi

5V được cung cấp thì thiết bị đó có thể truy cập hoàn chỉnh và dữ liệu có thể đọc và

viết.

khi pin 3V được kết nối tới thiết và vcc nhỏ hơn 1.25Vbat thì quá trình đọc và viết

không được thực thi, tuy nhiên chức năng timekeeping không bị ảnh hưởng bởi điện

áp vào thấp khi VCC nhỏ hơn Vbat thì RAM và time keeper sẽ được ngắt tới nguồn

cung cấp( 3-5VDC).

Hình 4.4 Khối thời gian thực

Vbat: đầu vào pin cho bất kỳ một chuẩn pin 3V. Điện áp pin phải giữ trong khoảng

2.5-3V để đảm bảo cho thiết bị hoạt động tốt.

SCL(serial clock input): SCL được xử dụng để đồng bộ sự chuyển dữ liệu trên đường

dây nối tiếp.

SDA(serial data input/output): là chân ra vào cho 2 đường dây nối tiếp. chân SDA

được thiết kế theo kiêu cực máng hở, vì vậy phải có điện trở R10=10K và R11=10K

kéo lên trong khi hoạt động.

Page 22: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 12

X1,X2: được nối với thạch anh với tần số 32,768 kHz. là một mạch tạo dao động

ngoài, để hoạt động ổn định ta nói thêm 2 tụ C1,C2 với giá trị 33pF

cũng có DS1307 với bộ dao động trong tần số 32,768kHz, với cấu hình này thì chân

X1 sẽ được nối tín hiệu dao động còn chân X2 thì để hở.

4.1.5 Khối hiển thị led 7 đoạn

Hình 4.5 Khối led 7 đoạn

Led 7 đoạn và giao tiếp với vi điều khiển(Atmega16):

Ngõ nhận tín hiệu điều khiển của led 7 đoạn có 8 đường, vì vậy có thể dùng 1 Port nào đó của Vi điều khiển để điều khiển led 7 đoạn. Như vậy led 7 đoạn nhận một dữ liệu 8 bit từ Vi điều khiển để điều khiển hoạt động sáng tắt của từng led led đơn trong nó, dữ liệu được xuất ra điều khiển led 7 đoạn thường được gọi là "mã hiển thị led 7 đoạn". Có hai kiểu mã hiển thị led 7 đoạn: mã dành cho led 7 đoạn có Anode(cực +) chung và mã dành cho led 7 đoạn có Cathode(cực -) chung. Chẳng hạn, để hiện thị số 1 cần làm cho các led ở vị trí b và c sáng, nếu sử dụng led 7 đoạn có Anode chung thì phải đặt vào hai chân b và c điện áp là 0V(mức 0) các chân còn lại được đặt điện áp là 5V(mức 1), nếu sử dụng led 7 đoạn có Cathode chung thì điện áp(hay mức logic) hoàn toàn ngược lại, tức là phải đặt vào chân b và c điện áp là 5V(mức 1).

Nếu kết nối mỗi một Port của Vi điều khiển với 1 led 7 đoạn thì tối đa kết nối được 4 led 7 đoạn. Mặt khác nếu kết nối như trên sẽ hạn chế khả năng thực hiện các công việc khác của Vi điều khiển. Cho nên cần phải kết nối, điều khiển nhiều led 7 đoạn với số lượng chân điều khiển từ Vi điều khiển càng ít càng tốt. Có hai giải pháp: một là sử dụng các IC chuyên dụng cho việc hiện thị led 7 đoạn, hai là kết nối nhiều led 7 đoạn vào cùng một đường xuất tính hiệu hiển thị.

Page 23: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 13

Mắt người có đặc điểm sinh lí là chỉ thu nhận 24 hình/giây để tổng hợp các hình ảnh về thế giới xung quanh. Nếu một tín hiệu ánh sáng có chu kì sáng tắt hơn 24 lần trong 1 giây, mắt người luôn cảm nhận đó là một nguồn sáng liên tục. Để minh họa cho điều này, bạn hãy lấy các chương trình đã thực hiện với led đơn và làm ngắn thời gian delay lại, đến một giá trị nào đó bạn sẽ thấy các led đều sáng liên tục. Để kết nối nhiều led 7 đoạn vào vi điều khiển thực hiện như sau: nối tất cả các chân nhận tín hiệu của tất cả các led 7 đoạn (chân abcdefgh) cần sử dụng vào cùng 1 Port, trong ví dụ, 8 led 7 đoạn có các chân nhận tín hiệu cùng được được nối với P0. Dùng các ngõ ra còn lại của Vi điều khiển điều khiển on/off cho led 7 đoạn, mỗi ngõ ra điều khiển ON/OFF cho 1 led 7 đoạn,(ON: led 7 đoạn được cấp nguồn để hiển thị, OFF: led 7 đoạn bị ngắt nguồn nên không hiển thị được).

4.1.6 Khối nguồn

Do cuộn hút của chuông điện sử dụng nguồn điện xoay chiều 220VAC nên ta

dụng Tranzitor điều khiển cuộn hút relay hoặc công tắc tơ, relay, OPTO và công tắc tơ

có tác dụng cách li về điện với mạch động lực và nó điều khiển đóng ngắt chuông

điện.

Hình 4.6 Khối nguồn 5v

Ở hình vẽ trên ta sử dụng Trans C1815 để kích dòng cho Relay đóng tiếp điểm thường

mở, nguyên lý hoạt động như sau:

– Khi “Tin hieu” đưa vào OPTO là mức 0 (Tức =0V) thì Q2 không dẫn do không có

dòng IBE >> Relay không làm việc.

Page 24: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 14

– Khi “Tin hieu” đưa vào OPTO là mức 1 (Tức =5V) thì sẽ làm led trong OPTO sáng

kích tín hiệu cho photo trans thông mạch, lúc này dòng điện qua R1 hạn dòng làm cho

Q2 dẫn thông lúc này ta có dòng Ice là dòng điện chạy qua cuộn dây >> Q2 >> MASS,

Relay( 12V) đóng tiếp điểm thường mở (điều khiển thiết bị nào đó).

– Diot D2 trong mạch có tác dụng chống lại dòng điện cảm ứng do cuộn đây sinh ra

làm hỏng tranzitor đồng thời OPTO cũng cách ly nguồn mạch động lực để tránh nhiễu

điện. Relay dùng để điều khiển chuông điện 220V

Mục đích của R1 là tạo dòng vào cực B của trans tới ngưỡng bão hòa để trans hoạt

động như 1 chiếc khóa có điều kiện.

4.2 Sơ đồ mạch in mạch đồng hồ hiển thị thời gian thực

Hình 4.7 sơ đồ layout

Page 25: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 15

Hình 4.8 sơ đồ mạch in

Hình 4.9 Hình ảnh thực tế của mạch đồng thời gian thực

Page 26: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 16

CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ

1.Kết luận

- Qua các bước giới thiệu, thiết kế, đề tài của em xin được phép dừng lại ở đây.

Trong quá trình nghiên cứu, thiết kế chúng em đã vận dụng những kiến thức

chuyên môn, nhằm hoàn thành yêu cầu đặt ra. Qua đó chúng em được dịp cũng

cố lại kiến thức cơ bản chuyên ngành. Trên cơ sở đó chúng em có thể đánh giá

lại những gì mình có được sau khi học.

- Trong thời gian thực hiện đề tài với sự chỉ bảo và giúp đỡ tận tình của Thầy

hướng dẫn đến nay mạch đồng hồ hiển thị thời gian thực đã hoàn thành. Chúng

em đã cố gắng vận dụng những kiến thức đã học để giải quyết những yêu cầu.

Tuy nhiên do thời gian và trình độ chuyên môn có hạn nên đồ án còn tồn tại

những thiếu sót và hạn chế. Chúng em rất mong nhận được những ý kiến và góp

ý của quý thầy cô trong khoa về ý tưởng thiết kế cũng như mô hình sản phẩm

của chúng em để sản phẩm được hoàn thiện hơn. Cuối cùng chúng em xin được

cảm ơn quý thầy cô đã tạo điều kiện tốt nhất giúp đỡ chúng em hoàn thành đề

tài.

2.Kiến nghị

- Trong sự phát triển mạnh mẽ của công nghệ điện tử ngày nay và những ứng

dụng của điện tử vào đời sống cũng như phục vụ giải trí ngày càng được chú

trọng. Em đi đến đề tài này mong muốn và cũng là sự đam mê của em muốn tạo

ra những sản phẩm ứng dụng trong thực tế. Do kiến thức còn hạn hẹp nên đề tài

của em còn nhiều thiếu sót mong quý thầy cô bỏ qua.

Page 27: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 17

PHỤ LỤC

1. Các phần mềm dùng trong đồ án

Proteus 8.6 Professional

WinAVR

2. Code chương trình cho vi điều khiển #include <avr/io.h>

#include <avr/interrupt.h>

#include <stdio.h>

#include <util/delay.h>

#include "myDS1307RTC.h"

#define AREF_MODE 0

#define AVCC_MODE (1<<REFS0)

#define INT_MODE (1<<REFS1)|<(1<<REFS0)

#define ADC_VREF_TYPE AREF_MODE

int chedo=0;

int chedochay=0;

int cheDoChinh = 0;

int thoigian=0;

unsigned char font[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};

uint8_t hourSetup = 11, minuteSetup = 2, secondSetup = 30;

volatile uint8_t Second,Minute, Hour,

Day,Date,Month,Year,Mode=0,AP=1;

//Mode: chon che do 12h hoac 24h,Mode nam o thanh ghi 6 cua thanh ghi HOURS,

//Mode = 1: 12h, Mode=0:24h

//AP: bien chi AM hoac PM trong mode 12h, AP nam o bit thu 5 cua thanh ghi

HOURS

//AP=1:PM, AP=0:AM

Page 28: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 18

volatile uint8_t tData[7], Time_count=0;

char dis[5];

//doi BCD sang thap phan va nguoc lai//

uint8_t BCD2Dec(uint8_t BCD)

{

uint8_t L,H;

L=BCD&0x0f;

H=(BCD>>4)*10;

return(H+L);

}

uint8_t Dec2BCD(uint8_t Dec)

{

uint8_t L,H;

L=Dec%10;

H=(Dec/10)<<4;

return(H+L);

}

void quetled_setup()

{

PORTB = font[hourSetup/10]; PORTC &= ~_BV(7);

_delay_us(2500); PORTC |= _BV(7);

PORTB = font[hourSetup%10]; PORTC &= ~_BV(6);

_delay_us(2500); PORTC |= _BV(6);

PORTB = font[minuteSetup/10]; PORTC &= ~_BV(5);

_delay_us(2500); PORTC |= _BV(5);

Page 29: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 19

PORTB = font[minuteSetup%10]; PORTC &= ~_BV(4);

_delay_us(2500); PORTC |= _BV(4);

PORTB = font[secondSetup/10]; PORTC &= ~_BV(3);

_delay_us(2500); PORTC |= _BV(3);

PORTB = font[secondSetup%10]; PORTC &= ~_BV(2);

_delay_us(2500); PORTC |= _BV(2);

}

void quetled()

{

////lay du lieu ds1307////

Second = BCD2Dec(tData[0]&0x7F);

Minute = BCD2Dec(tData[1]);

if(Mode != 0) Hour = BCD2Dec(tData[2] & 0x1F);

else Hour = BCD2Dec(tData[2] & 0x3F);

Date =BCD2Dec(tData[4]);

Month =BCD2Dec(tData[5]);

Year =BCD2Dec(tData[6]);

////bat dau quet led////

if(chedochay==0)

{

PORTB = font[Hour/10]; PORTC &= ~_BV(7);

_delay_us(2500); PORTC |= _BV(7);

PORTB = font[Hour%10]; PORTC &= ~_BV(6);

_delay_us(2500); PORTC |= _BV(6);

PORTB = font[Minute/10]; PORTC &= ~_BV(5);

_delay_us(2500); PORTC |= _BV(5);

Page 30: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 20

PORTB = font[Minute%10]; PORTC &= ~_BV(4);

_delay_us(2500); PORTC |= _BV(4);

PORTB = font[Second/10]; PORTC &= ~_BV(3);

_delay_us(2500); PORTC |= _BV(3);

PORTB = font[Second%10]; PORTC &= ~_BV(2);

_delay_us(2500); PORTC |= _BV(2);

}

if(chedochay==1)

{

PORTB = font[Date/10]; PORTC &= ~_BV(7);

_delay_us(2500); PORTC |= _BV(7);

PORTB = font[Date%10]; PORTC &= ~_BV(6);

_delay_us(2500); PORTC |= _BV(6);

PORTB = font[Month/10]; PORTC &= ~_BV(5);

_delay_us(2500); PORTC |= _BV(5);

PORTB = font[Month%10]; PORTC &= ~_BV(4);

_delay_us(2500); PORTC |= _BV(4);

PORTB = font[Year/10]; PORTC &= ~_BV(3);

_delay_us(2500); PORTC |= _BV(3);

PORTB = font[Year%10]; PORTC &= ~_BV(2);

_delay_us(2500); PORTC |= _BV(2);

}

if(chedochay==2)

{

quetled_setup();

}

}

void chinhBaoThuc()

{

Page 31: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 21

while(1) {

quetled_setup();

if(cheDoChinh == 0) {

if(bit_is_clear(PIND,PD2)) {

hourSetup++;

if(hourSetup > 24) {

hourSetup = 0;

}

quetled_setup();

_delay_ms(300);

}

if(bit_is_clear(PIND,PD3)) {

hourSetup--;

if(hourSetup < 0) {

hourSetup = 24;

}

quetled_setup();

_delay_ms(300);

}

}

if(cheDoChinh == 1) {

if(bit_is_clear(PIND,PD2)) {

minuteSetup++;

if(minuteSetup >= 60) {

Page 32: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 22

minuteSetup = 0;

}

quetled_setup();

_delay_ms(300);

}

if(bit_is_clear(PIND,PD3)) {

minuteSetup--;

if(minuteSetup <= 0) {

minuteSetup = 59;

}

quetled_setup();

_delay_ms(300);

}

}

if(cheDoChinh == 2) {

if(bit_is_clear(PIND,PD2)) {

secondSetup++;

if(secondSetup >= 60) {

secondSetup = 0;

}

quetled_setup();

_delay_ms(300);

}

if(bit_is_clear(PIND,PD3)) {

secondSetup--;

if(secondSetup <= 0) {

Page 33: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 23

secondSetup = 59;

}

quetled_setup();

_delay_ms(300);

}

}

if(bit_is_clear(PIND,PD4)) {

cheDoChinh++;

if(cheDoChinh >= 3) {

cheDoChinh=0;

chedochay=0;

chedo = 0;

break;

}

while(bit_is_clear(PIND,PD4));

}

if(bit_is_clear(PIND,PD0)) {

cheDoChinh=0;

chedochay=0;

chedo = 0;

break;

}

}

}

int main(void){

Page 34: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 24

ADCSRA=(1<<ADEN)|(1<<ADPS2)|(1<<ADPS0);

ADMUX=ADC_VREF_TYPE;

DDRD=0X00;////ngo vao nut nhat

DDRA=0xff;////ngo vao cam bien nhiet do

DDRB=0xff;////ngo xuat ma 7 doan

DDRC=0xff;////ngo quet led

PORTA &= ~_BV(0);

TCCR0=(1<<CS02)|(0<<CS01)|(1<<CS00);

TIMSK=(1<<TOIE0);

sei();

TWI_Init();

_delay_ms(1);

TWI_DS1307_wadr(0x00);

_delay_ms(1);

TWI_DS1307_rblock(tData,7);

quetled();

while(1);

{

quetled();

}

Page 35: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 25

}

ISR (TIMER0_OVF_vect)

{

quetled();

if(chedo==0){

Time_count++;

if(Time_count>=10)

{

TWI_DS1307_wadr(0x00);

_delay_us(200);

TWI_DS1307_rblock(tData,7);

Time_count=0;

}

quetled();

}

if(chedo==1)

{

while(chedo==1)

{

if(bit_is_clear(PIND,PD1))

{

while(bit_is_clear(PIND,PD1));

thoigian++;

Page 36: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 26

if(thoigian==6){

chedo=0;thoigian=0;chedochay=0;

TWI_DS1307_wblock(0x00,tData,7);

_delay_ms(1);

TWI_DS1307_wadr(0x00);

_delay_ms(1);

TWI_DS1307_rblock(tData,7);

quetled();

}

}

else

{

while(bit_is_set(PIND,PD1)){

if(thoigian==0)

{chedochay=0;

if(bit_is_clear(PIND,PD2))

{

Hour++;

if(Hour>=24)Hour=0;

tData[2]=Dec2BCD(Hour);

quetled();

_delay_ms(300);

}

else{

if(bit_is_clear(PIND,PD3))

{

Page 37: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 27

Hour--;

if(Hour<=0)Hour=23;

tData[2]=Dec2BCD(Hour);

quetled();

_delay_ms(300);

}

else{

quetled();

}

}

}

if(thoigian==1)

{chedochay=0;

if(bit_is_clear(PIND,PD2))

{

Minute++;

if(Minute>=60)Minute=0;

tData[1]=Dec2BCD(Minute);

quetled();

_delay_ms(300);

}

else{

if(bit_is_clear(PIND,PD3))

{

Minute--;

if(Minute<=0)Minute=59;

tData[1]=Dec2BCD(Minute);

Page 38: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 28

quetled();

_delay_ms(300);

}

else{

quetled();

}

}

}

if(thoigian==2)

{chedochay=0;

if(bit_is_clear(PIND,PD2))

{

Second++;

if(Second>=60)Second=0;

tData[0]=Dec2BCD(Second);

quetled();

_delay_ms(300);

}

else{

if(bit_is_clear(PIND,PD3))

{

Second--;

if(Second<=0)Second=59;

tData[0]=Dec2BCD(Second);

quetled();

_delay_ms(300);

Page 39: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 29

}

else{

quetled();

}

}

}

if(thoigian==3)

{chedochay=1;

if(bit_is_clear(PIND,PD2))

{

Date++;

if(Date>=32)Date=0;

tData[4]=Dec2BCD(Date);

quetled();

_delay_ms(300);

}

else{

if(bit_is_clear(PIND,PD3))

{

Date--;

if(Date<=0)Date=31;

tData[4]=Dec2BCD(Date);

quetled();

_delay_ms(300);

}

else{

quetled();

Page 40: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 30

}

}

}

if(thoigian==4)

{chedochay=1;

if(bit_is_clear(PIND,PD2))

{

Month++;

if(Month>=13)Month=1;

tData[5]=Dec2BCD(Month);

quetled();

_delay_ms(300);

}

else{

if(bit_is_clear(PIND,PD3))

{

Month--;

if(Month<=0)Month=12;

tData[5]=Dec2BCD(Month);

quetled();

_delay_ms(300);

}

else{

quetled();

}

}

Page 41: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 31

}

if(thoigian==5)

{

chedochay=1;

if(bit_is_clear(PIND,PD2))

{

Year++;

tData[6]=Dec2BCD(Year);

quetled();

_delay_ms(300);

}

else{

if(bit_is_clear(PIND,PD3))

{

Year--;

tData[6]=Dec2BCD(Year);

quetled();

_delay_ms(300);

}

else{

quetled();

}

}

}

}

}

Page 42: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh 32

}

}

if(bit_is_clear(PIND,PD0)) {

chedochay++;

if(chedochay==3)chedochay=0;

while(bit_is_clear(PIND,PD0));

}

if(bit_is_clear(PIND,PD1)) {

chedo++;

if(chedo==2)chedo=0;

while(bit_is_clear(PIND,PD1));

}

if(bit_is_clear(PIND,PD4)) {

while(bit_is_clear(PIND,PD4));

chinhBaoThuc();

while(bit_is_clear(PIND,PD4));

}

if(hourSetup == Hour && minuteSetup == Minute && secondSetup ==

Second) {

PORTA |= _BV(0);

}

if(hourSetup == Hour && minuteSetup == Minute && Second ==

secondSetup+10) {

PORTA &= ~_BV(0);

}

}

Page 43: VI ĐIỀU KHIỂN - ddt.hitu.edu.vn

ĐỒ ÁN: VI ĐIỀU KHIÊN

GVHD: Nguyễn Kim Suyên SVTH: Cao Văn Ngọc Hồ Văn Ninh

33

TÀI LIỆU THAM KHẢO

[1]. Lâm Quang Chuyên, 2012, Giáo trình vi điều khiển, Trường Cao đẳng Công

thương Tp. HCM.

[2]. Lâm Quang Chuyên, 2018, Giáo trình thực tập vi điều khiển, Trường Cao dẳng

Công thương Tp.HCM.

[3]. Datasheet.com.vn