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

: ỨNG DỤNG ĐO KHOẢNG THỜI GIAN GIỮA 2 XUNG ( F < 1000 HZ )

19 388 0
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 đề Ứng dụng đo khoảng thời gian giữa 2 xung ( F < 1000 Hz )
Tác giả Phạm Thanh Bình
Trường học Đại Học Hàng Hải
Chuyên ngành Điện Tự Động-CN
Thể loại Đồ án tốt nghiệp
Định dạng
Số trang 19
Dung lượng 6,27 MB

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

Nội dung

ạ m Thanh Bình --- L ớ p: T 50- H2 Đ Đ Đ LỜI NÓI ĐẦU Bộ Vi xử lí là hạt nhân của hệ VXL,nó thực hiện các phép tính logic hoặc số học để điều khiển toàn bộ hoạt động của hệ: - Đọc các l

Trang 1

Mục Lục

Trang

CHƯƠNG 2: ỨNG DỤNG ĐO KHOẢNG THỜI GIAN

Trang 2

ạ m Thanh Bình - L ớ p: T 50- H2 Đ Đ Đ

LỜI NÓI ĐẦU

Bộ Vi xử lí là hạt nhân của hệ VXL,nó thực hiện các phép tính logic hoặc số học để điều khiển toàn bộ hoạt động của hệ:

- Đọc các lệnh từ ô nhớ,giải mã lệnh và thực hiện lệnh

- Trao đổi số liệu với bộ nhớ và các thiết bị vào ra

- Có thể được điều khiển từ 1 số tín hiệu bên ngoài đẻ thực hiện 1 số chức năng đặc biệt như thâm nhập bộ nhớ,ngắt và treo

Một hệ VXL bao gồm 2 phần:

- Phần cứng

- Phần mềm

*) Phần cứng là toàn bộ các kết cấu vật lí cấu thành nên hệ như ROM, RAM,

 P…

*) Phần mềm:Phần logic bao gòm hệ điều hành va chương trình ứng dụng(do người sử dụng viết)chương trình được lưu trữ trong bộ nhớ bằng mã nhị phân của máy tính.Một chương trình viết bằng ngôn ngữ máy là 1 chuỗi các byte nhị phân biểu diễn các lệnh mã máy tính thực hiện được.Hợp ngữ thay thế các mã nhị phân của ngôn ngữ máy bằng các mã gợi nhớ giúp ta dễ nhớ hơn và dễ lập trình hơn

BTL bao gồm:

CHƯƠNG 1: Giới thiệu họ vi điều khiển 8051

1.1 Cấu trúc phần cứng

1.2 Sơ đồ chân và chức năng từng chân

CHƯƠNG 2: Ứng dụng đo khoảng thời gian giữa 2 xung ( f < 1000 Hz )

2.1 Mạch tạo xung sử dụng time 555

2.2 Giới thiệu về LCD

2.3 Lưu đồ thuật toán

2.4 Mạch đo và chương trình hợp ngữ

Chuyên nghành: i Đ ện Tự Động-CN 2 Đại Học Hàng Hải

Trang 3

CH ƯƠ NG 1: GI ỚI THIỆU HỌ VI I Đ ỀU KHIỂN 8051

1.1 Cấu trúc phần cứng

Đặc điểm và chức năng hoạt động của các IC họ MSC-51 hoàn toàn

tương tự như nhau Ở đây giới thiệu IC8951 là một họ IC vi điều khiển do hãng

Intel của Mỹ sản xuất Chúng có các đặc điểm chung như sau:

Các đặc điểm của 8951 được tóm tắt như sau :

8951:

Trang 4

SERIAL PORT TIMER 0 TIMER 1

UPT REGIST

CPU

BUS CONTRO OSCILAT

EA\

RS

128 byte ROM RAM 4K:

8051\80 8031

128 byte 4K:

RAM 8051

I/O PORT

ALE\

PSEN P 0 P 1 P 2 P 3

\ Address\Data

TIMER 2 TIMER1 TIMER1

SERIA

L PORT

TXD Chuyên nghành: i Đ ện Tự Động-CN 3 Đại Học Hàng Hải

Trang 5

40

GND

VCC

5v

+ C3 10MF

R3 10K

12M C4 30P

C4 30P

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Y2 19

5v

U4

P1.0 P0.0/AD0 P1.1 P0.1/AD1 P1.2 P0.2/AD2 P1.3 P0.3/AD3 P1.4 P0.4/AD4 P1.5 P0.5/AD5 P1.6 P0.6/AD6 P1.7 P0.7/AD7 RST

EA/VPP P3.0/RXD ALE/PROG P3.1/TXD PSEN P3.2/INT0

P3.3/INT1 P3.4/T0 P2.7/A15 P3.5/T1 P2.6/A14 P3.6/WR P2.5/A13 P3.7/RD P2.4/A12

P2.3/A11 XTAL2 P2.2/A10 XTAL1 P2.1/A9

P2.0/A8

AT89C51

39 38 37 36 35 34 33 32

31 30 29

28 27 26 25 24 23 22

21

- 8951 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

Trang 6

ạ m Thanh Bình - L ớ p: T 50- H2 Đ Đ Đ

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

r 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ị ngoà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 ngoài

r Port 2 :

- 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

r 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:

Tín hiệu ghi dữ liệu lên bộ nhớ ngoài Tín hiệu đọc bộ nhớ dữ liệu ngoài

b Các ngõ tín hiệu điều khiển :

r 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

r Ngõ tín hiệu điều khiển ALE (Address Latch Enable ) :

- Khi 8951 truy xuất bộ nhớ bên ngoà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 ở chân thứ 30 dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và dữ liệu khi kết nối chúng với IC chốt

Chuyên nghành: i Đ ện Tự Động-CN 5 Đại Học Hàng Hải

Trang 7

- Tín hiệu ra ở chân ALE là một xung trong khoảng thời gian port 0 đóng vai trò là địa chỉ thấp nên chốt địa chỉ hoàn toàn tự động

Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên chip và có thể được dùng làm tín hiệu clock cho các phần khác của hệ thống Chân ALE được dùng làm ngõ vào xung lập trình cho Eprom trong 8951

r Ngõ tín hiệu EA\(External Access):

- Tín hiệu vào EA\ ở chân 31 thường được mắc lên mức 1 hoặc mức 0 Nếu ở

mức 1, 8951 thi hành chương trình từ ROM nội trong khoảng địa chỉ thấp 8 Kbyte Nếu ở mức 0, 8951 sẽ thi hành chương trình từ bộ nhớ mở rộng Chân EA\ được lấy làm chân cấp nguồn 21V khi lập trình cho Eprom trong 8951

r Ngõ tín hiệu RST (Reset) :

-Ngõ vào RST ở chân 9 là ngõ vào Reset của 8951 Khi ngõ vào tín hiệu này đưa lên cao ít nhất là 2 chu kỳ máy, các thanh ghi bên trong được nạp những giá trị thích hợp để khởi động hệ thống Khi cấp điện mạch tự động Reset

r Các ngõ vào bộ dao động X1, X2:

- Bộ dao động được tích hợp bên trong 8951, khi sử dụng 8951 người thiết kế chỉ cần kết nối thêm thạch anh và các tụ như hình vẽ trong sơ đồ Tần số thạch anh thường sử dụng cho 8951 là 12Mhz

r Chân 40 (Vcc) được nối lên nguồn 5V

Trang 8

ạ m Thanh Bình - L ớ p: T 50- H2 Đ Đ Đ

2 XUNG ( F < 1000 HZ )

2.1 Mạch tạo xung dùng Time 555:

Chu kỳ xung :

T = ln2 *(R1 + 2*R2)*C1

Thời gian xung ở mức thấp:

2.2 Giới thiệu về LCD

2.2.1 Hoạt động của LCD:

Trong những năm gần đây LCD đang ngày càng được sử dụng rộng rãi thay thế dần cho các đèn LED (các đèn LED 7 đoạn hay nhiều đoạn) Đó là vì các nguyên nhân sau:

đèn LED (vì các đèn LED chỉ hiển thị được các số và một số ký tự)

CPU công việc làm tươi LCD Trong khi đèn LED phải được làm tươi

Chuyên nghành: i Đ ện Tự Động-CN 7 Đại Học Hàng Hải

Trang 9

bằng CPU (hoặc bằng cách nào đó) để duy trì việc hiển thị dữ liệu

2.2.2 Mô tả các chân của LCD:

LCD được nói trong mục này có 14 chân, chức năng của các chân được cho trong bảng Vị trí của các chân được mô tả trên hình vẽ cho nhiều LCD khác nhau

1 Chân VCC, VSS và VEE: Các chân VCC, VSS và VEE: Cấp dương nguồn - 5v và đất tương ứng thì VEE được dùng để điều khiển độ tương phản của LCD

2 Chân chọn thanh ghi RS (Register Select)

Có hai thanh ghi rất quan trọng bên trong LCD, chân RS được dùng để chọn các

thanh ghi này như sau: Nếu RS = 0 thì thanh ghi mà lệnh được chọn để cho phép

người dùng gửi một lệnh chẳng hạn như xoá màn hình, đưa con trỏ về đầu dòng v.v… Nếu RS = 1 thì thanh ghi dữ liệu được chọn cho phép người dùng gửi dữ

liệu cần hiển thị trên LCD

3 Chân đọc/ghi (R/W)

Đầu vào đọc/ ghi cho phép người dùng ghi thông tin lên LCD khi R/W = 0 hoặc đọc thông tin từ nó khi R/W = 1

4 Chân cho phép E (Enable)

Chân cho phép E được sử dụng bởi LCD để chốt thông tin hiện hữu trên chân dữ liệu của nó Khi dữ liệu được cấp đến chân dữ liệu thì một xung mức cao xuống thấp phải được áp đến chân này để LCD chốt dữ liệu trên các chân dữ liêu Xung này phải rộng tối thiểu là 450ns

5 Chân D0 - D7

Đây là 8 chân dữ liệu 8 bít, được dùng để gửi thông tin lên LCD hoặc đọc nội dung của các thanh ghi trong LCD

Để hiển thị các chữ cái và các con số, chúng ta gửi các mã ASCII của các chữ cái từ A đến Z, a đến f và các con số từ 0 - 9 đến các chân này khi bật RS =

1

Cũng có các mã lệnh mà có thể được gửi đến LCD để xoá màn hình hoặc đưa con trỏ về đầu dòng hoặc nhấp nháy con trỏ Chúng ta cũng sử dụng RS = 0 để kiểm tra bít cờ bận để xem LCD có sẵn sàng nhân thông tin Cờ bận là D7 và có thể đượcđọc khi R/W = 1 và RS = 0 như sau:

Nếu R/W = 1, RS = 0 khi D7 = 1 (cờ bận 1) thì LCD bận bởi các công việc

bên trong và sẽ không nhận bất kỳ thông tin mới nào Khi D7 = 0 thì LCD sẵn sàng

nhận thông tin mới Lưu ý chúng ta nên kiểm tra cờ bận trước khi ghi bất kỳ dữ liệu

nào lên LCD

2.2.3 Gửi các lệnh và dữ liệu đến LCD với một độ trễ:

*) Các mã lệnh LCD:

Trang 10

ạ m Thanh Bình - L ớ p: T 50- H2 Đ Đ Đ

Để gửi một lệnh bất kỳ đến LCD ta phải đưa chân RS về 0 Đối với dữ liệu thì bật RS = 1 sau đó gửi một sườn xung cao xuống thấp đến chân E để cho phép chốt dữ liệu trong LCD Điều này được chỉ ra trong đoạn mã chương trình dưới đây

2.2.4 Gửi mã lệnh hoặc dữ liệu đến LCD có kiểm tra cờ bận

Đoạn chương trình trên đây đã chỉ ra cách gửi các lệnh đến LCD mà không có kiểm tra cờ bận (Busy Flag) Lưu ý rằng chúng ta phải đặt một độ trễ lớn trong quá ảtình xuất dữ liệu hoặc lệnh ra LCD Tuy nhiên, một cách tốt hơn nhiều là hiển thị cờ bận trước khi xuất một lệnh hoặc dữ liệu tới LCD Dưới đây là một chương trình như vậy

Lưu ý rằng trong chương trình cờ bận D7 của thanh ghi lệnh Để đọc thanh ghi lệnh ta phải đặt RS = 0, R/W = 1 và xung cao - xuống - thấp cho bít E để cấp thanh ghi lệnh cho chúng ta Sau khi đọc thanh ghi lệnh, nếu bít D7 (cờ bận) ở mức cao thì LCD bận và không có thông tin (lệnh) nào được xuất đến nó chỉ khi nào D7 = 0 mới có thể gửi dữ liệu hoặc lệnh đến LCD Lưu ý trong phương phát này không sử dụng độ trễ thời gian nào vì ta đang kiểm tra cờ bận trước khi xuất lệnh hoặc dữ liệu lên LCD

Chuyên nghành: i Đ ện Tự Động-CN 9 Đại Học Hàng Hải

Trang 11

D7 14 D6 13 D5 12 D4 11 D3 10 D2 9 D1 8 D0 7 E 6 RW 5 RS 4 VSS 1 VDD 2 VEE 3

GND 1

VCC 8

Begin

Cho phep ngat

suon xuong

INT0

Khoi tao LCD

T0, che do 1

Here :

End

C4

CRYSTAL 19 XTAL1

C3

18 XTAL2

30uF

9 RST

29 PSEN 30

ISR_INT0 :

TH0 = 0 TL0 = 0 TR0 = 1

S INT0 = 1

D TR0 = 0

doc TH0,TL0

ra LCD

RETI

LCD1

LM016L

R3 R4 R5

10k 10k 10k

P0.0/AD0 39 P0.1/AD1 3837 P0.2/AD2 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P2.0/A8 2122 P2.1/A9P2.2/A10 23 P2.3/A11 24

31

1 3 5 7

ALE P2.4/A12

EA P2.5/A13

P2.6/A14P2.7/A15 P1.0 P3.0/RXD P1.1 P3.1/TXD P1.2 P3.2/INT0 P1.3 P3.3/INT1 P1.4 P3.4/T0 P1.5 P3.5/T1 P1.6 P3.6/WR P1.7 P3.7/RD

AT89C51

26 28 10 11

12 R1

13

100k U1

15

3 Q R 4 17

7 DC C1

CV 5

6 TH TR 2

555

C2

1uF

Trang 12

ạ m Thanh Bình - L ớ p: T 50- H2 Đ Đ Đ

#INCLUDE <SFR51.INC>

ORG 0H

LJMP MAIN

ORG 03H

MOV TMOD, #01

MOV TL0, #0H

MOV TH0, #0H

SETB TR0

JNB P3.2, $

CLR TR0

CLR TF0

MOV R0, TL0

MOV R1, TH0

MOV R2, #10H

MOV R3, #27H

LCALL DIV16

MOV A, R0

ORL A, #30H

LCALL HIENTHI

LCALL TRE

MOV A, R2

MOV R0, A

MOV A, R3

MOV R1, A

MOV R2, #0E8H

MOV R3, #3H

LCALL DIV16

MOV A, R0

ORL A, #30H

LCALL HIENTHI

LCALL TRE

MOV A, R2

MOV R0, A

MOV A, R3

MOV R1, A

MOV R2, #64H

MOV R3, #0H

LCALL DIV16

MOV A, R0

Chuyên nghành: i Đ ện Tự Động-CN 11 Đại Học Hàng Hải

Trang 13

ORL A, #30H

LCALL HIENTHI

LCALL TRE

MOV A, R2

MOV R0, A

MOV A, R3

MOV R1, A

MOV R2, #0AH

MOV R3, #0H

LCALL DIV16

MOV A, R0

ORL A, #30H

LCALL HIENTHI

LCALL TRE

MOV A, R2

ORL A, #30H

LCALL HIENTHI

LCALL TRE

MOV A, #'u'

LCALL HIENTHI

LCALL TRE

MOV A, #'S'

LCALL HIENTHI

LCALL TRE

SJMP $

MAIN:

MOV IE, #10000001B

SETB TCON.0

MOV A,#38H

LCALL XLENH

LCALL TRE

MOV A,#0EH

LCALL XLENH

LCALL TRE

SJMP $

XLENH:

MOV P2, A

CLR P0.5

;LCD 5X7 , 2 dong

;BAI HIEN THI VA NHAP NHAY CON TRO

Trang 14

ạ m Thanh Bình - L ớ p: T 50- H2 Đ Đ Đ

CLR P0.6

SETB P0.7

CLR P0.7

RET

HIENTHI:

MOV P2, A

SETB P0.5

CLR P0.6

SETB P0.7

CLR P0.7

RET

TRE:

MOV TMOD, #20H

MOV TH1, #0DEH

SETB TR1

LAP:

JNB TF1,LAP

CLR TR1

CLR TF1

RET

;CHE DO 2, TIMER 1

;========================================================

DIV16:

ANL PSW, #0E7H

MOV A, R3

ORL A, R2

JNZ DIV_OK

SETB C

RET

DIV_OK:

PUSH DPL

PUSH DPH

PUSH B

ACALL CR0R1

ACALL CR2R3

ACALL UDIV16

ACALL MR0R1

CLR C

POP B

POP DPH

POP DPL

RET

CR0R1:

Chuyên nghành: i Đ ện Tự Động-CN 13 Đại Học Hàng Hải

Trang 15

MOV A, R1

JB ACC.7, C0A

RET

C0A:

SETB 21H

MOV A, R0

CPL A

ADD A, #1

MOV R0, A

MOV A, R1

CPL A

ADDC A, #0

MOV R1, A

RET

CR2R3:

MOV A, R3

JB ACC.7, C1A

RET

C1A:

SETB 22H

MOV A, R2

CPL A

ADD A, #1

MOV R2, A

MOV A, R3

CPL A

ADDC A, #0

MOV R3, A

RET

UDIV16:

MOV R7, #0

MOV R6, #0

MOV B, #16

DIV_LOOP:

CLR C

MOV A, R0

RLC A

MOV R0, A

MOV A, R1

RLC A

Trang 16

ạ m Thanh Bình - L ớ p: T 50- H2 Đ Đ Đ

MOV R1, A

MOV A, R6

RLC A

MOV R6, A

MOV A, R7

RLC A

MOV R7, A

MOV A, R6

CLR C

SUBB A, R2

MOV DPL, A

MOV A, R7

SUBB A, R3

MOV DPH, A

CPL C

JNC DIV_1

MOV R7, DPH

MOV R6, DPL

DIV_1:

MOV A, R4

RLC A

MOV R4, A

MOV A, R5

RLC A

MOV R5, A

DJNZ B, DIV_LOOP

MOV A, R5

MOV R1, A

MOV A, R4

MOV R0, A

MOV A, R7

MOV R3, A

MOV A, R6

MOV R2, A

RET

MR0R1:

RET

MR0R1B:

RET

Chuyên nghành: i Đ ện Tự Động-CN 15 Đại Học Hàng Hải

Trang 17

MR0R1A:

MOV A, R0

CPL A

ADD A, #1

MOV R0, A

MOV A, R1

CPL A

ADDC A, #0

MOV R1, A

RET

END

Trang 18

ạ m Thanh Bình - L ớ p: T 50- H2 Đ Đ Đ

Kết Luận

Tới đây việc thiết kế đã hoàn thành Do khả năng bản thân còn hạn hẹp , thời gian có hạn nên bài tập thiết kế không tránh khỏi những sai sót Mong Thầy và các bạn góp ý để các bài tập lớn lần sau em ngày càng hoàn chỉnh Em xin chân thành cảm ơn!

Chuyên nghành: i Đ ện Tự Động-CN 17 Đại Học Hàng Hải

Trang 19

Tài liệu tham khảo:

2 Cấu trúc và lập trình họ vi điều khiển 8051 - Tác giả: Nguyễn

Ngày đăng: 25/12/2013, 18:20

HÌNH ẢNH LIÊN QUAN

Sơ đồ khối của - : ỨNG DỤNG ĐO KHOẢNG THỜI GIAN GIỮA 2 XUNG ( F < 1000 HZ )
Sơ đồ kh ối của (Trang 3)

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