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

ĐỒ án AMPEMETER HIỂN THỊ máy TÍNH

33 148 0

Đ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 33
Dung lượng 1,02 MB

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

Nội dung

Thêm vào đú, tùy theo từng loại mà các chip dẫn xuất được tích hợp thêm các ngoại vi khác nhau như ADC, SPI, EEPROM, capture/compare channels…, tính năng cũng được nâng cao để phù hợp vớ

Trang 1

Khoa Cơ khí

Lời nói đầu.

Trường ĐH công nghiệpHà Nội tiền thân là trường cao đẳng công nghiệp Hà Nội được hình thành và phát triển với một bề dầy lịch sử, là cái nôi đào tạo công nhân kĩ thuật cao Cùng với sự phát triển và đi lên của nhà trường, khoa Điện tử -Tự động hóa măc dù là một khoa mới được thành lập nhưng đã đóng góp không nhỏ vào thành công của nhà trường

Trong thời đại ngày nay đất nước ta đang trên đường hội nhập quốc tế đặc biệt

là hội nhậpWTO Đất nước ta đang trên đà phát triển mạnh mẽ để bắt kịp thế giới chúng ta phải thực hiện chính sách đi tắt đón đầu Như chúng ta đã biết thế kỷ 21 là thế kỷ của công nghệ thông tin và tự động hóa cả hai ngành này đều liên quan mật thiết đến Điện tử.

Ngành công nghiệp Điện tử đang phát triển rất mạnh mẽ trên thế giới ở những nước công nghiệp phát triển ,ở nước ta điện tử là một ngành thực sự là mới mẻ nhưng được nhà nước quan tâm đặc biệt

Vi Điều Khiển là môn học trực thuộc bộ môn điện tử công nghiệp, TBĐKCN đã

và đang dần được số hóa Được sự phân công và hướng dẫn của thầy Nguyễn Anh Dũng, nhóm em gồm:Lê Đình Sơn , Nguyễn Đức Long, Phan Ngọc Hùng đã nghiên cứu đề tài về điều khiển ampemet hien thi trên màn hình máy tính Mặc dù cố gắng rât nhiều trong việc tìm hiểu tài liệu và được sự hướng dẫn nhiệt tình của thầy giáo nhưng do còn nhiều hạn chế nên không tránh khỏi những thiếu sót về tài liệu, về ngôn ngữ, cách trình bày

Chúng em rất mong được thông cảm và góp ý của thầy.

Cuối cùng chúng em xin chân thành cảm ơn!

Hà Nội Ngày: 28/01/2010

Nhóm sinh viên:

Lê Đình Sơn.

Nguyễn Đức Long Phan Ngọc Hùng

Giíi thiÖu tæng quan vÒ hä 8051

Trang 2

giống với vi điều khiển 8051 kinh điển Thêm vào đú, tùy theo từng loại mà các chip dẫn xuất được tích hợp thêm các ngoại vi khác nhau (như ADC, SPI, EEPROM, capture/compare channels…), tính năng cũng được nâng cao để phù hợp với các ứng dụng ngày càng phức tạp.

Trước hết xin giới thiệu một số tớnh năng của họ vi điều khiển 8051 (lưu ý là những tớnh năng này là của vi điều khiển 8051 kinh điển):

- CPU 8bit được thiết kế tối ưu cho các ứng dụng điều khiển

- Cỏc khả năng xử lý bit logic

- Khụng gian bộ nhớ chương trỡnh 64Kbyte

- Khụng gian bộ nhớ dữ liệu 64 Kbyte

- Tớch hợp 4Kbyte bộ nhớ chương trình trên chip

- Tớch hợp 128byte bộ nhớ RAM trên chip

- Có 32 đường vào/ra 2 chiều có thể định địa chỉ đến từng bit

- Tớch hợp 02 timer 16bit

- Tớch hợp UART song công

- Cấu trúc ngắt với 06 nguồn/05 vector ở 02 mức ưu tiên khỏc nhau

- Tớch hợp mạch bộ dao động trờn chip

Vi điều khiển đợc giới thiệu ở đây đợc sản xuất theo công nghệ CMOS Một số loại vi điều khiển thông dụng thuộc họ 8051 có thể kể ra nh: AT89C2051( 20 chân), AT89C4051( 20 chân), AT89C51( 40 chân), AT89C52

Trang 3

Khoa Cơ khớ

Sau đây là sơ đồ khối tổng quan của 8051

I-Cấu trúc phần cứng họ 8051( AT 89S52)

Trang 4

Sơ đồ chân AT 89S52

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)

- Từ trạng thái chơng trình( PSW: Progam Status Word)

- 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ôn 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

Trang 5

Khoa Cơ khớ

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( WDT programable) điều khiển Timer 7 bit và một thanh ghi chớc năng WDTRST( 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ên tiếp vào thanh ghi WDTRST Timer 14 bit của WDT sẽ đếm tăng dần sau mỗ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ần cứng và reset do WDT tràn thì không có cách nào cấm đợc WDT, vì vậy khi sử dụng WDT thì các đoạn mã chơng trình phải đợc đặt trong các khe thời gian từ khi giữa các lần WDT đợc khởi tạo lại

Trang 6

Hình: Sơ đồ khối của bộ vi điều khiển 89S52

Trang 8

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 đợc dùng cho bộ Timer 2

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ác thiết kế dùng bộ nhớ mở rộng

Trang 9

Khoa Cơ khớ

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.0 RXD Dữ liệu nhận cho port nối tiếpP3.1 TXD Dữ liệu phát cho port nối tiếpP3.2 INT0 Ngắt 0 bên ngoài

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

P3.4 T 0 Ngõ vào của Timer/Counter 0P3.5 T 1 Ngõ vào của Timer/Counter 1P3.6 WR Xung ghi bộ nhớ dữ liệu bên ngoài

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

Trang 10

5 RST( Reset- chân 9):

Mức tích cực của chân này là mức 1, để reset ta phải đa mức 1(5V) đến chân này với thời gian tối thiểu 2 chu kỳ máy( tơng đơng 2uS

đối với thạch anh 12MHz

Trạng thái của các thanh ghi khi reset, khi reset thì trạng thái của các thanh ghi không thay đổi

6.XTAL1, XTAL2:

Trang 11

Khoa Cơ khớ

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ức thấp, chơng trinh 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

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

Trang 12

AT89S52 có 8Kb Flash Rom trên chip, khi chân EA( Chân 31) đợc

đặt ở mức logic cao(+5V), bộ vi điều khiển sẽ thực hiện chơng trình trong ROM nội bắt đầu từ địa chỉ 0000H Số lần ghi cho bộ nhớ này khoảng

1000 lần( trên lý thuyết)

Khi chân EA đợc đặt ở mức thấp, bộ vi điều khiển sẽ thực hiên

ch-ơng trình ở bộ nhớ chch-ơng trình ngoài (EPROM ngoài), tuy nhiên để có ợc

điều này thì phải có một mạch phối ghép AT89S52 với EPROM đợc lựa chọn

Hình dới là một vi mach chốt (Latch) sẽ tách riêng bus đa hợp địa chỉ và dữ liệu AD0- AD7; Tuỳ theo dung lợng của EPROM sẽ có số đờng

địa chỉ tơng ứng đợc dung; EPROM đợc đọc nhờ tín hiệu PSEN

`

Trang 13

Khoa Cơ khớ

2 Bộ nhớ dữ liệu

AT89S52 có 256 bytes RAM nội đợc phân chia nh sau:

Các bank thanh ghi có địa chỉ từ 00H đến 1FH:

32 byte thấp của bộ nhớ nội đợc dành cho các bank thanh ghi Bộ lệnh AT89S52 hỗ trợ 8 thanh ghi có tên là R0-R7 và theo mặc định sau khi reset hệ thống, các thanh ghi này có các địa chỉ từ 00H đến 07H

Các lệnh dùng các thanh ghi R0-R7 sẽ ngắn hơn và nhanh hơn so với các lệnh có chức năng tơng ứng dùng kiểu địa chỉ trực tiếp Các dữ liệu đ-

ợc dung thờng xuyên nên dùng một trong các thanh ghi này

89S52

P2

ALEP0

PSEN #

Flash EPRROMA15:8

A7:0

D7:0OELatch

Trang 14

của các bộ vi điều khiển nói chung Các bit có thể đợc đặt xoá, AND, OR , với một lệnh đơn.

RAM đa dụng từ 30H đến FFH.

Các thanh ghi chức năng đặc biệt từ 80H đến FFH:

3 Bộ nhớ dữ liệu ngoài:

Trang 15

Khoa Cơ khớ

Sơ đồ ghép nối AT89S52 với RAM

Bộ nhớ dữ liệu ngoài là bộ nhớ RAM đợc đọc hoặc ghi bởi tín hiệu /RD và WR Các RAM có thể giao tiếp với AT89S52 tơng tự cách thức nh EPROM ngoại trừ chân /RD của AT89S52 nối với chân /OE của RAM và chân /WR của AT89S52 nối với chân /WE của RAM

Nếu có nhiều vi mạch RAM hoặc ROM sùng đợc ghép nối với AT89S52 thì có thể dùng thêm vi mạch giải mã 74LS138

4 Các thanh ghi chức năng

• Từ trạng thái chơng trình( PSW: Program Status Word)

• Thanh ghi B

• Con trỏ ngăn xếp SP( Stack pointer)

• Con trỏ dữ liệu DPTR( Data poiner)

• Các thanh ghi Port( Port register)

• Các thanh ghi của các bộ Timer( Timer register)

• Các thanh ghi Port nối tiếp(Serial Port register)

Port 0EAALE

Port 289S52

RD

WR

D0-D7A0-A7

RAMA8-A15

OEWE

74HC373

O DG

Trang 16

AT89S52 có một bộ chia tần số trong chip, bộ này sẽ cấp xung clock cho các khối bên trong chip từ nguồn dao động bên ngoài qua 2 chân XTAL1 và XTAL2 Tụ gốm có trị số từ 27pF -33pF để ổn định làm việc cho thạch anh, thờng dùng loại 33pF

Trang 18

IV- Hoạt động định thời

AT89S52 có 3 timer 16 bits, mỗi timer có 4 chế đọ hoạt động Ngời

ta sử dụng các timer để: Định khoảng thời gian đếm sự kiện hoặc tạo tốc

độ baud cho port nối tiếp

Trong các ứng dụng định khoảng thời gian, ngời ta lập trình timer ở một khoảng đều đặn và đặt cờ tràn timer Cờ đợc dùng để đồng bộ hoá ch-

ơng trình để thực hiện một tác động nh kiểm tra trạng thái của các ngõ vào hoặc gửi các sự kiện ra các ngõ ra Các ứng dụng khác có thể sử dụng việc tạo xung nhịp đều đặn của timer để đo thời gian trôi qua giữa 2 sự

Trang 19

1 Các thanh ghi của bộ định thời(Timer 0,1)

+ Thanh ghi chế độ Timer( TMOD)

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

Chế độ cho Timer 1

Chế độ cho Timer 0GATE

M0M1=00 : Timer 13 bit, mode 0

=01 : Timer 16 bit, mode 1

=10 : Timer 8 bit nạp tự động, mode 2

=11 : Timer tách riêng, mode 3GATE=0: Hoạt động của Timer bị điều khiển bởi mức Logic ở chân /INT

=1: Hoạt động của Timer không bị điều khiển bởi mức Logic ở chân /INT

2 Các thanh ghi điều khiển Timer(Timer 0,1)

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

Trang 20

4 Các chế độ của bộ đinh thời

Timer 2 ở chế độ Capture( thu nhận)

Trang 21

Khoa Cơ khớ

Timer 2 ở chế độ tự nạp lại ( DCEN=1)

Trang 22

Timer 2 tạo tốc độ baud

Trang 23

Khoa Cơ khớ

Timer 2 trong chế độ clock-out

V- POrt nối tiếp

AT89S52 có một port nối tiếp trong chip có thể hoạt động ở nhiều chế độ khác nhau, nhiều tốc độ khác nhau Chức năng chủ yếu của một port nói tiếp là thực hiện chuyển đổi song song sang nối tiếp với dữ liệu xuất ra và chuyển đổi nói tiếp sang song song với dữ liệu nhập để có thể giao tiếp với máy tính qua cổng nối tiếp hoặc các thiết bị tơng tự

Mô tả hoạt động của Port nối tiếp

Port nối tiếp có thể hoạt động song công( full duplex: thu và phát

đồng thời) và đệm lúc thu( receiver buffering) cho phép một kí tự sẽ đợc

Máy Cổng

tính COM

AT89S52

Bộ chuyển

đổi mức

Trang 24

xuất đến Port nối tiếp: SBUF và SCON.

Thanh ghi điều khiển Port nối tiếp( SCON- Serial Controller).

Thanh ghi điều khiển Port nối tiếp SCON ở địa chỉ 98H là thanh ghi có điịnh địa chỉ bit, chứa các bit trạng thái và các bit để đièu khiển liên quan tới port nối tiếp Các bit điều khiển đặt chế độ hoạt động cho Port nối tiếp, các bit trạng thái báo cáo kết thúc việc phát hoặc thu một ký tự Các bit trạng thái có thể đợc kiểm tra bằng phần mềm hoặc có thể đợc lập trình để tạo ngắt

Bit Ký hiệu Địa chỉ Mô tả

SCON.7 SM0 9FH Mode 1-Bit 0 chọn chế độ cho Port nối tiếp

SCON.6 SM1 9EH Mode 1-Bit 1 chọn chế độ hoạt động cho

SM0SM1=00: Port nối tiếp hoạt động ở chế độ 0

SM0SM1=01: Port nối tiếp hoạt động ở chế độ1

SM0SM1=10: Port nối tiếp hoạt động ở chế độ2

Trang 25

SCON.3 TB8 9BH Transmitted bit 8-Bit truyền thứ 9 sử dụng

SCON.2 RB8 9AH Receiver bit 8- Bit nhận thứ 9 trong sử

SCON.1 TI 99H Transmitted Interupt- Cờ ngắt truyền, TI

2.Trao đổi dữ liệu qua Port nối tiếp

Thao tác trao đổi dữ liệu qua port nối tiếp không đơn thuần chỉ là việc ghi/đọc dữ liệu nh trao đổi dữ liệu trực tiếp qua các port(chẳng hạn P1, P2,4 ) mà nó bao gồm 3 thao tác cính nh sau:

- Khởi tạo cổng nối tiếp: Thao tác này bao gồm các việc nh sau:

+ truy xuất SCON để đặt các thông số nh chế độ hoạt động, cho phép thu

+Thiết lập hoặc xoá bit SMOD của thanh ghi PCON để đặt

hệ số chia của tốc độ baud

Trang 26

-Ngắt ngoàiđến từ chân /INT0-Ngắt ngoàiđến từ chân /INT1-Ngắt do bộ Timer 0

-Ngắt do bộ Timer 1-Ngắt do bộ Timer 2-Ngắt do Port nối tiếp

6 nguồn ngắt này đợc xoá khi Reset và đợc đặt bằng phần mềm bởi các bit trong thanh ghi cho phép ngắt (IE), thanh ghi u tiên ngắt (IP)

Thanh ghi cho phép ngắt IE ( Interrupt Enable):

Bit 1: Cho phép

Bit 0: Cấm

toàn bộ

tiếp

Trang 27

Khoa Cơ khớ

Các nguồn ngắt của AT89S52

Các vector ngắt:

Khi một ngắt nào đó đợc chấp nhậ, giá trị đợc nạp vào PC

đ-ợc gọi là vector ngắt Nó là địa chỉ bắt đầu của chơng trình con phục vụ ngắt ISR( Interrupt Service Routine) tơng ứng với nguồn tạo ngắt.Các vector ngắt đợc cho liệt kê nh sau:

Reset hệ thống

Bên ngoài 0

RSTIE0

0000H

Trang 28

Timer 2 TX2 hoặc EXF2 002BH 5

Khi chỉ đến một ngắt, cờ gây ngắt tự động bị xoá bởi phần cứng, ngoại trừ RI và TI phải đợc xoá bằng phần mềm

1 Ngắt do các bộ Timer

Các ngắt do các bộ timer xảy ra do có sự kiện tràn ở các timer, khi đó các cờ tràn TFx sẽ đợc đặt bằng 1 Khi ISR đợc đáp ứng, các cờ TFx sẽ tự động đợc xoá bằng phần mềm

2 Ngắt do Port nối tiếp

Ngắt do port nối tiếp xảy ra khi hoặc cờ ngắt phát (TI) hoặc cờ ngắt thu(RI) đợc đặt lên 1 Ngắt phát xảy ra khi bộ đệm truyền rỗng, ngắt thu xảy ra khi một ký tự đã đợc truyền xong và đang đợi trong SBUF để đ-

ợc đọc

Các ngắt do Port nối tiếp khác với các ngắt do Timer Cờ gây ra ngắt cho port nối tiếp không thể xoá bằng phần cúng khi CPU chuyển tới ISR do có 2 nguồn ngắt do port nối tiếp la TI và RI, nguồn ngắt phải đợc xác định trong ISR và cờ tạo ngắt sẽ đợc xoá bằng phần mềm

3 Ngắt ngoài

Các ngắt ngoài xảy ra khi có một mức thấp hoạc cạnh xuống trên chân /INT0 hoặc /INT1 của vi điều khiển

Các cờ tạo ngắt này là các bit IE0 và IE1 trong TCON Khi quyền

đièu khiển đã chuyển đến ISR, cờ tạo ra ngắt chỉ đợc xoá nếu ngắt đợc

Trang 29

để đảm bảo cho CPU phát hiện ra cạnh xuống Nếu ngằt ngoài đợc tác

động theo mức thì nguồn bên ngoài phải giữ tín hiệu yêu cầu tác động trên chân ĩNT( mức thấp) cho đến khi ngắt đợc đáp ứng và không tác

động( giữ ở mức thấp) nữa khi ISR đã đợc hoàn tất, nếu không một ngắt khác sẽ đợc lặp lại

Phần IIMẠCH ampemet hiển thị màn hình máy tính

I Mạch đợc thiết kế bằng phần mềm vẽ mạch Altium Designer v9.về cơ bản mạch đo dòng điện đợc thiết kế nh sau: phần phân áp đầu vào để lấy

điện áp phù hợp đa vào chíp ADC0804 chuyển điện áp tơng tụ sang số 8bit.sau đó đa dữ liệu vào VDK8051 rồi tình toán phù hợp và hiển thị giá trị đo đợc lên màn hình máy tính bằng tiện ích window HyperTeminal qua cổng com.sau đây là sơ đồ nguyên lí của mạch :

Phần phân áp :

Ngày đăng: 05/01/2016, 16:04

HÌNH ẢNH LIÊN QUAN

Sơ đồ chân AT 89S52 - ĐỒ án AMPEMETER HIỂN THỊ máy TÍNH
Sơ đồ ch ân AT 89S52 (Trang 4)
Sơ đồ ghép nối AT89S52 với RAM - ĐỒ án AMPEMETER HIỂN THỊ máy TÍNH
Sơ đồ gh ép nối AT89S52 với RAM (Trang 15)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w