1. Trang chủ
  2. » Luận Văn - Báo Cáo

THIẾT KẾ ĐỒNG HỒ ĐIÊN TỬ SỬ DỤNG CỔNG NỐI TIẾP HIỂN THỊ BẰNG LED 7 ĐOẠN (ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH ( ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH)

21 1,2K 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 318 KB

Nội dung

Lời Nói Đầu Ngày nay, các vi điều khiển đã thâm nhập vào mọi lĩnh vực vủa đời sống từ dân sự, quân sự đến an ninh quốc phòng, có mặt trong hầu hết các ứng dụng hàng ngày từ những thiết bị nhỏ như điện thoại di động, máy nhắn tin, trò chơi điện tử, các thiết bị gia dụng (máy giặt, điều hòa, tủ lạnh….) đến những thiết bị lớn như ôtô, tàu thủy, xe lửa, máy bay, hệ thống mạng điện thoại, các bộ điều khiển tự động trong nhà máy, các bộ điều chỉnh trong nhà máy điện hạt nhân, trong các hệ thống điều khiển ánh sáng… Với một loạt các ứng dụng thú vị trên, ở đây chúng em xin giới thiệu một ứng dụng nhỏ dùng vi điều khiển 8051 (cụ thể là vi điều khiển AT89S52) để thiết kế đồng hồ điện tử hiển thị bằng led 7 đoạn điều khiển bằng máy tinh. Do thời gian và trình độ còn hạn chế, còn thiếu kinh nghiệm thực tế nên không tránh khỏi những sai sót. Chúng em rất mong nhận được những ý kiến và đóng góp của các thầy cô và các bạn để chúng em có thể hoàn thiện thiết kế hơn nữa...

Trang 1

Bộ Công Thương Trường:Đại Học Công Nghiệp Hà Nội

PHẠM TIẾN BÁCH NGUYỄN ĐỨC THÔNG

Trang 2

NhËn xÐt cña gi¸o viªn híng dÉn

Lời Nói Đầu

Ngày nay, các vi điều khiển đã thâm nhập vào mọi lĩnh vực vủa đời sống từ dân sự, quân sự đến an ninh quốc phòng, có mặt trong hầu hết các ứng dụng hàng ngày từ những thiết bị nhỏ như điện thoại di động, máy nhắn tin, trò chơi điện tử, các thiết bị gia dụng (máy giặt, điều hòa,

tủ lạnh….) đến những thiết bị lớn như ôtô, tàu thủy, xe lửa, máy bay, hệ thống mạng điện thoại, các bộ điều khiển tự động trong nhà máy, các bộ điều chỉnh trong nhà máy điện hạt nhân, trong các hệ thống điều khiển ánh sáng…

Trang 3

Với một loạt các ứng dụng thú vị trên, ở đây chúng em xin giới thiệu một ứng dụng nhỏ dùng vi điều khiển 8051 (cụ thể là vi điều khiển AT89S52) để thiết kế đồng hồ điện tử hiển thị bằng led 7 đoạn điều khiển bằng máy tinh.

Do thời gian và trình độ còn hạn chế, còn thiếu kinh nghiệm thực

tế nên không tránh khỏi những sai sót Chúng em rất mong nhận được những ý kiến và đóng góp của các thầy cô và các bạn để chúng em có thể hoàn thiện thiết kế hơn nữa

Xin chân thành cảm ơn !

PHẦN 1

I,CẤU TRÚC VI ĐIỀU KHIỂN 8051

I-Giới thiệu tổng quan về họ 8051 (AT 89S52)

Họ vi điều khiển 8051 (còn gọi là C51) là một trong những họ vi điều

khiển thông dụng nhất Đây là các bộ vi điều khiển 8 bít được sản xuất theo công nghệ CMOS Một số loại vi điều khiển thuộc họ 8051 thông

Trang 4

dụng nhất: AT89C2051, AT89C4051, AT89C51, AT89S52… Trong đó AT89S52 là một bộ vi điều khiển thông dụng giá rẻ có nhiều chức năng

và đặc biệt có tích hợp sẵn bộ nạp trên chíp

Bộ vi điều khiển AT89S52 gồm các khối chức năng chính sau đây:

CPU (Central Processing Unit) bao gồm:

- Thanh ghi tích luỹ A

- Thanh ghi tích luỹ phụ B, dùng cho phép nhân và phép chia

- Đơn vị logic học (ALU: Arithmetic Logical Unit)

- Thanh ghi từ trạng thái chương trình (PSW: Progam StatusWord)

- Bốn băng thanh ghi

- Con trỏ ngăn xếp

Bộ nhớ chương trình (Bộ nhớ ROM) gồm 8Kb Flash.

Bộ nhớ dữ liệu (Bộ nhớ RAM) gồm 256 bytes.

Bộ UART (Universal Ansynchronous Receiver and Tranmitter)

làm chức năng truyền nhận nối tiếp, nhờ khối này AT89S52 có thể giaotiếp với máy tính qua cổng COM

3 bộ Timer /Counter 16 bít thực hiện các chức năng định thời và

đếm sự kiện

WDM (Watch Dog Timer) được dùng để phục hồi lại hoạt động của CPU

khi nó bị treo bởi một nguyên nhân nào đó WDM ở AT89S52 gồm một

bộ Timer 14 bít, một bộ Timer 7 bít, thanh ghi WDTPRG (WDTprogramable) điều khiển Timer 7 bit và một thanh ghi chức năngWDTRST (WDM register) Bình thường WDT không hoạt động (bịcấm), để cho phép WDT, các giá trị 1EH và E1H cần phải được ghi liêntiếp vào thanh ghi WDTRST Timer 14 bit của WDT sẽ đếm tăng dần saumỗi chu kỳ đồng hồ cho đến giá trị 16383 thì xảy ra tràn Khi xảy ra tràn,chân RTS sẽ được đặt ở mức cao trong thời gian 96.Tosc (Tossc=1/Fosc)

và AT89S52 sẽ được reset Khi WDT hoạt động, ngoại trừ reset phầncứng và reset do WDT tràn thì không có cách nào cấm được WDT, vì vậykhi sử dụng WDT thì các đoạn mã chương trình phải được đặt trong các

II- Sơ đồ các chân và chức năng

Trang 5

1 Port 0 (P0.0-P0.7 hay từ chân 32 đến chân 39): Gồm 8 chân,

ngoài chức năng xuất nhập ra, Port 0 còn là Bus đa hợp dữ liệu và địa chỉ(AD0-AD7), chức năng này sẽ được sử dụng khi AT89S52 giao tiếp vớithiết bị ngoài có kiến trúc Bus

Hình 1: Cấu trúc của các chân trên Port 0

2 Port 1 (P1.0-P1,7 hay từ chân 1 đến chân 8) :

Có chức năng xuất nhập theo bit và byte Ngoài ra, 3 chân P1.5, P1.6,P1.7 được dùng để nạp ROM theo chuẩn ISP, 2 chân P1.0 và P1.1 đượcdùng cho bộ Timer 2

Trang 6

Hình 2: Cấu trúc của các chân trên Port 1 và Port 3

3 Port 2 (P2.0- P2.7 hay từ chân 21 đến chân 28): Là một Port có công

dụng kép: là đường xuất nhập hoặc là byte cao của bus địa chỉ đối với cácthiết kế dùng bộ nhớ mở rộng

Hình 3: Cấu trúc của các chân trên Port 2

4 Port 3 (P3.0- P3.7 hay từ chân 10 đến chân 17): Mỗi chân trên

Port 3 ngoài chức năng xuất nhập ra còn có một chức năng riêng:

P3.1 TXD Dữ liệu truyền cho Port nối tiếp

Trang 7

P3.2 INT0 Ngắt 0 bên ngoài

P3.3 INT1 Ngắt 1 bên ngoài

6 XTAL1, XTAL2:

AT89S52 có một bộ dao động trên chip, nó thường được nối với một bộdao động thạch anh có tần số lớn nhất là 33MHz, thông thường là12MHz

7 EA (External Access):

EA thường được mắc lên mức cao (+5V) hoặc mức thấp (GND) Nếu ởmức cao, bộ vi điều khiển thi hành chương trình từ ROM nội Nếu ở mứcthấp, chương trình chỉ được thi hành từ bộ nhớ mở rộng

8 ALE (Address Latch Enable):

ALE là tín hiệu để chốt địa chỉ vào một thanh ghi bên ngoài trong nửađầu của chu kỳ bộ nhớ Sau đó các đường port 0 dùng để xuất hoặc nhập

dữ liệu trong nửa chu kỳ sau của bộ nhớ

9 PSEN (Program Store Enable):

PSEN là điều khiển để cho phép bộ nhớ chương trình mở rộng và trườngđược nối đến chân /OE (Output Enable) của một EPROM để cho phépđọc các bytes mã lệnh

Trang 8

PSEN sẽ ở mức thấp trong thời gian đọc lệnh Các mã nhị phân củachương trình được đọc từ EPROM qua Bus và được chốt vào thanh ghilệnh của bộ vi điều khiển để giải mã lệnh Khi thi hành chương trìnhtrong ROM nội, PSEN sẽ ở mức thụ động (mức cao)

Trang 9

ứngCổng COM

Hình 6: Truyền thông qua cổng nối tiếp

Trang 10

Như vậy thực chất của việc truyền thông qua cổng nối tiếp thực chất làviệc truyền mã ASCII của ký tự.Để gửi cho máy tính các kí tự từ ‘0’ đến

‘9’ ta phải truyền mã ASCII của chúng lần lượt từ 0x30 đến 0x39

Để kiểm tra xem máy tính có nhận được các kí tự mà vi điều khiểntruyền tới chưa, ta phải cho máy tính thi hành Chương trình nhận số liệuqua cổng nối tiếp chương trình này có thể viết bằng ngôn ngữ lập trìnhBasic, Pascal, C, C++ Trong Windows có cung cấp sẵn cho chúng tamột công cụ truyền tin qua cổng nối tiếp là Hyper Terminal

PHẦN 2: THIẾT KẾ PHẦN CỨNG

Trang 11

I,SƠ ĐỒ NGUYÊN LÝ

T2/P1.0 1 T2 EX/P1.1 2

P1.2 3 P1.3 4 P1.4 5 P1.5/MOSI 6

P1.6/MISO 7

P1.7/SCK 8

RESET 9

RXD/P3.0 10

TXD/P3.1 11

INT0/P3.2 12

INT1/P3.3 13

T0/P3.4 14 T1/P3.5 15 WR/P3.6 16

RD/P3.7 17

XTAL1 18 XTAL2 19

P2.0/A8 21P2.1/A9 22P2.2/A10 23P2.3/A11 24P2.4/A12 25P2.5/A13 26P2.6/A14 27P2.7/A15 28

PSEN 29ALE/PROG 30EA/VPP 31

P0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 33P0.7/AD7 32

IC1

AT89S52 Y1

C2 33

C3 33

JP1

JP9

VCC D0 D1 D2 D3

R5 R6 R7 R8 R9 R10 R12

C1+

1

VS+ 2C1-

3

C2+ 4C2- 5VS-

13 T1OUT 14

Q1 A1015 Q2A1015 Q3A1015 Q4A1015 R1

1k

R2 1k

R3 1k

R4 1k

a b c d e f g

R13 1k LED1LED

TX RX

Trang 12

III,CHƯƠNG TRÌNH ĐIỀU KHIỂN

1,PHẦN VISUA BASIC

Trang 13

Dim gio As Integer

Dim phut As Integer

Dim giay As Integer

Dim ngay As Integer

Dim thang As Integer

Dim nam As Integer

Dim N1 As Integer

Dim N2 As Integer

Dim N3 As Integer

Dim N4 As Integer

Private Sub Command1_Click()

Text2.Text = Format(Now, "dd/mm/yyyy") End Sub

Private Sub Command2_Click()

Trang 14

End Sub

Private Sub Command4_Click()

If IsDate(Text4.Text) Then

Time = Format(Text4.Text, "hh:nn:ss") Else

MsgBox "LOI NHAP SAI GIO"

If (Option1.Value = True) Then

N4 = (Format(Now, "HH") \ 10)

N3 = (Format(Now, "HH") Mod 10)

N2 = (Format(Now, "nn") \ 10)

N1 = (Format(Now, "nn") Mod 10)

Trang 15

End If

If (Option2.Value = True) Then N4 = (Format(Now, "nn") \ 10) N3 = (Format(Now, "nn") Mod 10) N2 = (Format(Now, "ss") \ 10) N1 = (Format(Now, "ss") Mod 10) End If

If (Option3.Value = True) Then N4 = (Format(Now, "dd") \ 10) N3 = (Format(Now, "dd") Mod 10) N2 = (Format(Now, "mm") \ 10) N1 = (Format(Now, "mm") Mod 10) End If

If (Option4.Value = True) Then N4 = (Format(Now, "mm") \ 10) N3 = (Format(Now, "mm") Mod 10) N2 = (Format(Now, "yy") \ 10) N1 = (Format(Now, "yy") Mod 10) End If

End Sub

Private Sub Timer2_Timer()

dd1 = Val(N1)

Trang 17

sbit LED1=P1^0; // quet led hang nghin

sbit LED2=P1^1; // quet led hang tram

sbit LED3=P1^2; // quet led hang chuc

sbit LED4=P1^3; // quet led hang don vi

int so4, so3,so2,so1,i,j,tg;

unsigned char dem=0;

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

Trang 18

break;

} if(++dem==4)dem=0;

{

tg =_getkey();

} while(tg!='@');

PHẦN 3 KẾT LUẬN

Trang 19

1,ƯU ĐIỂM :

- Mạch hiển thị đầy đủ các giá trị ngày, giờ, phút, giây, tháng, năm.

- Mạch hiển thị rõ ràng các giá trị trên led 7 đoạn

- Bằng cách nâng cấp phần cứng và thay đổi phần mềm, mạch điện hoàn toàn có thể tích hợp thêm tính năng như hiển thị lịch vạn niên các giá trị giờ, phút, giây, ngày, tháng âm lịch cũng như dương lịch trên cùng một diện tích

Tài liệu tham khảo

1.Vi điều khiển cấu trúc lập trình và ứng dụng (Kiều Xuân Thực – Vũ ThịThu Hương – Vũ Trung Kiên)

Trang 20

2.Giáo trình đo lường và điều khiển máy tính(Vũ Thị Thu Hương).

3 Họ vi điều khiển 8051 (Tống Văn On – Hoàng Đức Hải)

4 Internet: dientuvietnam.net

diendandientu.com

dientuvienthong.net

Ngày đăng: 03/11/2014, 14:55

HÌNH ẢNH LIÊN QUAN

Hình 1: Cấu trúc của các chân trên Port 0 - THIẾT KẾ ĐỒNG HỒ ĐIÊN TỬ SỬ DỤNG CỔNG NỐI TIẾP HIỂN THỊ  BẰNG LED 7 ĐOẠN (ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH ( ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH)
Hình 1 Cấu trúc của các chân trên Port 0 (Trang 5)
Hình 2: Cấu trúc của các chân trên Port 1 và Port 3 - THIẾT KẾ ĐỒNG HỒ ĐIÊN TỬ SỬ DỤNG CỔNG NỐI TIẾP HIỂN THỊ  BẰNG LED 7 ĐOẠN (ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH ( ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH)
Hình 2 Cấu trúc của các chân trên Port 1 và Port 3 (Trang 6)
Hình 3: Cấu trúc của các chân trên Port 2 - THIẾT KẾ ĐỒNG HỒ ĐIÊN TỬ SỬ DỤNG CỔNG NỐI TIẾP HIỂN THỊ  BẰNG LED 7 ĐOẠN (ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH ( ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH)
Hình 3 Cấu trúc của các chân trên Port 2 (Trang 6)
Hình 6: Truyền thông qua cổng nối tiếp - THIẾT KẾ ĐỒNG HỒ ĐIÊN TỬ SỬ DỤNG CỔNG NỐI TIẾP HIỂN THỊ  BẰNG LED 7 ĐOẠN (ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH ( ĐỒ ÁN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH)
Hình 6 Truyền thông qua cổng nối tiếp (Trang 9)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w