ĐỒ ÁN VI ĐIỀU KHIỂN: MẠCH BÁO GIỜ DÙNG TRONG MÔN CHƠI TỐC ĐỘ - Pdf 95


Mục lục

Trang

Lời mở đầu 2

Lời cảm ơn 4

Nhận xét của giáo viên hướng dẫn 6

Nhận xét của giáo viên phản biện 8

Chương I: CƠ SỞ LÝ THUYẾT 10

1. Họ Vi điều khiển 8051 và IC 89V51RB2/RC2/RD2 10

1.1 Giới thiệu khái quát họ vi điều khiển MSC – 51 10

1.2. Vi điều khiển 89V51RB2/RC2/RD2 10

1.3. Ngôn ngữ lập trình hợp ngữ 8051 42

2.Điện trở 48

2.1.Khái nệm 48

2.2.Cách đọc điện trở 48

3. Tụ điện 49


Tài liệu tham khảo 70

Lời mở đầu

Hiện nay, máy vi tính đã và đang được sử dụng rộng rãi và phổ biến
trong xã hội cũng như trong công nghiệp. Với lợi thế là tốc độ xử lý
nhanh, có thể xử lý hàng tỷ phép tính trong một giây, nó đã và đang
mang đến những thay đổi to lớn trong khoa học và công nghệ cũng
như trong đời sống hàng ngày. Từ việc giúp soạn thảo văn bản, tính
toán các bảng biểu, chơi game… đến việc dùng để điều khiển các dây
chuyển công nghiệp hiện đại. Ngày nay, các thiết bị máy móc ngày
càng trở nên thông minh, tự động hóa cao, các công việc được thực
hiện với hiệu quả cao… thì máy tính trở thành bộ phận không thể
thiếu.

Đối với sinh viên chuyên ngành điện tử, đây là một lĩnh vực mới, hứa
hẹn và mở ra nhiều triển vọng. Để góp phần tạo nền tảng ban đầu cho
việc học tập, tìm hiểu về ứng dụng máy tính trong điều khiển, chúng
tôi xin đề nghị thực hiện đề tài: “Mạch báo giờ dùng trong môn chơi
cờ tốc độ”.

Trong quá trình thực hiện đề tài này, mặc dù chúng tôi đã rất cố gắng,
xong chắc chắn không tránh khỏi những thiếu sót. Rất mong nhận sự
góp ý, phê bình và chỉ dẫn của quí thầy cô và bạn đọc.

Sinh viên thực hiện

Nguyễn Bá Nghĩa

Đỗ Xuân Linh

TÊN ĐỀ TÀI :

MẠCH BÁO GIỜ DÙNG TRONG MÔN CHƠI CỜ TỐC ĐỘ

Nhận xét của giáo viên phản biện

Sinh viên thực hiện : Nguyễn Bá Nghĩa

Đỗ Xuân Linh

Lớp : NCDT1B

Giáo viên hướng dẫn : Nguyễn Văn Cường

TÊN ĐỀ TÀI :

MẠCH BÁO GIỜ DÙNG TRONG MÔN CHƠI CỜ TỐC ĐỘ

Chương I
CƠ SỞ LÝ THUYẾT

1. Họ Vi điều khiển 8051 và IC 89V51RB2/RC2/RD2

1.1 Giới thiệu khái quát họ vi điều khiển MSC – 51

MCS – 51 là một họ vi điều khiển do Intel phát triển và sản xuất. Một
số nhà sản xuất được phép cung cấp các IC tương thích với các sản
phẩm MCS – 51 của Intel là Siemens, Advanced Micro Devices, Fujitsu,
Philips, Atmel… Vi mạch tổng quát của họ MSC – 51 là chip 8051


trên chip
Số bộ định thời
(bộ đếm)
8031
8051
8751
8951
0KB
4KB PROM
4KB UV – EPROM
4KB FLASH ROM
128 byte
128 byte
128 byte
128 byte
2
2
2
2
8032
8052
8752
8952
0KB
8KB PROM
8KB UV – EPROM
8KB FLASH ROM
256 byte
256 byte
256 byte


– 16/32/64 kB bộ nhớ chương trình trên chip với tính năng ISP (In-System
Programming) và IAP (In-Application Programming)

– Sử dụng chế độ 12 chu kì xung nhịp (mặc định) hoặc 6 chu kỳ xung nhịp
được chọn bằng phần mềm hoặc ISP


– SPI (Serial Peripheral Interface) và tăng cường
UART

– 5 PCA (Programmable Counter Array) với chức
năng PWM / capture/ compare 16bits.

– 4 Port I/O (xuất nhập) 8 bit. 3 Port có dòng lớn
(16mA trên mỗi chân)

– 3 Timers/Couters 16 bit

– Watchdog Timer có thể lập trình được

– 8 nguồn ngắt với 4 mức độ ưu tiên.

– 2 thanh ghi DPTR

– Chế độ IEM mức thấp

– Thích hợp mức Logic của TTL và CMOS

– Phát hiện nguồn yếu

– Port 1: (P1.0 đến P1.7) có số chân từ 1 đến 8, Port xuất / nhập.

Port 1 là một port xuất/nhập song hướng 8 bit có các điện trở pullup
bên trong. Các bộ đệm ngõ ra của port 1 có thể kéo hoặc cung cấp 4
ngõ nhập TTL. Khi mức 1 được viết vào các chân của port 1, chúng
được kéo lên cao bởi các điện trở pullup nội và có thể được dùng
như là các ngõ nhập. Nếu đóng vai trò là các ngõ nhập, các chân của
port 1 (được kéo xuống thấp qua các điện trở bên ngoài) sẽ cấp dòng
IIL do các điện trở pullup bên trong. P1.5, P1.6, P1.7 có dòng điều
khiển ra cao 16mA.

Port 1 cũng đóng vai trò là ngõ vào của địa chỉ byte thấp ở chế độ lập
trình cho ROM và kiểm tra.


– P1.0 – T2 (Chân xuất / nhập): Ngõ vào đếm của Timer/ Counter 2 hoặc ngõ ra
xung (Clock out) từ Timer/ Counter 2.

– P1.1 – T2EX (Chân nhập): Điều khiển hướng và khởi động timer/ Counter 2 ở
chế độ Capture/reload.

– P1.2 – ECI (Chân nhập): Ngõ vào xung nhịp. Tín hiệu này là nguồn xung nhịp
ngoài cho chức năng PCA.

– P1.3 – CEX0 (Chân xuất / nhập): Ngõ xuất nhập (I/O) bên ngoài của
Capture/compare cho PCA Module 0.

– P1.4 (Chân xuất / nhập):

+ : Chọn cổng phụ vào cho SPI.

2 (được kéo xuống qua các điện trở bên ngoài) sẽ cấp dòng IIL do có
các điện trở pullup bên trong.

Port 2 là địa chỉ byte cao của khi đọc từ bộ nhớ chương trình ngoài và
khi truy cập bộ nhớ dữ liệu ngoài dùng các địa chỉ 16 bit (MOVX
@DPTR). Ở chế độ này, nó dùng các điện trở pullup nội "mạnh" khi
phát ra các mức 1.

Port 2 cũng nhận các bit cao của địa chỉ và một vài tín hiệu điều khiển
khi lập trình và kiểm tra bộ nhớ ROM.

– Port 3 (P3.0 đến P3.7) có số chân từ 10 đến 17, Port xuất / nhập

Port 3 là một port xuất-nhập song hướng 8 bit có điện trở pullup nội
bên trong. Các bộ đệm ngõ ra của port 3 có thể kéo hoặc cung cấp 4
ngõ vào TTL. Khi các mức 1 được viết vào các chân của port 3 thì
chúng được kéo lên cao bởi các điện trở pullup nội và có thể được
dùng như các ngõ vào. Khi được dùng như các ngõ vào, các chân của
port 3 (được kéo xuống qua các điện trở bên ngoài) sẽ cấp dòng IIL do
có các điện trở pullup bên trong.

Port 3 cũng nhận một số tín hiệu điều khiển và một phần bit địa chỉ
cao trong quá trình lập trình và kiểm tra.

– P3.0 – RXD (Chân nhập): Ngõ vào của Port nối tiếp.

– P3.1 – TXD (Chân xuất): Ngõ ra của Port nối tiếp.

– P3.2 – (Chân nhập): Ngõ vào ngắt ngoài 0.


– (External Access Enable): Chân 31, chân nhập


Chân phải được kết nối với điện áp VSS khi cho phép vi điều khiển truy cập mã từ
bộ nhớ chương trình bên ngoài. phải được đưa lên điện áp VDD khi thực thi
chương trình bên trong. Tuy nhiên, khóa bảo vệ level 4 sẽ vô hiệu hóa , chương
trình thực thi chỉ chương thực hiện từ bộ nhớ chương trình bên trong. Chân có thể
chịu đựng điện áp đến 12V.

– (Address Latch Enable): Chân 30, chân xuất / nhập.

ALE là tín hiệu ngõ ra để chốt byte thấp của địa chỉ trong khi truy cập bộ nhớ ngoài.
Chân này cũng là ngõ nhập xung lập trình () khi lập trình Flash.

Khi hoạt động bình thường, ALE được phát với một tỷ lệ không đổi là 1/6 tần số bộ
dao động và có thể được dùng cho các mụch đích timing và clocking bên ngoài.
Một xung ALE sẽ bị bỏ qua mỗi khi truy cập bộ nhớ dữ liệu ngoài. Tuy nhiên, nếu
AO được đưa lên mức 1 sẽ vô hiệu hóa chân .

– XTAL1 và XTAL2: chân 18 và 19

XTAL1 và XTAL2 là hai ngõ vào và ra của một bộ khuếch đại dao động nghịch được
cấu hình để dùng như một bộ dao động trên chip.

– VDD và VSS: Chân nguồn và chân Gound của Vi điều khiển.

1.2.3 Tổ chức bộ nhớ

89V51RB2/RC2/RD2 có bộ nhớ theo cấu trúc Harvard: có những vùng bộ nhớ riêng
biệt cho chương trình và dữ liệu. Như đã nói ở trên, cả chương trình và dữ liệu có

truy xuất theo kiểu trực tiếp hoặc gián tiếp.

+ Vùng RAM định địa chỉ bit: gồm 128 bit được định địa chỉ. Địa chỉ
truy xuất từ 20H đến 2FH. Kiểu truy xuất dữ liệu là trực tiếp, hoặc
gián tiếp hoặc theo từng bit. Vùng RAM này cho phép xử lý từng bit
dữ liệu riêng lẻ mà không ảnh hưởng đến các bit khác trong Byte.

+ Các dãy thanh ghi: gồm 4 dãy thanh ghi, mỗi thanh ghi chứa 8
thanh ghi. Địa chỉ truy xuất từ 00H đến 1FH. Kiểu truy xuất dữ liệu là
trực tiếp, gián tiếp và thanh ghi. Vùng này cho phép truy xuất dữ liệu
nhanh, lệnh truy xuất đơn giản và ngắn gọn. Ở chế độ mặc định thì
dãy thanh ghi tích cực là dãy thanh ghi 0. Có thể thay đổi dãy tích
cực bằng cách thay đổi các bit chọn dãy thanh ghi RS1 và RS0 trong
thanh ghi PSW. Nếu chương trình chỉ sử dụng dãy thanh ghi 0 thì ta
có thể sử dụng vùng nhớ từ 08H đến 1FH cho các mục đích khác.
Nhưng nếu trong chương trình có sử dụng các dãy thanh ghi khác
thì phải cẩn thận khi sử dụng vùng nhớ này làm vùng nhớ dữ liệu.

này làm vùng nhớ dữ liệu.

Hình 1.4 – Tổ chức bộ nhớ
Thanh ghi Dãy 0 Dãy 1 Dãy 2 Dãy 3
R0 00H 08H 10H 18H
R1 01H 09H 11H 19H
R2 02H 0AH 12H 1AH
R3 03H 0BH 13H 1BH
R4 04H 0CH 14H 1CH
R5 05H 0DH 15H 1DH
R6 06H 0EH 16H 1EH
R7 07H 0FH 17H 1FH

1.2.4.5 Thanh ghi PSW (program status word)
D0H
D7H D6H D5H D4H D3H D2H D1H D0H
CY AC F0 RS1 RS0 OV F1 P
– Cờ CY (Carry flag): Cờ nhớ, báo có nhớ hoặc mượn từ bit 7. CY = 0 nếu không có
nhớ từ bit 7 hoặc mượn tại bit 7. CY = 1 nếu có nhớ từ bit 7 hoặc mượn từ bit 7.
– Cờ AC (Auxiliary Carry Flag): cờ nhớ phụ, báo có nhớ hoặc mượn tại bit 3. AC =
0 nếu không có nhớ từ bit 3 hoặc mượn tại bit 3. CY = 1 nếu có nhớ từ bit 3hoặc mượn
từ bit 3.
– RS0, RS1 (Register Select): Bit chọn dãy thanh ghi, cho phép xác định dãy thanh
ghi tích cực.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status