1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Thiết kế bộ đo tần số hiển thị màn hình máy tính sử dụng vi điều khiển 89s52

19 891 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 19
Dung lượng 1,11 MB

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

Nội dung

1. Thiết kế bộ đo tần số hiển thị bằng màn hình máy tính .Yêu cầu:Mạch điện tử được thiết kế trên máy tính bằng phần mềm chuyên dụng.Tần số đo đ¬ược truyền lên máy tính và hiển thị bằng phần mềm tiện ích Hyper Terminal.Sai số cho phép: ± 5%Hệ thống có chuyển mạch để đo 3 dải tần số khác nhau nhằm đảm bảo độ chính xác (dải 1 từ 10Hz đến 100Hz; dải 2 từ 100Hz đến 500Hz; dải 3 từ 1KHz đến 5KHz).Hệ thống có kèm theo 01 bộ tạo xung với các tần số tư¬ơng ứng 3 dải trên.

Trang 1

1

B Ộ CÔNG THƯƠNG TRƯ Ờ NG Đ Ạ I H Ọ C CÔNG NGHI Ệ P HÀ N Ộ I

KHOA CƠ KHÍ

Đ Ồ ÁN MÔN H Ọ C VI ĐI Ề U KHI Ể N

VÀ GHÉP N Ố I MÁY TÍNH

Đ Ề TÀI : 16 – THI Ế T K Ế B Ộ ĐO T Ầ N S Ố

Gi áo viên hư ớ ng d ẫ n: NGUY Ễ N ANH DŨNG

L ớ p: CƠ ĐI Ệ N T Ử 3

Trang 2

2

LỜI NÓI ĐẦU Trong thời đại công nghệ phát triển mạnh mẽ, các thiết bị số đang có vai trò quan trọng đối với công nghiệp và đời sống con người và đang dần chiếm ưu thế về

số lượng và chủng loại Công nghệ số được ứng dụng trong nhiều lĩnh vực trong cuộc sống, chủ yếu làm các nhiệm vụ chính như: đo lường,điều khiển cơ cấu máy, truyền thong giữa các thiết bị…tạo sự tiện dụng cho cong người khi sử dụng các thiết

bị điện tử

Với tính ưu việt của vi điều khiển đối với các hệ thống vừa và nhỏ thực hiện một hoặc nhiều quá trình, trong đồ án này hệ thống vi điều khiển được dùng trong một lĩnh vực thường gặp khi nói đến vi điều khiển: đếm sự kiện Một trong những ứng dụng của nó trong thực tế là phần đếm sản phẩm trong các dây truyền công nghiệp ngày nay Đồ án này có thể cải tiến thêm nhiều chức năng nữa cho phù hợp với những dây truyền hiện đại và mục đích sử dụng của mạch như liên kết với cơ cấu

để có thể xếp đủ sản phẩm vào một thùng, hay đếm số thùng trong một lô hàng, nó cũng có thể lưu lại dữ liệu của một ca làm việc tiện cho việc kiểm tra bảo mật…

Đồ án đã được thực hiện nhằm làm rõ hơn bản chất của vi điều khiển đối với việc điều khiển một quá trình và bản chất cấu thành của một hệ thống vi điều khiển

Từ kiến thức đã học đồng thời tham khảo thêm thong tin từ nhiều nguồn cùng với sự trợ giúp của thầy cô và bạn bè, tuy vậy với vốn kiến thức có hạn không tránh khỏi những thiếu xót khi thực hiện Mong các thầy cô và mọi người góp ý cho đè tài này thêm hoàn chỉnh

Qua đây, xin cảm ơn thầy giáo Nguyễn Anh Dũng đã giúp chúng em thực hiện đồ án này

Xin cảm ơn!

Trang 3

3

PHẦN 1: CƠ SỞ LÍ THUYẾT

1 8051 VÀ PHIÊN BẢN CỦA NÓ:

a: 8051 :

Năm 1981 Intel giới thiệu bộ vi điều khiển 8051 Bộ vi điểu khiển này có 128 byte RAM, 4 kbyte ROM, hai bộ định thời , một cổng nối tiếp, bốn cổng vào/ra song song ( độ rộng 8 bit ) tất cả được đặt trên 1 chip 8051 là bộ xử lý 8 bit, tức là CPU chỉ có thể làm việc với 8 bit dữ liệu tại 1 thời điếm Dữ liệu lớn hơn 8 bit được chia thành các dữ liệu 8 bit để xử lý

b: Các đặc tính của họ 8051

c : Phiên bản AT 8951 từ Atmel Corporation:

AT8951 là phiên bản 8051 có ROM trên chip ở dạng bộ nhớ Flash Phiên bản này

lý tưởng đối với những phát triển nhanh vì bộ nhớ Flash có thể được xoá trong vài giây

Hãng Atmel đã cho ra đời một phiên bản của AT 89C51 có thể lập trình qua cổng truyền thông COM của máy tính IBM PC

Trang 4

4

Một số phiên bản cua Atmel:

AT89C51 4kbyte 128kbyte 32 2 6 5V 40chân, 2hàng AT89C52 8kbyte 128kbyte 32 3 8 5V 40chân, 2hàng

AT89S52 la 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 ISP trên chip giúp người sử dụng có thể dễ dàng thực hiện các bài thí nghiệm với chi phí thấp

Bộ VDK At89S52 gồm các khối chức năng chính :

-CPU( centralprocessing unit)

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

nhớ dữ liệu ( RAM) gồm 256 byte

-Bộ UART ( Universal Asnchronous Receiver/ Transmitter),AT89S52 có thể giao tiếp với cổng nối tiếp của máy tính thông qua bộ UART

-3 bộ Timer/Counter 16 bit thực hiện các chức năng định thời và đếm sự kiện -WDT ( wait dog timer) :dùng để phục hồi hoạt động của CPU khi nó bị treo bởi một nguyên nhân nào đó

-Khối điều khiển ngắt với hai nguồn ngắt ngoài và 4 nguồn ngắt trong

-Bộ lập trình (ghi chương trình lên Flash ROM cho phép người sử dụng có thể nạp các chương trình cho chip mà không cần các bộ nạp chuyên dụng

-Bộ chia tần số với hệ số là 12

-4Cổng xuất nhập với 32 chân

Trang 5

5

SƠ ĐỒ CHÂN CỦA 89C52/89S52:

U1

3938 P0.0/AD0 P2.0/A8 2122

37 P0.1/AD1 P2.1/A9 23

36 P0.2/AD2 P2.2/A10 24

35 P0.3/AD3 P2.3/A11 25

34 P0.4/AD4 P2.4/A12 26

33 P0.5/AD5 P2.5/A13 27

32 P0.6/AD6 P2.6/A14 28 P0.7/AD7

P2.7/A15

12 P1.0/T2 P3.0/RXD 1011

34 P1.2P1.1/T2-EXP3.2/P3.1/TXDINT0

1213

56 P1.4P1.3 P3.3/INT1P3.4/T0 1415

78 P1.6P1.5 P3.6/P3.5WR/T1 1617 P1.7 P3.7/RD

1918 XTAL1 ALE/PROG 3029 XTAL2 PSEN

319 EA/VPP RST

Sơ đồ chân /chức năng các chân của AT89S52:

Tất cả các port đều có chức năng xuất nhập ,Gồm 8 chân, ngoài ra chúng còn có chức năng riêng như:

*port0 ( p0.0-p0.7):

Port0 còn là bus đa hợp dữ liệu và địa chỉ

*Port1 ( P1.0-1.7):

Ba chân P1.5, P1.6,P1.7 được dùng đẻ nạp ROM theo tiêu chuẩn ISP; hai chân P1.0 và P1.1 được dùng cho bộ timer 2 *Port 2 ( P2.0-2.7):

Nó còn là byte cao của bus địa chỉ khi sử dụng bộ nhớ ngoài

*Port3( P3.0-3.7):

Trang 6

6

Chức năng riêng như sau:

*RST ( reset ):

Ngõ vào reset trên chân 9 là ngõ reset của 8501 Khi tín hiệu này được đua lên mức cao , các thanh ghi trong bộ vi điều khiển được tải những giá trị thích hợp để khởi động hệ thống

*XTAL1,XTAL2:

AT89S52 có 1 bộ dao động trên chip , nó thường được nối với bộ dao động thạch anh có tần số 12MHz

*Vcc,GND:

Trang 7

7

AT89S52 dùng nguồn 1 chiều có dải điện áp từ 4V đến 5,5V được cấp qua chân 40

và 20

TỔ CHÚC BỘ NHỚ:

BỘ nhớ chương trình:

AT89S52 có 8kbyte Flash ROM trên chip, tín hiệu điều khiển đọc ROM là tind hiệu /PSEN

Bộ nhớ dữ liệu :

AT89S52 có 256kbyte RAM nội :

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

-RAM địa chỉ hoá từng bit có địa chỉ từ 20H đến 2FH

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

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

MẠCH TẠO DAO ĐỘNG VÀ RESET:

*Mach tạo dao động:

AT89S52 có 1 bộ chia tần số bên trong chip bộ này sẽ cấp xung clock cho các khối trên chip từ nguồn dao động bên ngoài qua 2 chân XTAL1,XTAL2

Mach RESET:

Có 4 cách để reset AT89S52 lần lượt là :

+Reset khi cấp nguồn

Trang 8

8

+Reset bởi WDT

+Reset bằng phần mềm

+Rsset bằng mạch ngoài qua chân RST

Trong một hệ thống gồm nhiều vi mạch khả trình thì mạch reset tích hợp cả hai cách RESET khi bật nguồn và bởi mạch ngoài thường dược sử dụng:

Trang 9

9

MẠCH TẠO XUNG SỬ DỤNG LM555:

Khi ta thay đổi biến trở thi xung clock tu chan 3 tao ra xung vuông cung thay đổi theo ( tần số thay đổi) cung cấp vao chân 14( T0) của vi điều khiển

Trang 10

10

MAX232 và cổng COM:

Như ta đã biết ,bộ vi điều khiển AT89S52 có khả năng giao tiếp với thế giới bên ngoài thông qua cổng nối tiếp Vấn đề trở ngai duy nhất khi giao tiếp với máy tính

là mức logic ở bộ vi điều khiển và cổng COM của máy tính khác nhau, cụ thể như sau;

Khắc phục vấn đề này người ta sử dụng vi mạch MAX232 để chuyển đổi mức điện áp giữa 2 chuẩn Vi mạch này có chứa hai bộ chuyển đổi mức logic từ TTl sang RS232 và ngược lại , tức là:

Vì tín hiệu cổng COM thường ở mức +12V, -12V nên không tương thích với điện

áp TTL nên để giao tiếp Vi điều khiển 8051 với máy tính qua cổng COM ta phải qua một vi mạch biến đổi điện áp cho phù hợp với mức TTL, ta chọn vi mạch MAX232 để thực hiện việc tương thích điện áp

Trang 11

11

Hình sau la vd về mạch giao tiếp giữa vdk với máy tính qua cổng RS232C sử dụng

vi mạch đổi mức MAX232

Cổng nối tiếp RS232 là một giao diện phổ biến rộng rãi nhất Người ta còn gọi cổng này là cổng COM1, còn cổng COM2 để tự do cho các ứng dụng khác

Việc truyền dữ liệu qua cổng COM được tiến hành theo cách nối tiếp Nghĩa là các bit dữ liệu được truyền đi nối tiếp nhau trên một đường dẫn

Trang 12

12

Cổng COM không phải là một hệ thống bus nó cho phép dễ dàng tạo ra liên kết dưới hình thức điểm với điểm giữa hai máy cần trao đổi thông tin với nhau, một thành viên thứ ba không thể tham gia vào cuộc trao đổi thông tin này

* Các chân và đường dẫn được mô tả như sau:

Chân Ký hiệu Ý nghĩa

1 DCD Tín hiệu phát hiện mang dữ liệu

2 RcD Nhận dữ liệu

3 TxD truyền dữ iệu

4 DTR Dữ liệu đầu cuối sẵn sàng

5 GND Nối đất

6 DSR Dữ liệu sẵn sàng được gửi

7 RTS Tín hiệu yêu cầu gửi

8 CTS Tín hiệu yêu cầu xoá để gửi tiếp

9 RI Ring indicatior

Trên thực tế có hai loại phích cắm, một loại 9 chân và một loại 25 chân

Việc truyền dữ liệu xảy ra ở trên hai đường dẫn Qua chân cắm ra TXD máy tính gởi dữ liệu của nó đến Vi điều khiển Trong khi đó các dữ liệu mà máy tính nhận được, lại được dẫn đến chân RXD các tín hiệu khác đóng vai trò như là tín hiệu hổ

Trang 13

13

trợ khi trao đổi thông tin, và vì thế không phải trong mọi trường hợp ứng dụng đều dùng hết

Điện áp quy định với mưc logic 1 nẳm trong khoảng từ -3V đến -12V ; mức logic 0

là +3V đến +12V

-Tốc độ truyền dữ liệu đươc quy định chuẩn gồm các tốc độ sau; 300, 600, 1200,

2400, 4800, 9600,19200, 28800, và 56600 baud

-Độ dài cực đại của cáp kết nối là 15m(trong trường hợp không có các bộ đệm bộ lặp)

-Trên máy tính có the có 4 cổng nối tiếp Nhưng thường chỉ có 2 cổng gọi là cổng Com1 và Com2

Địa chỉ của các cổng nối tiếp như sau:

-Cổng Com1: địa chỉ cơ bản 3F8H

-Cổng Com2: địa chỉ cơ bản 2F8H

Ở máy tính PC thường có một bộ phát/nhận không đồng bộ vạn năng (gọi tắt là - UART: Universal Asnchronous Receiver/ Transmitter) để điều khiển sự trao đổi thông tin giữa máy tính và các thiết bị ngoại vi

Hình ảnh của MAX232:

Trang 14

14

CÁC THANH GHI CỦA CỔNG NỐI TIẾP:

-Có hai thanh ghi chức năng đặc biệt cho phép phần mềm truy xuất đến cổng nối tiếp là SBUF và SCON

*SCON: thanh ghi điều khiển cổng nối tiếp

chứa các bit điều khiển và trang thái Các bit điều khiển đặt chế độ hoạt động cho cổng nối tiếp, các bit trạng thái báo cáo kết thúc phát hoặc thu 1 ký tự

*SBUF:thanh ghi đệm truyền nhận ở cổng nối tiếp

chức nang đệm các ký tự khi chúng nhận về từ cổng nối tiếp hoặc được truyền từ cổng nối tiếp

CÁC THANH GHI CỦA BỘ ĐỊNH THỜI:

Trang 15

15

*Thanh ghi của timer 0,1:

-TMOD: Thanh ghi chế độ định thời ,chứa hai nhóm bốn bit dùng để đặt chế độ làm việc cho Timer0và1

-TCON: Thanh ghi điều khiển Timer,chứa các bit trạng thái và các bit điều khiển cho

Timer0và1

*Thanh ghi của timer 2:

-T2CON : chứa các bit điều khiển cho Timer2

-T2MOD:chúa 2 bit DCEN vàT2OE cho phép Timer2 hoạt động nhu1 bộ đếm lùi

hoặc để tạo xung

Thanh ghi TH2 và TL2 , RCAP2L, RCAP2H:chứa giá trị đếm của timer2

NGUỒN XUNG CLOCK:

-Nguồn xung clock cấp cho các bộ định thời có thể lấy từ ngoài qua các chân T0,

T1, T2 lần lượt cho các bộ Timer0, Timer1, Timer2 hoặc lấy từ bộ chia tần trên chip với tần số là 1/12 tần số của bộ dao động thạch anh tuỳ vào bit C/#T đối với bài này chúng ta lấy nguồn xung từ con LM555cung cấp vào chân T0

TỔ CHỨC NGẮT Ở AT89S52:

AT89S52 có 6 nguồn ngắt :

-Ngắt ngoài từ chân #INT0

-Ngắt ngoài từ chân #INT1

Trang 16

16

-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

Các nguồn ngắt này được xoá khi reset và được đặt riêng bằng phần mềm bởi các

bit trong các thanh ghi cho phép ngắt (IE), thanh ghi ưu tiên ngắt (IP)

CHƯƠNG TRÌNH CHÍNH:

#include <REGX52.H>

#include <STDIO.H> //tao thu vien unsigned int xung,dem,ts;

void ngatngoai_0 (void) interrupt 0

{ xung++;

}

void ngat_timer_0 (void) interrupt 1 //ngat timer 0 che do 1

{

TR0=0;

TH0=(65536-46082)/256;

TL0=(65536-46082)%256; dem++;

if(dem==20) //dem tan so trong 1s

Trang 17

17

{ ts=xung;

dem=0;

xung=0;

printf("tanso = %d\n",ts); //in ra man hinh

}

TR0=1;

} void main

(void)

{

SCON=0x52; //port noi tiep

IE=0x83; //ngat cho timer 1 va 0

IT0=1;

TMOD=0x21;

TH1=TL1=256-3; //toc do baud 9600

TH0=(65536-46082)/256;

TL0=(65536-46082)%256;

while(1) //vong lap

{ }

}

II

M

Trang 18

18

C

H

M

Ô

P

H

N

G

Trang 19

19

Ngày đăng: 24/01/2015, 20:32

HÌNH ẢNH LIÊN QUAN

SƠ ĐỒ CHÂN CỦA 89C52/89S52: - Thiết kế bộ đo tần số hiển thị màn hình máy tính sử dụng vi điều khiển 89s52
89 C52/89S52: (Trang 5)
Hình sau la vd về mạch giao tiếp giữa vdk với máy tính qua cổng RS232C sử dụng - Thiết kế bộ đo tần số hiển thị màn hình máy tính sử dụng vi điều khiển 89s52
Hình sau la vd về mạch giao tiếp giữa vdk với máy tính qua cổng RS232C sử dụng (Trang 11)

TỪ KHÓA LIÊN QUAN

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

w