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

thiết kế bộ hẹn giờ cho một thiết bị hiện thị trên 8 led 7 đoạn

21 1,2K 2
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Thiết kế bộ hẹn giờ cho một thiết bị
Tác giả Cao Xuân Đức, Trương Quang Huy, Phạm Thị Lan Hương
Người hướng dẫn Nguyễn Anh Dũng
Trường học Trường Đại Học Công Nghiệp Hà Nội
Chuyên ngành Vi điều khiển
Thể loại Đồ án
Năm xuất bản 2009
Thành phố Hà Nội
Định dạng
Số trang 21
Dung lượng 346,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong quá trình học tập trong trờng ĐHCN Hà Nội, chúng em đã đợc tiếp xúc với một đại diện của nghành này,bộ môn vi điều khiển với sự hớng dẫn và giảng dạy của các thày giáo chúng em xin

Trang 1

-Bộ CÔNG THƯƠNg

Trờng đại học công nghiệp hà nội

Khoa điện tử - -

đồ án môn:

Vi điều khiển

Đề tài: Thiết kế bộ hẹn giờ cho một thiết bị

Sinh viên thực hiên: Cao Xuân Đức

Trơng Quang Huy Phạm Thị Lan Hơng

Giáo viên hớng dẫn : Nguyễn Anh Dũng

File đớnh kốm mụ phỏng 003.rar

Hà nội -11/2009

Mục lục

Chơng i: Giới thiệu chung về bộ vi điều khiển………3

I Giới thiệu chung về bộ vi điều khiển……….4

Trang 2

-II Khảo sát bộ vi điều khiển 8051(89S52) 4

1 Kiến trúc phần cứng……… 5

2 Chức năng các chân……… 6

3 Các thanh ghi……… 9

4 Hoạt động của bộ định thời……… 10

5 Hoạt động của port nối tiếp……… 11

6 Hoạt động ngắt……… 12

Chơng ii: bộ hẹn giờ dùng 89s52

1 các linh kiện

2 lu đồ thuật toán

3 mạch nguyên lý

4 phần mềm và file nguồn

LờI NóI ĐầU

Với công nghệ ngày càng hiện đại, các thiết bị điện tử ngày càng đi sâu vào cuộc sống của con ngời Và một bớc tiến vợt bậc của nghành điện tử, đó là sự ra đời của các IC số và các bộ vi xử lý, cho phép con ngời có thể lập trình cho chúng đợc, các thiết bị điện tử càng ngày càng linh hoạt và từ một linh kiện, chúng ta có thể tạo ra rất nhiều chức năng khác nhau cho chúng Và một đại diện cho mảng này, đó là họ

IC khả trình 8051, cho phép chúng ta có thể lập trình cho chúng làm những công việc khác nhau đa công nghệ điện tủ ngày một hiện đại hơn với công nghệ tự đọng hóa Trong quá trình học tập trong trờng ĐHCN Hà Nội, chúng em đã đợc tiếp xúc với một đại diện của nghành này,bộ môn vi điều khiển với sự hớng dẫn và giảng dạy của các thày giáo chúng em xin trình bày sản phẩm của nhóm chúng em dựa trên những kiến thức mà đã đợc học : Thiết kế bộ hẹn giờ cho một thiết bị.

Sẽ không thể tránh khỏi thiếu sót và điều cha đợc về sản phẩm của mình Rất mong nhận đợc sự chỉ bảo của các thày,cô.

Nhóm chúng em xin chân thành cảm ơn sự hớng dẫn của thày Dũng, thày Chiến, thày Tùng và các bạn xung quanh đã giúp đỡ chúng em trong quá trình làm đồ án môn này.

Sinh viên thực hiện: Cao Xuân Đức

Trơng Quang Huy

Trang 3

-Phạm Thị Lan Hơng

Chơng I

Giới thiệu chung về bộ vi điều khiển

I.Giới thiệu chung về bộ vi điều khiển:

Bộ vi điều khiển viết tắt là Micro-contronller, là mạch tích hợp trên một chíp có thể lậptrình đợc, dùng để điều khiển hoạt động của hệ thống Theo các tập lệnh của ngời lập trình,

bộ vi điều khiển tiến hành đọc, lu trữ thông tin, xử lý thông tin, đo lờng thời gian và tiếnhành đọc mở một cơ cấu nào đó

Trong các thiết bị điện và điện tử dân dụng, thiết bị tự động hoá… các bộ vi điều khiển,

điều khiển hoạt đọng của các thiết bị này Trong hệ thống sản xuất tự động, bộ vi điều khiển đợc sử dụng trong điều khiển robot, dây chuyền tự động… Các hệ thống càng thông minh thì vai trò của vi điều khiển càng quan trọng

II Khảo sát bộ vi điều khiển 8051(89S52)

Họ vi điều khiển 8051 (còn gọi là họ 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 8bits, có kiến trúc theo kiểusản xuất theo công nghệ CMOS, Một số loại vi điều khiển thuộc họ 8051 thông dụng có thể kể ra : AT89C2051(20 chân), AT89C4051(20 chân), AT89C51(40 chân), AT89C52(40 chân), AT89S51(40 chân), AT89S52(40 chân), AT89S53(40 chân)

Trong chơng trình môn học này chúng ta tập trung nghiên cứu về bộ vi điều khiển 89S52

Đây là một bộ vi điều khiển thông dụng, giá rẻ có khá nhiều chức năng hay đặc

biệt là có tích hợp sẵn bộ nạp trên chip giúp sinh viên có thể dễ dàng tự thực hiện các bài thínghiệm với chi phí rất thấp

Cũng trong chơng trình môn học này, ngôn ngữ đợc sử dụng để trình bày các ví dụ ứngdụng sẽ là ngôn ngữ C

Trang 4

Cụ thể họ vi điều khiển 8051 có các đặc điểm sau :

-8 kbyte ROM (đợc lập trình bởi nhà sản xuất chỉ có ở 8051 )

a).Kiến trúc phần cứng của 8051

Phần chính của vi điều khiển 8051 là bộ vi xử lý trung tâm(CPU: central processingunit) 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)

- tủ trạng thái chơng trình (PSW: program status word)

- bốn băng thanh ghi

- con trỏ ngăn xếp

- ngoài ra còn có bộ nhớ chơng trình, bộ giải mã lệnh, bộ điều khiển thời gian và logic

Trang 5

Hình 1.1 : Sơ đồ khối 89s52 Đơn vị xử lý trung tâm nhận trực tiếp xung từ bộ dao động, ngoài ra còn có khả năng đa một tín hiệu giữ nhịp từ bên ngoài

Chơng trình đang chạy có thể cho dừng lại nhờ một khối điều khiển ngắt ở bên trong Các nguồn ngắt có thể là: các biến cố ở bên ngoài, sự tràn của bộ đếm định thời hoặc cũng có thể là giao diện nối tiếp

ba bộ định thời 16 Bit hoạt động nh một bộ đếm

Các cổng(Port 0, Port 1 Port 2 Port 3) Sử dụng vào mục đích điều khiển

ở cổng 3 có thêm các đờng dẫn điều khiển dùng để trao đổi với bộ nhớ ở bên ngoài, hoặc để

đầu nối giao diện nối tiếp, cũng nh các đờng ngắt dẫn ở bên ngoài

Giao diện nối tiếp có chứa một bộ truyền và một bộ nhận không đồng bộ, làm việc độc lập với nhau Tốc độ truyền qua cổng nối tiếp có thể đặt trong vảy rộng và đợc ấn định bằng một bộ định thời

Trong vi điều khiển 8051 có hai thành phần quan trọng khác đó là bộ nhớ và các thanh ghi:

Bộ nhớ gồm có bộ nhớ RAM và bộ nhớ ROM dùng để lu trữ dữ liệu và mã lệnh

Các thanh ghi sử dụng để lu trữ thông tin trong quá trình xử lý Khi CPU làm việc nó thay

đổi nội dung các thanh ghi

b) Chức năng các chân của vi điều khiển 8051

1 Port 0.

Trang 6

-Port 0 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 89S52 giao tiếp với các thiết bị ngoài có kiến trúc Bus

Hình 2.4 Cấu trúc của các chân trên port 0

2 Port 1.

Đối với 8051, chức năng duy nhất của Port 1 là chức năng xuất nhập, cũng nh các Portkhác, Port 1 có thể xuất nhập theo bit và theo byte

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

Riêng dòng 89Sxx, 4 chân P1.4, P1.5, P1.6, P1.7 đợc dùng để nạp ROM theo chuẩn ISP, 2 chân P1.0 và P1.1 đợc dùng cho bộ Timer 2 Trên hình 2.3 là một sơ đồ kết nối 89S52với cổng song song để nạp chơng trình (file mã - *.hex) từ máy tính

Trên sơ đồ này các đờng dẫn DO, DI, SCK, RTS lần lợt là các đờng dẫn dữ liệu lên máy tính, xuống nối tiếp từ máy tính, đờng dẫn xung Clock và đờng dẫn xung Reset từ máytính xuống sau khi nạp xong chơng trình

3 Port 2.

Port 2 có hai tác dụng, hoặc làm nhiệm vụ là cổng xuất nhập, hoặc là phần byte

cao của bus địa chỉ 16-bit cho các thiết kế hệ thống cần nhiều hơn 256 byte bộ nhớ ngoài

Trang 7

P3.0 RXD Dữ liệu nhận cho port nối tiếp

P3.1 TXD Dữ liệu phát cho port nối tiếp

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

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

P3.4 TO Ngõ vào timer/counter 0

P3.5 T1 Ngõ vào của timer/counter 1

P3.6 WR Xung ghi bộ nhớ dữ liệu ngoài

P3.7 RD Xung đọc bộ nhớ dữ liệu ngoài

5 PSEN (Program Store Enable ).

Chân này thờng đợc nối với chân cho phép xuất /OE (Output Entable) của

EPRROM (hoặc của ROM) để cho phép đọc các byte lệnh Tín hiệu /PSEN ở lôgic ‘0‘trong suốt thời gian tìm nạp lệnh Các mã nhị phân của chơng trình (opcode) đợc

đọc từ EPROM, qua bus dữ liệu và đợc chốt với thanh ghi lệnh IR của 8051 để đợc

giải mã Khi thực thi một chơng trình trong ROM nội, /PSEN đợc duy trì ở lôgic

không tích cực (logic 1)

6 ALE (Address Latch Enable )

Là tín hiệu xuất ra để giải đa hợp bus địa chỉ v bus dữ liệu Trong 1/2 chu kỳ đầu

bộ nhớ, chân ALE xuất tín hiệu để chốt địa chỉ (byte thấp của bus địa chỉ 16 bit) và

thanh ghi ngoài khi ta sử dụng port 0 làm byte thấp địa chỉ Trong 1/2 chu kỳ bộ nhớcòn lại port 0 sẽ xuất/nhập dữ liệu Tín hiệu ALE có tần số bằng 1/6 tần số của mạchdao động bên trong chip vi điều khiển v có thể lm xung clock cho các phần còn lại

của hệ thống (trờng hợp ngoại lệ khi thực hiện lệnh MOVX, một xung ALE (vàs cả

/PSEN) sẽ bị bỏ qua) Chân ALE còn đợc dùng để nhập xung ngõ vo lập trình cho

EPROM hoặc Flash ROM trên chip đối với chip có loại ROM này

7 EA (External Access)

Chân này đợc nối lên 5V khi thực thi chơng trình trong ROM nội và đợc nối

đất khi thực thi chơng trình bộ nhớ ngoài Chú ý đối với các chip không có ROM nội

Trang 8

-/EA phải đợc nối đất Các chip họ 8051 có EPROM còn nhận chân /ALE làm chân

nhận điện áp cấp điện 12V cho việc lập trình (nạp) cho EPROM nội

8 RST (Reset)

Dùng để thiết lập lại trạng thái ban đầu của hệ thống hay gọi tắt là reset hệ thống

khi đợc treo ở mức logic là ít nhất 2 chu kỳ máy Các thanh ghi bên trong của 8051

đợc nạp các giá trị thích hợp cho việc khởi động lại hệ thống

9 XTAL1, XTAL2.

Mạch dao động bên trong chip 8051 đợc ghép với thạch anh bên ngoài ở 2 chân

XTAL1 v XTAL2 Thờng tần số l 12MHz v các tụ ổn định có giá trị trong khoảng

1 Các thanh ghi Port xuất nhập:

Các Port cua 8051 bao gồm port 0 ỏ địa chỉ 80H.port1 ỏ dịa chỉ 90H,port2 ỏ địa chỉ A0H và port 3 ỏ địa chỉ B0H.Tất cả các port dều đợc địa chỉ hoá tùng bit Điều đó cung cấpmột khả năng giao tiếp thuận lợi

2.Các thanh ghi TIMER:

8051 chứa 2 bộ định thời đếm 16bit đợc dùng trong việc định thời hoạc đém sự kiện.Timer0 ở địa chỉ 8AH(TLO:byte thấp) và 8CH (THO:byte cao)Timer1 ở địa chỉ 8BH (TL1 byte thấp)và 8DH(TH1:byte cao).Việc vận hành của Timer đợc set bởi thanh ghi Timer MODE(TMOD)ở địa chỉ 89H cà thanh ghi điều khiển timer(TCON)ở địa chỉ

88H.Chỉ có TCON đợc địa chỉ hoá từng bit

3.Các thanh ghi Port nối tiếp:

8051 chứa một port nối tiếp trên chip dành cho việc trao đổi thông tin với các thiết bị nối tiếp nh máy tính, Modern hoặc cho việc giao tiếp với các IC khác có giao tiếp nối tiếp (có

bộ chuyển đổi A/D,các thanh ghi dịch ) Một thanh ghi gọi la bộ đệm dữ liệu nối tiếp (SBUF) ở địa chỉ 99H sẽ dữ cả hai vai trò truyền và nhận dữ liệu.Khi truyền dữ liệu thì ghi lên SBUF, khi nhận dữ liệu thì đọc SBUF Các MODE vận hành khác nhau đợc lập trình quathanh ghi diều khiển Port nối tiếp (SCON) đợc dịa chỉ hoá từng bit ở địa chỉ 98H

4.Các thanh ghi ngắt :

8051 có cấu trúc 5 nguồn ngắt , 2 mức u tiên.Các ngắt bị cấm sau khi reset hệ thống và sẽ

đợc cho phép bằng việc thanh ghi cho phép ngắt (IE) ở địa chỉ 8AH Cả hai thanh ghi đợc

địa chỉ hoá từng bit

5.Hoạt động của bộ định thời(timer)

8051 có 3 timer 16 bit, mỗi timer có 4 cách làm việc Ngời ta sử dụng các timer để :

 Định khoảng thời gian

 Đếm sự kiện

 Tạo tốc độ BAUD cho Port nối tiếp trong 8051

Trang 9

-A :Thanh ghi chế độ timer(TMOD)

Thanh ghi TMOD chứa 2 nhóm 4bit dùng để đặt chế dộ làm việc cho timer0 và timer1

B Thanh ghi điều khiển timer(TCON)

Thanh ghi TCON chứa các bit trạng thái và các bit điều khiển cho timer 0 và timer 1.Bit Ký hiệu địa chỉ Mô tả

TCON.7 TF1 8FH Cở báo tràn TIMER 1 Đợc đặt bởi phần cứng, khi

tràn đợc xóa bằng phần mềm, hay phần cững khi bộ

xử lý chỉ đến chơng trình phục vụ ngắt

TCON.6 TR1 8EH Bit điều khiển timer 1 chạy, đặt và xóa bằng phần

mềm

TCON.5 TF0 8DH Cờ báo tràn Timer 0, tơng tự nh Timer 1

TCON.4 TR0 8CH Bit điều khiển chạy cho Timer 0 đặt xóa bằng phần

mềm

TCON.3 IE1 8BH Cờ báo ngắt 1 bên ngoài

TCON.2 IT1 8AH Cờ ngắt do Timer 1

TCON.1 IE0 89H Cờ báo ngắt do Timer 0

TCON.0 IT0 88h Cờ ngắt do Timer 0

Trang 10

TLx hoạt động nh một timer 8 bit,trong khi đó THx vẫn giữ nguyên giá trị đợc nạp Khi số

đếm tràn từ ffH đến 00H,không những cờ timer đợc set mà giá trị trong THx động thời đợc nạp vào TLx Việc đếm tiếp tục từ giá trị naỳ đến ffH xuống 00Hvà nạp lại CHế độ này rấtthông dụng vì sự tràn timer sảy ra trong khoảng thời gian nhất định và tuần hoàn khi đã khởi động TMOD và THx

Khi timer 0 ở chế độ 3 có thể cho timer 1 chạy và ngng bằng cách chuyển nó ra ngoài và vào chế độ 3 Nó vẫn có thể đợc sử dụng bằng port nối tiếp nh bộ tạo tốc độ baund hoặc nó

có thể đợc sử dụng bằng bất cứ cách nào không cần ngắt (vì nó không còn đợc nối với TF1)

TFxTLx THx

(5 bit) (8 bit)

TFxTLx THx

(8 bit) (8 bit)

Trang 11

-6 Hoạt động port nối tiếp

Bit ký hiệu địa chỉ Mô tả

Trang 12

độ 2 và 3 ,RI sẽ không bị tác động Nếu bit thứ 9 thu đợc bằng 0-cho phép thu (đặt bằng 1)

-bit 8 phát bit thứ 9 đợc phát các chế độ 2 và 3 -bit 8 thu bit thứ 9

-cờ ngắt phát ,đặt lên 1 khi kết thúc phát -cờ ngắt thu ,đặt lên 1 khi kết thúc nhận

Bảng 2.7:Tóm tắt thanh ghi chế độ port nối tiếp SCON

Các chế độ hoạt động của PORT nối tiếp

Port nối tiếp có 4 chế độ hoạt động :

Bộ hen giờ cho rơle hiển thị bằng led 7 đoạn

I Các thiết bị sử dụng trong mạch:

Rơle: sử dụng rơle 12 vôn DC để kích mở cho rơle này, cần một transistor mở

cho rơle này, sử dụng C828 để kích mở Role này.

Led 7 thanh: dùng để hiển thị thời gian còn lại của thời gian còn lại Chúng ta sử dụng led 7 thanh kép gồm 4 led đơn gắn trên cùng một con led gọi là MPX4-CA

Trang 13

-để hiển thị led 7 thanh Nguyên lý hiển thị quét led: -để điều khiển cho n led 7 đoạn,

ta sử dụng n đờng dây điều khiển việc cấp nguồn cho các led và 8 đờng dây dữ liệu chung cho tất cả các led( 7 đờng nếu không cần dấu chấm) Việc hiển thị đợc thực hiện bằng cách lần lợt cấp nguồn cho từng led và đa số liệu tơng ứng của led đó ra 8

đờng dây dữ liệu Nh vậy thực chất thì tại 1 thời điểm chỉ có 1 led hoạt động, còn các led khác không hoạt động vì không đợc cấp nguồn Tuy nhiên do đặc tính lu ảnh trên võng mạc của mắt ngời mà ta nhìn thấy tất cả các led đang hoạt động.

Ngoài các linh kiện trên, ta còn dùng tới 3 nút nhấn, các điện trở, các transistor

Sử dụng tran A1015 để kích cho tran sang ( cấp nguồn gián tiếp qua tran)

Trang 15

-Kiểm tra trạng thái nút menu

Cấm ngắt bằng timer 1Tăng biến vị trí (VT)

-Nguyên lý hoạt động: dựa vào một trong ba nội dung cơ bản của Vi điều khiển là Timer-bộ định thời Dựa vào tần số xung nhịp của thạch anh là 12Mhz, qua các bộ chia tần chúng ta có tần số xung nhịp của một chu kỳ máy là 1/1000ms.

Nạp hệ số chia của timer 1 là -1000, chúng ta có hàm trễ 1ms để làm hàm hiển thị cho 8 led 7 đoạn

Cộng với tốc độ tràn của timer 0 ta có bộ đếm lùi thời gian với chu kỳ là 1/10s.

Trên hệ thống có nút chỉnh thời gian tăng hoặc giảm giờ, phút, giây Kết thúc việc chỉnh thời gian là bắt đầu đếm lùi thời gian cho tới khi về 0 Khi đó, Rơle sẽ đợc bật

và ta sử dụng các tiếp điểm NC và NO của rơle để điều khiển thiết bị điện.

Đồng hồ chạy liên tục cho tới khi phím MENU có sự thay đổi trạng thái, tức là có sự tác động

Chơng trình điều khiển của mạch viết bằng phần mềm Kiel C.

II-

LƯU Đồ THUậT TOáN:

Khởi tạo timer 1 cho hàm đếm số lần tràn, phục vụ hàm trừ thời gian

Timer 0 cho hàm trễ

Trang 16

VT=4-chỉnh 1/10

giây

Tăn

g giả

m -

void set_time (void);

void delay_ms (unsigned int time);

void clear (void);

void quet_gio (void);

void quet_phut (void);

void quet_giay (void);

void gio_phut_giay (void);

void set_gio (void);

void set_phut (void);

void set_giay(void);

void set_giay1(void);

void scan_vitri (void);

void down_time (void);

VT=5: bắt đầu cho phép ngắt = timer 1 bắt đầu

( tiếp tục) đếm lùi thời gian

Trang 17

IE=0X88;

EA=1;

TF1 =0;TR1=1;

} }

Trang 18

P0=so[gio%10]; delay_ms(2);

Trang 19

{while (giam ==0 );

if (giam==0)

{while (giam==0) ;

if(giay==-1) giay=59 ; }

void scan_vitri (void)

if (gio==-1) {gio=phut=giay=giay1=0;

Trang 20

//====================================================== void ngatT1 (void) interrupt 3 //ham ngat do timer 1

Trang 21

-Chơng III Kết luận

Với sản phẩm bộ hẹn giờ này, u điểm là có thể lập trình đợc đơn giản cho chip.

Nhng nhợc điểm của sản phẩm này vẫn còn:

1- thời gian chạy cha chính xác.

2- bộ hiển thị vẫn còn nháy 1 chút và sáng mờ.

Dựa vào những nhợc điểm này, ta có thể cảI tiến bằng cách: dùng hệ điều hành thời gian thực, đa nhiệm thì sẽ giải quyết đợc vấn đề độ chính xác của thời gian.

Ngày đăng: 15/04/2014, 11:58

HÌNH ẢNH LIÊN QUAN

Hình 2.5. Cấu trúc của các chân trên port 1 và port 3. - thiết kế bộ hẹn giờ cho một thiết bị hiện thị trên 8 led 7 đoạn
Hình 2.5. Cấu trúc của các chân trên port 1 và port 3 (Trang 6)
Bảng 2.7:Tóm tắt thanh ghi chế độ port nối tiếp SCON. - thiết kế bộ hẹn giờ cho một thiết bị hiện thị trên 8 led 7 đoạn
Bảng 2.7 Tóm tắt thanh ghi chế độ port nối tiếp SCON (Trang 12)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w