Tải bản đầy đủ (.docx) (30 trang)

Hệ thống báo giờ tự động bằng loa có file code

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.39 MB, 30 trang )

Tiểu luận Hệ thống nhúng

TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP
KHOA CƠ KHÍ
----****----

HỆ THỐNG NHÚNG

MỤC LỤC
LỜI MỞ ĐẦU...........................................................................................................4
1


Tiểu luận Hệ thống nhúng

CHƯƠNG 1 GIỚI THIỆU YÊU CẦU – GIỚI HẠN CỦA ĐỀ TÀI.......................5
1.1

Giới thiệu.....................................................................................................5

1.1.1

Chức năng của hệ thống........................................................................5

1.1.2

Phân loại................................................................................................5

1.1.3

Yêu cầu của hệ thống............................................................................7



1.2

Giới hạn.......................................................................................................8

CHƯƠNG 2 THIẾT KẾ..........................................................................................9
2.1

Giới thiệu.....................................................................................................9

2.2

Thiết kế sơ đồ khối.......................................................................................9

2.2.1

Thiết kế sơ đồ nguyên lý.....................................................................10

2.2.2

Lưu đồ và chương trình.......................................................................18

CHƯƠNG 3 KẾT QUẢ THỰC HIỆN VÀ KẾT LUẬN.......................................29
3.1

Ưu, nhược điểm của đề tài.........................................................................29

3.2

Kết luận......................................................................................................29


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

DANH SÁCH HÌNH ẢNH
Hình 2.1 : Sơ đồ khối mạch đếm sản phẩm...............................................................9
Hình 2.2: Khối xử lý................................................................................................11
Hình 2.3: Kí hiệu và cấu tạo led 7 đoạn..................................................................12
Hình 2.4: Hình ảnh led 7 đoạn................................................................................12
Hình 2.5: Mạch hiển thi led 7 đoạn sử dụng IC74HC595 mở rộng chân................13
Hình 2.6: Khối hiển thị led 7 đoạn..........................................................................13
Hình 2.7:Cấu tạo và kí hiệu led matrix...................................................................14
Hình 2.8: Hình ảnh led matrix................................................................................15
Hình 2.9: Bộ mở rộng chân dùng cho led matrix....................................................15
Hình 2.10: Bộ khuếch đại dịng...............................................................................16
Hình 2.11: Sơ đồ mạch bộ đếm thời gian thực........................................................16
Hình 2.12: Sơ đồ nguyên lý của hệ thống................................................................18
Hình 2.13: Lưu đồ trình tự điều khiển của hệ thống...............................................19
2


Tiểu luận Hệ thống nhúng

3


Tiểu luận Hệ thống nhúng

LỜI MỞ ĐẦU
Ngày nay, với những ứng dụng của khoa học kỹ thuật tiên tiến, thế giới của chúng
ta đã và đang ngày một thay đổi, văn minh và hiện đại hơn. Trong đó, sự phát triển

của kỹ thuật tự động hóa đã tạo ra hàng loạt những thiết bị với đặc điểm nổi bật như
độ chính xác, bảo mật cao, tốc độ nhanh, gọn nhẹ là những yếu tố rất cần thiết cho
sự tiện lợi trong cuộc sống.Trong lĩnh vực tự động hóa hiện nay kĩ thuật vi điều
khiển đã trở nên quen thuộc, hầu hết các dây truyền tự động lớn và các sản phẩm
dân dụng ta đều thấy sự xuất hiện của vi điều khiển. Càng ngày, các họ của vi điều
khiển mới càng được các nhà sản xuất tích hợp thêm nhiều tính năng với các bộ
ngoại vi được tích hợp ngay trên chip, cùng với khả năng xử lý nhiều hoạt
động phức tạp.
Thành quả của cách mạng 4.0 là sự sản sinh ra các thiết bị cơng nghệ có tính kết
nối cao. Cơng nghệ Trí tuệ nhân tạo, Internet of Things...là những nền tảng quan
trọng cung cấp các giải pháp xử lý công việc tiết kiệm thời gian, công sức.
Sự kết hợp của các thiết bị trong một giải pháp đồng bộ tạo nên xu hướng sống
mới từ nhà thông minh smarthome. Theo đó, việc quản lý và điều khiển ngơi nhà, từ
hệ thống chiếu sáng, các thiết bị điện tử, hệ thống an ninh...đều được thực hiện
không dây, kết nối qua internet. Các thao tác như tắt, bật đèn, TV, tăng giảm điều
hòa, kéo mở rèm cửa... được thực hiện chỉ với một cú chạm trên smartphone hay
tablet.
Đi theo xu hướng trên, chúng em cũng thiết kế “ Hệ thống báo giờ tự động bằng
loa” dựa trên nhu cầu về tính tự động về thời gian cho các cơng ty, cơ quan, trường
học được mô phỏng trong Tiểu luận môn học Hệ thống nhúng.

4


Tiểu luận Hệ thống nhúng

CHƯƠNG 1
GIỚI THIỆU YÊU CẦU – GIỚI HẠN CỦA ĐỀ TÀI
1.1 Giới thiệu
1.1.1 Chức năng của hệ thống

-

Hệ thống báo giờ tự động bằng loa ngày nay đang được ứng dụng mạnh mẽ
nhất với mức độ hoạt động tuyệt đối nhất. Những thiết bị báo giờ thơng
thường ngày nay đang được thay đổi nhiều vì tính năng hoạt động và ứng
dụng của con người hiện đại khác nhau. Bộ báo giờ phát nhạc tự động ln
có những tính năng ưu việt mà người dùng sẽ cảm nhận được khi sử dụng
thiết bị. Chuyên dùng cho hệ thống chng báo giờ văn phịng, cơng ty, với
tiêu chuẩn kỹ thuật và chất lượng cao.

-

Chức năng hệ thống của hệ thống báo loa bao gồm:
+ Có thể chọn thời gian báo chuông.
+ Hiển thị thời gian thực.
+ Hiển thị thơng số.
+Sử dụng cịi và led nháy để báo giờ.
+ Điều khiển bằng tay.

1.1.2 Phân loại
Hệ thống báo giờ tự động bằng loa hiện nay trên thị trường rất phổ biến
trong các trường học, cơ quan, đơn vị, các phân xưởng sản xuất,…. Và nó
được điều khiển bởi nhiều pháp khác nhau.Ở trong bài tiểu luận này, chúng
em đã phân loại hệ thống theo các phương pháp điều khiển. Có 3 dạng: Hệ
thống điều khiển dùng LOGO, hệ thống điều khiển dùng PLC và hệ thống
điều khiển sử dụng vi điều khiển.

a) Hệ thống dùng vi điều khiển
 Ưu điểm
-


Chi phí phần cứng tương đối thấp, linh kiện phổ biến dễ dàng tìm thấy
và mua trên thị trường.
5


Tiểu luận Hệ thống nhúng

-

Tiêu thụ điện năng thấp.

-

Tiết kiệm khơng gian.

-

Mơ phỏng và thử nghiệm đơn giàn.

-

Có thể thiết kế từng khối riêng rẽ đặc biệt có thể thay đổi linh hoạt thời
điểm vào/ra nhờ thay đổi khối giải mã

 Nhược điểm
-

Mỗi lần muốn thay đổi chương trình phải lắp đặt lại toàn bộ.


-

Tốn khá nhiều thời gian cho việc thiết kế lắp đặt.

-

Quy trình lập trình, thuật tốn tương đối phức tạp.

-

Độ bền và tin cậy không cao.

-

Sau một thởi gian dùng sẽ bị sai lệch về thởi gian thực do hệ thống bị
ảnh hường của nhiễu bên ngồi, do chương trình lập trình.

-

Khi mất điện nhiều lần dẫn đến hệ thống sẽ bị sai số vì khi mất điện các
thông số hiện thời không được lưu mà bị reset về 0 ban đầu.

b) Hệ thống điều khiển dùng logo
 Ưu điểm
-

Cơng suất tiêu thụ ít.

-


Ngơn ngữ lập trình đơn giàn.

-

Tính hộp là một modul nhỏ gon, dễ dàng đấu nối.

-

Giao tiếp người - mảy đơn giản dễ thao tác.

-

Có độ bền và độ tin cậy vận hành khá cao.

-

Dễ dành thay đổi chương trình khi cần.

-

Bào trì sửa chữa dễ dàng

 Nhược điểm
-

Giá thành khá cao.

-

khó sửa chữa thay thế các khối bị hỏng.


-

Sau khi dùng được một thời gian( 2 năm) xuất hiện sai lệch về thời gian.
Chạy khơng chính xác nữa, ngun nhân là do pin của LOGO! không bền.

-

Pin dự trữ khi mất điện thấp (từ 10 tiếng đến 30 tiếng).

6


Tiểu luận Hệ thống nhúng

c) Hệ thống điều khiển sử dụng PLC
 Ưu điểm
-

Những dây kết nối trong hệ thống giàm được 80 % nên nhỏ gọn hơn.

-

Công suất tiêu thụ ít.

-

Thời gian lắp đặt nhanh hơn.

-


Tiết kiệm khơng gian.

-

Dễ dàng thay đổi chương trình.

-

Bảo trì và sửa chữa dễ dàng.

-

Độ bền và tin cậy vận hành cao.

-

Giá thành của hệ thống giảm khi số tiếp điểm tăng.

-

Thích ứng trong môi trường khắc nghiệt như môi trường ẩm ướt như ở
nước ta, mơi trường có nhiệt độ thay đổi, điện áp dao động, tiếng ồn,oxi
hóa.

-

Chuẩn bị hoạt động nhanh.

-


Chuẩn hóa được phần cứng điều khiển.

-

Ửng dụng điều khiển trong phạm vi rộng.

-

Ngơn ngữ lập trình dễ hiểu.

-

Dễ lập trình và có thể lập trình trên máy tính thích hợp cho việc thực hiện
các lệnh tuần tự của nó.

-

Có thiết bị chống nhiễu.

-

Các modul rời cho phép thay thế hoặc thêm vào khi cần thiết.

-

Giao tiếp được với các thiết bị thơng minh khác như: máy tính, nối mạng,
các Modul mở rộng.

 Nhược điểm

-

Giá thành cao.

-

Có bao nhiêu loại đồng hồ: đồng hồ cơ, đồng hồ điện tử, ưu điểm, khuyết
điểm …

1.1.3 Yêu cầu của hệ thống
-

Sử dụng các nút nhấn để chọn thời gian báo chuông.
Hiển thị lên Led Matrix thời gian hiện thời .
Hiển thị lên Led 7 đoạn số phút còn lại.
7


Tiểu luận Hệ thống nhúng

-

Khi đến thời điểm đặt báo còi và nhấp nháy Led đơn .
Sử dụng 1 nút nhấn để tắt hệ thống báo chuông.
Sử dụng IC thời gian thực DS1307.

1.2 Giới hạn
-

Do điều kiện kinh tế cũng như thời gian nên em chỉ thiết kế hệ thống báo

giờ tự động hiển thị số giờ phút giây trên 3 Led matrix và hiện số phút còn
lại trên 1 led 7 đoạn. Hệ thống sử dụng 2 nút để điều chỉnh tăng giảm thời
gian theo nhu cầu của người vận hành. Và tất cả đều được mô phỏng trên
phần mềm proteus.

8


Tiểu luận Hệ thống nhúng

CHƯƠNG 2
THIẾT KẾ
2.1 Giới thiệu
-

Hệ thống báo giờ tự động bằng loa được thiết kế với chức năng linh hoạt
có thể chọn thời gian báo chng ( do yêu cầu nên tối đa chọn được 99
phút) , có thể hiển thị thời gian hiện thời để làm căn cứ cho việc chọn thời
gian báo chuông. Khi đến thời gian báo chuông hệ thống hiển thị và hệ
thống chuông cùng khởi động và cần sử dụng nút bấm mới tắt được hệ
thống.

2.2 Thiết kế sơ đồ khối
-

Theo u cầu của đề tài thì nhóm chúng tơi tiến hành thiết kế sơ đồ khối
của mạch báo giờ tự động như hình 2.1:

Hình 2.1 : Sơ đồ khối mạch đếm sản phẩm.
9



Tiểu luận Hệ thống nhúng

- Chức năng từng khối:
● Khối nguồn: có chức năng cấp nguồn cho tồn bộ mạch để hoạt động.
● Khối thời gian thực: có chức năng hiển thị thời gian hiện thời.
● Khối xử lí:
+Bộ đếm: có chức năng đếm xung và phạm vi đếm từ 00 đến 99.
+Bộ giải mã: có chức năng giải mã tín hiệu đưa vào từ khối đếm sang mã 7
đoạn và giải mã tín hiệu thời gian thực để hiển thị lên led matrix.
+ Bộ so sánh: có chức năng so sánh giá trị đếm với giá trị cài đặt để reset lại
mạch đếm.
● Khối hiển thị: có chức năng hiển thị kết quả đếm số phút dưới dạng số thập
phân.
● Khối báo hiệu: Có chức năng báo hiệu cho người sử dụng biết thời gian đã
hết.

2.2.1 Thiết kế sơ đồ ngun lý
a. Khối xử lí:
-

Khối xử lí có chức năng đếm, so sánh cũng như là giải mã các tín hiệu vào
chip pic. Từ đó, đưa các tín hiệu để hiển thị ra màn led và thực hiện báo
hiệu cho hệ thống.

-

Ở đây, nhóm em đã sử dụng chip pic 16F877A, do số chân của chip pic này
ít hơn số chân mà đề tài cần dùng. Cụ thể: 3 led ma trận cần 48 chân điều

khiển cho led sáng theo ý muốn chưa tính đến các chân điều khiển led 7
đoạn hay bộ xử lý thời gian thực…. trong khi chip pic 16F877A có q ít
chân để sử dụng. Vậy nên, chúng em đã sử dụng thêm IC mở rộng chân của
tên là ICHC595. Thông qua IC này mà ta có thể tối giản số chân chip xử lí
cần sử dụng.

-

Các chân thuộc PORTA(chân 5-6) và các chân PORTE (chân 2-3) của vi
xử lí, đượ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 từ 1-3 thuộc PORTA của vi xử lí là ngõ ra của Led 7 đoạn.

-

Các chân từ 1-6 thuộc PORTB, PORTD và các chân từ 1-3, 5-8 thuộc
PORTC của vi xử lí là ngõ ra của Led matrix.

-

Vi xử lí muốn hoạt động được cần có một nguồn tạo dao động. Trong các
mạch vi xử lí thường sử dụng thạch anh để tạo dao động.
10


Tiểu luận Hệ thống nhú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.

Hình 2.2: Khối xử lý

b. Khối hiển thị:
Với hệ thống này, chúng em đã sử dụng 3 led matrix để hiển thị thời gian hiện thời
và 1 led 7 đoạn 2 số để hiển thị số phút còn lại, đồng thời sử dụng 4 led đơn để
hiển thị trạng thái hoạt động của hệ thống.
 Led 7 đoạn 2 số:
-

Led 7 đoạn có chức năng hiển thị số thập phân cho biết kết quả sau khi xử
lý, trong mạch đếm sản số thời gian còn lại sẽ cho biết kết quả đếm là số
lượng phút.
Có 2 loại led 7 đoạn là anode chung và cathode chung.
Led 7 đoạn có kí hiệu, sơ đồ chân như hình sau:
11


Tiểu luận Hệ thống nhúng

Hình 2.3: Kí hiệu và cấu tạo led 7 đoạn.

Hình 2.4: Hình ảnh led 7 đoạn
-

Led 7 đoạn có cấu tạo là các led đơn được sắp xếp theo vị trí để khi sáng

hoặc tắt tạo thành 1 số thập phân từ 0 đến 9.
Dòng cho mỗi đoạn từ 5 đến 20mA và điện áp cho các led nhỏ là 2V.
Nhóm tiến hành chọn led loại anode chung.

12


Tiểu luận Hệ thống nhúng

Hình 2.5: Mạch hiển thi led 7 đoạn sử dụng IC74HC595 mở rộng chân

Hình 2.6: Khối hiển thị led 7 đoạn
- Ở đây sử dụng IC74HC595 để mở rộng chân vi xử lí, thực hiện hiển thị
thời gian số phút còn lại trên Led 7 đoạn. Các chân A0, A1,A2 được nối lần
lượt với PORTA.0, PORTA.1, PORTA.2.
- Khối hiển thị dùng để hiển thị các thông tin: phút, giây. Có 3 nút nhấn để
điều chỉnh các thời gian hiển thị trên Led 7 đoạn.

13


Tiểu luận Hệ thống nhúng

 Led matrix
- Led matrix có chức năng hiển thị số thập phân cho biết kết quả sau khi xử
lý, trong mạch đếm thời gian thực sẽ cho biết kết quả đếm là số lượng giờ
phút giây thực tế.
- Led matrix có kí hiệu, sơ đồ chân như hình sau:

Hình 2.7:Cấu tạo và kí hiệu led matrix.


14


Tiểu luận Hệ thống nhúng

Hình 2.8: Hình ảnh led matrix

-

-

Led matrix là tồn bộ hệ thống bóng đèn led hay cụm led (module led) đều
được sắp xếp thành các hàng, cột nối tiếp nhau trên bề mặt biển quảng
cáo, từ đó tạo nên kết cấu tương tự như một ma trận kỳ bí thu nhỏ kích
thích mọi giác quan .
Điện áp : 1.8- 2.2 VDC/1 LED
Dòng tiêu thụ : 0 - 640 mA
Số lượng LED : 64 LED..
Nhóm tiến hành chọn led loại 8x8.

Hình 2.9: Bộ mở rộng chân dùng cho led matrix
15


Tiểu luận Hệ thống nhúng

Hình 2.10: Bộ khuếch đại dịng
-


Cũng giống như led 7 đoạn thì nhóm em cũng sử dụng IC74HC595 để tối
ưu chân vi xử lí và việc thực hiện hiển thị led matrix được dễ dàng hơn.

-

Ngoài ra, nhóm em cịn sử dụng IC74HC245 để khuếch đại dòng chạy qua
led matrix, để led hiển thị được rõ hơn.

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

16


Tiểu luận Hệ thống nhúng

Hình 2.11: Sơ đồ mạch bộ đếm 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 hồ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ì q 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).

-


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ở R2=10K và R3=10K
kéo lên trong khi hoạt động.

-

X ,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 có thể nối thêm 2 tụ C1,C2 với giá trị 33pF.

d. Khối nguồn
-

Có 16 linh kiện dùng nguồn 5V và 1 thiết bị sử dụng nguồn 24V. Do còn
nhiều hạn chế cũng như dựa vào kinh nghiệm nên nhóm em quyết định thiết
kế đúng nguồn như nêu.

-

Sử dụng bộ biến đổi 220V-24V và module biến đổi nguồn 5V cho tồn bộ hệ

thống.

-

Tính tổng dịng cho từng nguồn: Quyết định cho IC khuếch đại dòng 100mA.

e. Sơ đồ nguyên lý cho toàn mạch
-

-

Đầu tiên hệ thống sẽ setup thời gian thực nhờ IC DS1307.
Ấn nút “Tang” hoặc “Giam” để điều chỉnh số phút cần báo giờ hiển thị trên
led 7 đoạn, sau đó nhấn nút “ Bat Dau” để thực hiện đếm và báo giờ. Để chắc
chắn hệ thống báo giờ đang hoạt động thì có 4 led đơn báo hiệu. Khi đến thời
gian đã hẹn thì hệ thống loa báo và led báo sẽ hoạt động.
Muốn dừng báo hiệu hệ thống ta nhấn nút “Tat”.

17


Tiểu luận Hệ thống nhúng

Hình 2.12: Sơ đồ nguyên lý của hệ thống

2.2.2 Lưu đồ và chương trình
a. Giới thiệu yêu cầu điều khiển
Với yêu cầu của hệ thống báo giờ tự động bằng loa sử dụng chip pic
16F877A để điều khiển hệ thống, nhóm đã đồng thời kết hợp các IC
phụ trợ để tối ưu các chân vi xử lý có thể sử dụng như: IC DS1307 để

hiển thị thời gian thực hay IC 74HC595 để mở rộng chân thực hiện các
yêu cầu hiển thị và báo hiệu khác của hệ thống.

18


Tiểu luận Hệ thống nhúng

b. Lưu đồ

Hình 2.13: Lưu đồ trình tự điều khiển của hệ thống

19


Tiểu luận Hệ thống nhúng

c. Chương trình
#include <16f877a.h>
#use delay(clock=20M)
#include <DS1307.h>
#include <HC595.h>
#include <HC595T1.h>
#include <HC595T2.h>
#include <HC595T3.h>
#include <HC595T4.h>
#include <HC595T5.h>
#include <HC595T6.h>
#define Led(x) output_bit(PIN_D6,x);
#define Ledbao(x) output_bit(PIN_D7,x);

#define EN0(x) output_bit(Pin_B6,x);
#define EN1(x) output_bit(Pin_B7,x);
char
[8]={{0x00,0x00,0x00,0x00,0x3E,0x41,0x41,0x3E},//00

Mang0[10]

{0x00,0x00,0x00,0x00,0x00,0x42,0x7F,0x40},//01
{0x00,0x00,0x00,0x00,0x42,0x61,0x51,0x4E},//02
{0x00,0x00,0x00,0x00,0x00,0x49,0x49,0x7F},//03
{0x00,0x00,0x00,0x00,0x18,0x14,0x12,0x7F},//04
{0x00,0x00,0x00,0x00,0x00,0x4F,0x49,0x79},//05
{0x00,0x00,0x00,0x00,0x00,0x7F,0x49,0x79},//06
{0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x7F},//07
{0x00,0x00,0x00,0x00,0x36,0x49,0x49,0x36},//08
20


Tiểu luận Hệ thống nhúng

{0x00,0x00,0x00,0x00,0x00,0x4F,0x49,0x7F},//09
};
char
[8]={{0x3E,0x41,0x41,0x3E,0x00,0x00,0x00,0x00},//00

Mang1[10]

{0x00,0x42,0x7F,0x40,0x00,0x00,0x00,0x00},//10
{0x42,0x61,0x51,0x4E,0x00,0x00,0x00,0x00},//20
{0x00,0x49,0x49,0x7F,0x00,0x00,0x00,0x00},//30

{0x18,0x14,0x12,0x7F,0x00,0x00,0x00,0x00},//40
{0x00,0x4F,0x49,0x79,0x00,0x00,0x00,0x00},//50
{0x00,0x7F,0x49,0x79,0x00,0x00,0x00,0x00},//60
{0x00,0x01,0x01,0x7F,0x00,0x00,0x00,0x00},//70
{0x36,0x49,0x49,0x36,0x00,0x00,0x00,0x00},//80
{0x00,0x4F,0x49,0x7F,0x00,0x00,0x00,0x00},//90
};
unsigned
char
Ma7doan[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,
0xFF};
void _HienThiLed(char Index,
Index3,char Index4, char Index5);

char

Index1,char

Index2,

char

void Led7thanh(char Sophut);

void main()
{
unsigned char* Time;
signed char Gio,Phut,Giay;
char Index;
char Index1;

char Index2;
21


Tiểu luận Hệ thống nhúng

char Index3;
char Index4;
char Index5;
char Sophut;
int8 Caidat;
char Trangthai;
char Thoigian;
char Chuong;
Char Hienthi;
while(TRUE)
{
//TODO: User Code
Time = Get_DS1307_RTC_Time();
Gio = Time[2];
Phut = Time[1];
Giay = Time[0];
Thoigian=Gio*60+Phut;

Index=Gio%10;
Index1=Gio/10;
Index2=Phut%10;
Index3=Phut/10;

Index4=Giay%10;

Index5=Giay/10;
22


Tiểu luận Hệ thống nhúng

_HienThiLed(Index,Index1,Index2,Index3,Index4,Index5);
if(input(PIN_A4)==0)
{
while(input(PIN_A4)==0){};
Caidat=Caidat+1;
}
if(input(PIN_A5)==0)
{
while(input(PIN_A5)==0){};
Caidat=Caidat-1;
}
if(input(PIN_E1)==0)
{
while(input(PIN_E1)==0){};
Chuong= ThoiGian + Caidat;
Trangthai=1;
Caidat=0;
}
if(input(PIN_E2)==0)
{
while(input(PIN_E2)==0){};
Trangthai=0;
}
if(Chuong==Thoigian)

{
Trangthai=2;
Chuong=0;
23


Tiểu luận Hệ thống nhúng

}
if(Trangthai==0)
{
Led(0);
Ledbao(0);
Led7thanh(Caidat);
}
if(trangthai==1)
{
Hienthi=Chuong-Thoigian;
Led(0);
Ledbao(1);
Led7thanh(Hienthi);
}
if(trangthai==2)
{
Led(1);
Ledbao(1);
Led7thanh(0);
}
Sophut=Caidat;
}

}
//!
void _HienThiLed(char Index , char Index1 ,char Index2, char
Index3,char Index4, char Index5)
{
24


Tiểu luận Hệ thống nhúng

char MaDich=0x01;//0b00000001 =>0b11111110
char Ma;
char i;
char j;
char Data;
char Data1;
for(i=0;i<=7;i++)
{
j=Index;
Ma =~MaDich;
Data1= Mang0[j][i];
HC595_Out1(Data1);
Data = Ma;
HC595_Out(Data);
delay_ms(1);
Data= 0xFF;
HC595_Out(Data);
j=Index1;
Data1= Mang1[j][i];
HC595_Out1(Data1);

Data = Ma;
HC595_Out(Data);
delay_ms(1);
Data= 0xFF;
HC595_Out(Data);
j=Index2;
Ma =~MaDich;
25


×