Tải bản đầy đủ (.docx) (35 trang)

BÁO CÁO THIẾT KẾ MẠCH TẠO XUNG 38KHZ BẰNG IC AT89C52 TRONG PROTEUS

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.1 MB, 35 trang )

BỘ CÔNG AN
TRƯỜNG ĐẠI HỌC KỸ THUẬT – HẬU CẦN CAND

BÁO CÁO
THIẾT KẾ MẠCH TẠO XUNG 38KHZ
BẰNG IC AT89C52 TRONG PROTEUS
Giáo viên hướng dẫn: Thạc sĩ Nguyễn Văn Tài
Sinh viên thực hiện: - Chu Việt Thành
- Nguyễn Văn Biên
- Trịnh Văn Thái
- Vũ Mạnh Duy
- Lê Rin
Nhóm 9
Trung đội: B4 – D1

Bắc Ninh, 2014
MỤC LỤC NỘI DUNG



MỤC LỤC HÌNH

MỤC LỤC BẢNG


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

LỜI NÓI ĐẦU
Mạch tạo xung là một mạch điện tử cơ bản và quang trọng trong kỹ thuật


điện tử cũng như trong sản xuất công nghiệp. Là một mạch điện không thể thiếu
trong sản xuất máy thu hình, đài FM….
Mạch tạo xung cũng là mạch điện tử cơ bản thường được giao cho sinh
viên thiết kế, trong các môn thực hành cũng như đồ án ở các trường đại học, cao
đẳng giúp sinh viên nắm được những bước cơ bản trong thiết kế một mạch điện
tử thực tế và qua đó cũng làm cho sinh viên hiểu rõ hơn nguyên lý hoạt động của
các mạch điện tử nói chung và mạch tạo xung nói riêng. Mạch tạo xung là một
khối thiết yếu trong hầu hết các mạch điện tử thông dụng và đặc biệt là trong
truyền thông, nó đóng vai trò là khối nguồn chủ đạo cung cấp xung nguồn cho
các khối điều chế và xử lý tín hiệu sau đó. Như vậy việc nghiên cứu mạch tạo
xung sẽ có ý nghĩa thiết thực cho sinh viên chuyên nghành điện tử viễn thông và
đồng thời là một kiến thức cơ bản mà sinh viên điện tử cần phải nắm bắt.
Từ những nghiên cứu và học tập nhóm chúng em đã xây dựng bài báo cáo
môn học kỹ thuật mô phỏng và phân tích tín hiệu trên máy: sử dụng phần mềm
proteus thiết kế mạch tạo xung sử dụng IC AT89C52.

NHÓM 9 – B4D1B

Page 4


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

CHƯƠNG I. TÌM HIỂU VỀ IC AT89C52
I.

KHÁI QUÁT VỀ IC AT89C52
1. Giới thiệu chung

AT89C52 là họ IC vi điều khiển do hãng Atmel sản xuất. Các sản phẩm

AT89C52 thích hợp cho những ứng dụng điều khiển. Việc xử lý trên byte và các
toán số học ở cấu trúc dữ liệu nhỏ được thực hiện bằng nhiều chế độ truy xuất
dữ liệu nhanh trên RAM nội. Tập lệnh cung cấp một bảng tiện dụng của những
lệnh số học 8 bit gồm cả lệnh nhân và lệnh chia. Nó cung cấp những hổ trợ mở
rộng trên chip dùng cho những biến một bit như là kiểu dữ liệu riêng biệt cho
phép quản lý và kiểm tra bit trực tiếp trong hệ thống điều khiển.
2. Một số đặc tính
AT89C52 cung cấp những đặc tính chuẩn như: 8Kbyte bộ nhớ chỉ đọc có
thể xóa và lập trình nhanh (EPROM), 128 Byte RAM, 32 đường I/O, 3 TIMER/
COUNTER 16 Bit, 5 vectơ ngắt có cấu trúc 2 mức ngắt, một Port nối tiếp bán
song công, 1 mạch dao động tạo xung Clock và bộ dao động ON-CHIP.
Các đặc điểm của chip AT89C52 được tóm tắt như sau:
- 8 KByte bộ nhớ có thể lập trình nhanh, có khả năng tới 1000 chu kỳ ghi/x
-

oá.
Tần số hoạt động từ: 0 Hz đến 24 MHz
bộ Timer/counter 16 Bit
128 Byte RAM nội.
4 Port xuất /nhập I/O 8 bit.
Giao tiếp nối tiếp.
64 KB vùng nhớ mã ngoài
64 KB vùng nhớ dữ liệu ngoại.

NHÓM 9 – B4D1B

Page 5



TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND
II.

2014

CẤU HÌNH
1. Sơ đồ khối

Hình 1. Sơ đồ khối AT89C52

2. Sơ đồ chân.
Mặc dù các thành viên của họ 89C52 (ví dụ 8751, 89S52, 80C51, DS5000)
đều có các kiểu đóng vỏ khác nhau, CFP (Quad Flat Pakage) và dạng chip không
có chân đỡ LCC (Leadless Chip Carrier) chúng đều có 40 chân cho các chức
năng khác nhau như vào ra I/O, đọc RD giới hạn như hai hàng chân DIP (DualIn
- LinePakage), dạng vỏ dẹt vuông QPF, ghi WR, địa chỉ, dữ liệu và ngắt. Cần
phải lưu ý một số hãng cung cấp một phiên bản 89C52 có 20 chân với số cổng
vào ra ít hơn cho các ứng dụng yêu cầu thấp hơn. Tuy nhiên vì hầu hết các nhà
phát triển sử dụng chíp đóng vỏ 40 chân với hai hàng chân DIP nên ta chỉ tập
trung mô tả phiên bản này.

NHÓM 9 – B4D1B

Page 6


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014


Chức năng của các chân AT89C52
- Port 0: từ chân 32 đến chân 39 (P0.0 ÷ P0.7). Port
chức năng: 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 với thiết kế lớn có bộ nhớ
mở rộng nó được kết hợp giữa bus địa chỉ
và bus dữ liệu.

0 có 2

- Port 1: từ chân 1 đến chân 9 (P1.0 ÷ P1.7).
Port 1 là port IO dùng cho giao tiếp với thiết
bị bên ngoài nếu cần.
- Port 2: từ chân 21 đến chân 28 (P2.0 ÷
P2.7). Port 2 là một port có tác dụng kép 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.

Hình 2. Sơ đồ các chân AT89C52

- Port 3: từ chân 10 đến chân 17 (P3.0 ÷ P3.7). Port 3 là port có tác dụng kép.
Các chân của port này có nhiều chức năng, có công dụng chuyển đổi có liên hệ
đến các đặc tính đặc biệt của AT89C52 như trong bảng 1:
Bit

Tên

Chức năng chuyển đổi


P3.0

RXD

Ngõ vào dữ liệu nối tiếp.

P3.1

TXD

Ngõ xuất dữ liệu nối tiếp.

P3.2

INT0

Ngõ vào ngắt cứng thứ 0.

P3.3

INT1

Ngõ vào ngắt cứng thứ 1.

P3.4

T0

Ngõ vào TIMER/ COUNTER thứ 0


P3.5

T1

Ngõ vào của TIMER/ COUNTER thứ 1

P3.6

WR

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

P3.7

RD

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

Bảng 1. Chức năng chuyển đổi của các chân P3.0 ÷ P3.7

- PSEN (Program store enable): PSEN là tín hiệu ngõ ra có tác dụng cho phép
đọc bộ nhớ chương trình mở rộng và thường được nối đến chân OE của Eprom
NHÓM 9 – B4D1B

Page 7


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND


2014

cho phép đọc các byte mã lệnh. PSEN ở mức thấp trong thời gian AT89C52 lấy
lệnh. Các mã lệnh của chương trình được đọc từ Eprom qua bus dữ liệu, được
chốt vào thanh ghi lệnh bên trong AT89C52 để giải mã lệnh. Khi AT89C52 thi
hành chương trình trong ROM nội, PSEN ở mức cao.
- ALE (Address Latch Enable): Khi AT89C52 truy xuất bộ nhớ bên ngoài, Port
0 có chức năng là bus địa chỉ và 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. Tín hiệu ở 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.
- 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ức1, AT89C52 thi hành chương trình từ ROM nội. Nếu ở
mức 0, AT89C52 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 AT89C52.
- RST (Reset): Khi ngõ vào tín hiệu này đưa lên mức cao ít nhất 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 phải tự động reset. Các giá trị tụ và điện trở được chọn là:
R1=10Ω, R2=220Ω, C=10 µF được mô tả trong hình 3

Hình 3. Sơ đồ chân RST
- Các ngõ vào bộ dao động X1, X2: Bộ tạo dao động được tích hợp bên trong
89C52. Khi sử dụng 89C52, người ta chỉ cần nối thêm thạch anh và các tụ. Tần
số thạch anh tùy thuộc vào mục đích của người sử dụng, giá trị tụ thường được
chọn là 33p.

NHÓM 9 – B4D1B

Page 8



TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Hình 4. Ngõ vào bộ dao động
3. Các chế độ đặc biệt
- Chế độ nghỉ:
Trong chế độ nghỉ, CPU tự đi vào trạng thái ngủ trong khi tất cả các ngoại
vi bên trong chip vẫn tích cực. Chế độ này được điều khiển bởi phần mềm. Nội
dung của RAM trên chip và của tất cả các thanh ghi chức năng đặc biệt vẫn
không đổi trong khi thời gian tồn tại chế độ này. Chế độ nghỉ có thể được kết
thúc bởi một ngắt bất kỳ nào được phép hoặc bằng cách reset cứng.
Ta cần lưu ý rằng khi chế độ nghỉ được kết thúc bởi một reset cứng, chip vi
điều khiển sẽ tiếp tục bình thường việc thực thi chương trình từ nơi chương trình
bị tạm dừng, trong vòng 2 chu kỳ máy trước khi giải thuật reset phần mềm nắm
quyền điều khiển.
Ở chế độ nghỉ, phần cứng trên chip cẫm truy xuất RAM nội nhưng cho
phép truy xuất các chân của các port. Để tránh khả năng có một thao tác ghi
không mong muốn đến một chân port khi chế độ nghỉ kết thúc bằng reset, lệnh
tiếp theo yêu cầu chế độ nghỉ không nên là lệnh ghi đến chân port hoặc đến bộ
nhớ ngoài.
- Chế độ nguồn giảm:
Trong chế độ này, mạch dao động ngừng hoạt động và lệnh yêu cầu chế độ
nguồn giảm là lệnh sau cùng được thực thi. RAM trên chip và các thanh ghi
chức năng đặc biệt vẫn duy trì các giá trị của chúng cho đến khi chế độ nguồn
giảm kết thúc. Chỉ có một cách ra khỏi chế độ nguồn giảm, đó là reset cứng.
Việc reset sẽ xác định lại các thanh ghi chức năng đặc biệt nhưng không
làm thay đổi RAM trên chip. Việc reset không nên xảy ra (chân reset ở mức tích

cực) trước khi Vcc được khôi phục lại mức điện áp bình thường và phải kéo dài
trạng thái tích cực của chân reset đủ lâu để cho phép mạch dao động hoạt động
trở lại và đạt trạng thái ổn định.
NHÓM 9 – B4D1B

Page 9


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Trạng thái của các chân trong thời gian tồn tại chế độ nghỉ và chế độ nguồn
giảm được cho trong bảng 2
Chế
độ

Bộ nhớ
ALE PSEN

Chương
trình

PORT
O

PORT
1

PORT

2

PORT
3

Nghỉ

Bên trong

1

1

Dữ liệu

Dữ liệu

Dữ liệu

Dữ liệu

Nghỉ

Bên ngoài

1

1

Thả nổi


Dữ liệu

Dữ liệu

Dữ liệu

Nguồn

Bên trong

0

0

Dữ liệu

Dữ liệu

Dữ liệu

Dữ liệu

giảm

Bên ngoài

0

0


Thả nổi

Dữ liệu

Dữ liệu

Dữ liệu

Bảng 2. Trạng thái các chân trong thời gian chế độ nghỉ và nguồn giảm
4. Các bit nhớ bộ khóa chương trình
Trên chip có ba bit khoá, các bít này có thể không cho phép lập trình hoặc
cho phép lập trình, các bit này cho ta thêm một số đặc trưng nữa của AT89C52
như sau. Khi bit khoá 1 LB1 được lập trình, mức logic ở chân được lấy mẫu và
được chốt trong khi reset. Nếu việc cấp nguồn cho chip không có công dụng
reset, mạch chốt được khởi động bằng một giá trị ngẫu nhiên và giá trị này được
duy trì cho đến khi có tác động reset. Điều cần thiết là giá trị được chốt của phải
phù hợp vơi mức logic hiện hành ở chân này.
Các bit khóa chương trình

Loại bảo vệ

Chế độ

LB1

LB2

LB3


1

U

U

U

Không có đặc trưng khóa chương trình

2

P

U

U

Các lệnh MOVC được thực thi từ bộ nhớ chương
trình ngoài không được phép tìm nạp lệnh từ bộ
nhớ nội, được lấy mẫu và được chốt khi reset,
hơn nữa việc lập trình trên Flash bị cấm

3

P

P

U


Như chế độ 2, cấm thêm việc kiểm tra chương trình

4

P

P

P

Như chế độ 3, cấm thêm việc thực thi chương
trình ngoài

Bảng 3. Các bit khoá bộ nhớ chương trình của AT89C52

5. Tóm tắt tập lệnh của AT89C52
NHÓM 9 – B4D1B

Page 10


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Tập lệnh AT89C52 có 255 lệnh gồm 139 lệnh 1 byte, 92 lệnh 2 byte và 24
lệnh 3 byte.
Các chế độ định địa chỉ:
- Địa chỉ thanh ghi.


-

Địa chỉ tương đối.

- Địa chỉ trực tiếp.

-

Địa chỉ tuyệt đối.

- Địa chỉ gián tiếp.

-

Địa chỉ dài.

- Địa chỉ tức thời.
Các nhóm lệnh của AT89C52:
Nhóm lệnh số học:
ADD A,soure: cộng toán hạng vào A

Nhóm lệnh logic:
ANL A,soure : lệnh nhân logic

SUBB A,soure: trừ bớt A bởi toán ORL A,soure : lệnh cộng logic
hạng nguồn
XRL A,soure : lệnh xor logic
INC A: tăng giá trị A lên 1
RL A : quay trái

DEC A: giảm A xuống 1

RR A : quay phải

MUL AB: nhân A với B

CLR A : xóa A

DIV AB: chia A bởi B
DA ; hiệu đính
Nhóm lệnh di chuyển dữ liệu:

Nhóm lệnh rẽ nhánh:

MOV A,soure : di chuyển toán hạng ACALL addr: gọi chương trình con
nguồn đến đích.
RET: quay chương trình con
MOVC A,@A+DPTR: di chuyển từ bộ RETI: quay về từ chương trình phục
nhớ chương trình.
vụ ngắt
MOVX A,@Ri: di chuyển từ bộ nhớ DL

JMP addr: lệnh nhảy

PUSH direct: cất vào stack

CJNE A, direct, rel: so sánh và nhảy

POP direct: lấy ra stack
XCH A,soure : trao đổi các byte.

XCHD A,@Ri: trao đổi các digit thấp.

NHÓM 9 – B4D1B

Page 11


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

CHƯƠNG II. KHÁI QUÁT CHUNG VỀ MẠCH TẠO XUNG
I.

KHÁI NIỆM CHUNG

Mạch tạo dao động là mạch khi có nguồn

cung

cấp

nó tự làm việc cho ra tín hiệu dao động. Sơ đồ

tổng

quát

một mạch tạo dao động như ở hình 5.
Hình 5. Sơ đồ tổng quát của

Mạch tạo dao động có thể phân làm hai một mạch tạo dao động.
loại. Mạch tạo ra tín hiệu sin gọi là mạch tạo dao động sin (hay dao động điều
hoà). Mạch tạo ra tín hiệu xung như xung vuông, xung tam giác... gọi là mạch
tạo xung.
Yêu cầu mạch tạo dao động tạo ra tín hiệu có biên độ, tần số ổn định cao, ít
chịu ảnh hưởng của môi trường như nhiệt độ, độ ẩm.
Để đạt các yêu cầu đó mạch tạo dao động cần:
+ Dùng nguồn ổn áp.
+ Dùng các phần tử có hệ số nhiệt độ nhỏ.
+ Giảm ảnh hưởng của tải đến mạch tạo dao động như mắc thêm tầng đệm
+ Dùng các linh kiện có sai số nhỏ.
+ Dùng các phần tử ổn nhiệt.
Mạch tạo dao động
Điều kiện dao động của mạch tạo dao động
(theo cách truyền thống) đó là sử dụng mạch hồi
tiếp dương. Như hình 6. Khi Ūht=ŪV thì có nối
a’ với a vào nhau, và ta không cần tín hiệu vào

Hình 6. Sơ đồ khối của bộ tạo dao động

nữa mà mạch tự dao động.

NHÓM 9 – B4D1B

Page 12


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014


II. ĐẶC ĐIỂM CỦA MẠCH TẠO DAO ĐỘNG
- Mạch dao động cũng là một mạch khuếch đại, nhưng là mạch khuếch đại tự điều
khiển bằng hồi tiếp dương từ đầu ra về đầu vào. Năng lượng tự dao động lấy từ
nguồn cung cấp một chiều.
- Mạch phải thoã mãn điều kiện cân bằng biên độ và pha.
- Mạch phải chứa ít nhất một phần tử tích cực làm nhiệm vụ biến đổi năng lượng
một chiều thành xoay chiều.
- Mạch phải chứa một phần tử phi tuyến hay một khâu điều chỉnh để đảm bảo cho
biên độ dao động không đổi ở trạng thái xác lập.
III. ỨNG DỤNG MẠCH TẠO XUNG
Mạch dao động tạo xung được ứng dụng rất nhiều trong các thiết bị điện
tử như là mạch dao động nội trong khối RF Radio, trong bộ kênh tivi màu, mạch
tạo xung dòng, xung mành trong tivi, tạo sóng hình sin cho IC vi xử lý hoạt
động,…
Mạch tạo xung có thể so sánh như trái tim của mạch điện tử, nó là nguồn
cung cấp dao động gốc cho các mạch có liên quan, sau đó qua xử lý các tín hiệu
xung vuông sẽ nuôi sống hoạt động của các IC trong mạch điện tử.

NHÓM 9 – B4D1B

Page 13


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

CHƯƠNG III. THIẾT KẾ MẠCH TẠO XUNG TẦN SỐ 38KHz DÙNG IC
AT89C52

I. SƠ ĐỒ KHỐI

II. CHỨC NĂNG TỪNG KHỐI
1. KHỐI NGUỒN
Trong mạch sử dụng nguồn 5 vôn đầu vào cung cấp năng lượng cho
hoạt động của các linh kiện trong mạch. Trong thiết kế trên phần mềm nguồn
nuôi được thể hiện bằng các chân POWER.
2. KHỐI TẠO XUNG CHUẨN
Gồm 1 thạch anh tạo tần số
gốm 33uF.

12Mhz và 2 tụ

Hình 6. Thạch Anh trong thực tế và ký hiệu trong sơ đồ mạch

NHÓM 9 – B4D1B

Page 14


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Chức năng: Là nguồn tạo xung nhịp dao động clock ổn định( 12MHz)
cho dao động của 89c52. Thạch anh sẽ gắn vào chân XTAL1 và XTAL2
(Chân số 18 và 19) của 89c52. Tần số thạch anh thường dùng trong các ứng
dụng là 11.059MHz( giao tiếp với cổng com máy tính và 12 MHz tần số tối
đa 24 MHz. Tần số càng lớn thì Vi điều khiển xử lý càng nhanh.


Hình 7. Tụ gốm

Chức năng: Lọc nhiễu cho dao động thạch anh, 2 tụ gốm 22pF sẽ được
nối một đầu với chân của thạch anh đầu còn lại nối MASS.
3. KHỐI VI XỬ LÝ AT89C52
Vi điều khiển AT89S52 có 3 bộ định thời 16 bít Timer 0, Timer 1,
Timer 2 trong đó Timer 0 và Timer 1 có bốn chế độ hoạt động, Timer 2 có ba
chế độ hoạt động. Các bộ định thời được sử dụng để định khoảng thời gian
(hẹn giờ), đếm các sự kiện xảy ra bên ngoài bộ vi điều khiển.Tùy thuộc vào
ứng dụng, đầu vào bộ định thời có thể là nguồn xung lấy từ xung nhịp của vi
điều khiển hoặc nguồn xung từ bên ngoài đưa đến.
Trong các ứng dụng định khoảng thời gian, Timer được lập trình sao
cho sẽ tràn sau một khoảng thời gian và thiết lập cờ tràn bằng 1. Cờ tràn được
sử dụng bởi trương trình để thực hiện một hành động tương ứng như kiểm tra
các trạng thái ngõ vào hay gửi các sự kiện ra các ngõ ra.Đếm sự kiện dùng để
xác định số lần xảy ra của một sự kiện. Trong ứng dụng này người ta đưa các
sự kiện thành sự chuyển mức từ 1 xuống 0 trên các chân T0, T1 hoặc T2 để
dùng các timer tưng ứng đếm các sự kiện đó. Ngoài ra các Timer còn được
dùng để tạo xung nhịp hoặc đo độ rộng xung.

NHÓM 9 – B4D1B

Page 15


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Thanh ghi chế độ định thời (TMOD)

Thanh ghi TMOD chứa hai nhóm 4 bít dùng để đặt chế độ lsmf việc
cho Timer 0 và Timer 1.

Chức năng các bít trên thanh ghi chế độ định thời (TMOD):
GATE 1: Bít mở cổng cho Timer 1, khi được đặt bằng 1 thì Timer 1chỉ
chạy khi chân INT 1 ở mức cao. Nếu bít này được đặt là 0 thì hoạt động của
Timer 1 không bị ảnh hưởng bởi mức logic trên chân INT 1.
GATE 0: Bít mở cổng cho Timer 0, khi được đặt bằng 1 thì Timer 0 chỉ
chạy khi chân INT 0 ở mức cao. Nếu bít này được đặt là 0 thì hoạt động của
Timer 0 không bị ảnh hưởng bởi mức logic trên chân INT 0.
C/#T1: Bít chọn chế độ Counter/Timer của Timer 1. Nếu 1 là đếm sự kiện,
nếu 0 là định thời gian.
C/#T0: Bít chọn chế độ Counter/Timer của Timer 0. Nếu 1 là đếm sự kiện,
nếu 0 là định thời gian.
M1-M0: Hai bít chọn chế độ làm việc của Timer (00,01,10,11).
Thanh ghi điều khiển Timer (TCON)
Thanh ghi TCON chứa các bít trạng thái và các bít điều khiển
cho Timer 0 và Timer 1.
TCON.7 TCON.6 TCON.5 TCON.4 TCON.3 TCON.2 TCON.1 TCON.0

TF1

TR1

NHÓM 9 – B4D1B

TF0

TR0


IT1

IE1

IT0

IE0

Page 16


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Chức năng các bít trên thanh ghi điều khiển Timer (TCON):
TF1: Cờ báo tràn của Timer 1 được đặt bởi phần cứng khi có tràn, được
xóa bởi phần mềm hoặc phần cứng khi bị xử lý chỉ đến trình phục vụ ngắt.
TR1: Bít điều khiển Timer 1 hoạt động được đặt/xóa bằng phần mềm để
điều khiển cho Timer chạy/dừng.
TF0: Cờ báo tràn của Timer 0 được đặt bởi phần cứng khi có tràn, được
xóa bởi phần mềm hoặc phần cứng khi biij xử lý chỉ đến trình phục vụ ngắt.
TR0: Bít điều khiển Timer 0 hoạt động được đặt/xóa bằng phần mềm để
điều khiển cho Timer chạy/dừng.
IT1: Cờ ngắt do Timer 1.
IE1: Cờ ngắt ngoài 1.
IT0: Cờ ngắt do Timer 0.
IE0: Cờ ngắt ngoài 0.
Các thanh ghi chứa giá trị của các bộ định thời
Các Timer 0 và Timer 1 đều là các Timer 16 bit, mỗi Timer có thanh ghi 8

bít dùng để chưa giá trị khởi tạo hoặc giá trị hiện thời của các Timer. Cụ thể
Timer 0 có TH0 và TL0; Timer 1 có TH1 và TL1
Timer 0
TH0 (8 bít)

Timer 1
TL0 (8 bít)

TH1 (8 bít)

TL1 (8 bít)

Thanh ghi T2CON

NHÓM 9 – B4D1B

Page 17


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND
T2CON.7

T2CON.6

T2CON.5

T2CON.4

T2CON.3


T2CON.2

T2CON.1

TF2

EXF2

RCLK

TCLK

EXEN2

TR2

C/#T2

2014
T2CON.0

CP/#RL2

TF2: Cờ báo tràn của Timer 2, TF2 được đặt khi Timer 2 tràn và được xóa bằng
phần mềm TF 2 không được thiết lập khi TCLK hoặc RCLK được đặt bằng 1.

EXF2: Cờ ngắt ngoài của Timer 2, TXF2 =1, khi xảy ra sự nạp lại hoặc thu
nhận. EXF2 = 1 cũng gây ra ngắt do Timer 2 nếu như ngắt này được lập trình
cho phép, EXF2 được xóa bởi phần mềm.
RCLK: Bít chọn Timer cung cấp xung nhịp cho đường nhận cồng nối tiếp.

+ RCLK = 1 thì Timer 2 sẽ cung cấp tốc độ baud cho cổng nối tiếp
+ RCLK = 0 thì Timer 1 sẽ cung cấp tốc độ baud cho cổng nối tiếp
TCLK : Bít chọn Timer cung cấp xung nhịp cho đường truyền cồng nối tiếp.
EXEN2: Bít điều khiển hoạt động của Timer 2, khi EXEN2 = 1 việc nạp
lại hoặc thu nhận (Capture) diễn ra khi có sự chuyển trạng thái từ 1 sang 0 ở
chân T2EX nếu T2 không sử dụng để cung cấp tốc độ baud cho cổng nối tiếp.
TR2: Bít điều khiển hoạt động của Timer 2 (giống TR0 và TR1).
C/#T2: Bít chọn chế độ Counter/Timer của Timer 2.
CP/#RL2: Bít chọn chế độ thu nhận hay nạp lại của Timer 2. Khi
CP/#RL2C=1 việc thu nhận được thực hiện khi có xườn xuống ở chân T2EX và
bít EXEN2 được đặt là 1. Khi CP/#RL2C=0 việc nạp lại được thực hiện khi
hoặc là Timer 2 tràn hoặc là có sườn xuống ở chân T2EX và bít EXEN2 được
đặt ở mức 1. Nếu RCLK hoặc TCLK bằng 1, Bít này được bỏ qua, Timer 2 tự
nạp lại khi tràn.
NHÓM 9 – B4D1B

Page 18


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Thanh ghi T2MOD
Các bít từ T2MOD.7 đến T2MOD.2 không được sử dụng Bít T2MOD.1
ký hiệu là T2OE cho phép đầu ra khi sử dụng Timer 2 để tạo xung
Bít T2MOD.0 ký hiệu là DCEN bít cho phép Timer 2 hoạt động
như một bộ đếm tiến/lùi.

NHÓM 9 – B4D1B


Page 19


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Thanh ghi TH2, TL2, RCAP2H và RCAP2L
Giống như TH0,1 và TL01, TH2 và TL2 chứa các giá trị đếm của Timer 2,
tuy nhiên khác nhau là Timer 0,1 có thể dùng THx để chứa giá trị nạp lại còn
Timer 2 dùng RCAP2H và RCAP2L để chứa giá trị cần nạp lại.
Chế độ 0:
Chế độ 0 là chế độ định thời 13 bít, chế độ này chỉ tương thích với các bị vị
điều khiển trước kia, giờ chế độ này không còn thích hợp, ít được sử dụng.Trong
chế độ này bộ định thời dùng 13 bít ( 8 bít TH và 5 bít TL) để chứa giá trị đếm,
3 bít thấp của TL không được sử dụng.
Nguyên lý hoạt động
Nguồn xung Clock được đưa tới Timer từ các nguồn khác nhau phụ thuộc vào
bít C/#Tx trong thanh ghi TMOD.
Nếu C/#Tx = 1, xung Clock được lấy từ bên ngoài qua chân Tx (T0, T1 hoặc
T2)
Nếu C/#Tx = 0, xung Clock sẽ được lấy từ bộ chia tần trong chíp, tần số
của xung ở đây là 1/12 tần số của bộ dao động thạch anh (Fosc).
Nguồn xung Clock nói trên sẽ được điều khiển để đưa tới các Timer bằng
các bít TR, GATE và mức logic trên các chân INTx.
Nếu TRx = 0, các Timer sẽ bị cấm mà không cần quan tâm đến GATE và
mức logic trên các chân INTx (thể hiện là cổng AND).
Nếu TRx = 1, các Timer sẽ hoạt động khi hoặc là bít GATE = 0 hoặc là bít
GATE = 1 và trên chân INTx có mức logic là 1.

Chế độ 1
Trong chế độ 1, bô định thời dùng cả hai thanh ghi TH và TL để chứa giá
trị đếm, vì vậy chế độ này còn gọi là chế độ định thời 16 bít.Với chế độ 1 giá trị
lớn nhất mà Timer chứa được là 65535 (tương ứng FFFFH), khi đếm quá giá trị
này xẽ xảy ra tràn, khi cờ tràn TF sẽ được đặt bằng 1. Sau khi tràn nếu muốn
chương trình đếm tiếp ta phải có câu lệnh nạp lại giá trị khở tạo sau khi dừng
Timer bằng cách xóa bít TR.
NHÓM 9 – B4D1B

Page 20


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND

2014

Chế độ 2
Trong chế độ 2 bộ Timer dùng TL để chứa các giá trị đếm và TH chứa giá
trị nạp lại vì vậy chế độ này được gọi là chế độ tự nạp lại 8 bít. Sau khi đếm quá
255 sẽ xảy ra tràn, khi đó TF được đặt bằng 1 đồng thời giá trị của Timer tự
động được nạp lại bằng nội dung TH.
Chế độ 3
Trong chế độ 3, Timer 0 được tách thành 2 bộ Timer 8 bít hoạt động độc
lập chế độ này sẽ giúp cung cấp thêm cho ta một bộ Timer nữa.
Nguyên lý hoạt động
Bộ Timer thứ nhất với nguồn xung Clock được lấy từ bộ chia tần trên chíp
hoặc từ bộ dao động bên ngoài gồm thạch anh dao động 12MHz mắc nối tiếp
với hai tụ điện 33uF , qua chân T0 tùy thuộc vào giá trị của bít C/#T0 việc điều
khiển hoạt động của bộ thứ nhất do bit GATE, bít TR0 và mức logic trên chân
INT0(giống chế độ 0,1,2). Giá trị đếm chứa trong TL0, khi tràn cờ tràn TF0 = 1

gây ra ngắt bởi Timer 0.Bộ Timer thứ hai với nguồn xung Clock được lấy từ bộ
chia tần trên chíp viếc điều khiển hoạt động chỉ là việc đặt lại giá trị của bít
TR0, giá trị đếm chứa trong TH0 khi tràn cờ tràn TF1 = 1 gây ra ngắt bởi Timer
1.Khi Timer 0 được tách thành 2 Timer 8 bít thì Timer 1 vẫn hoạt động bình
thường với các chế độ 0,1,2.
4. KHỐI HIỂN THỊ
4.1. ÔXYLÔ
Là thiết bị được sử dụng để hiện thị dạng sóng và các đặc trưng cơ bản của
tín hiệu đầu vào.

NHÓM 9 – B4D1B

Page 21


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND
4.2.

2014

MẠCH ĐO TẦN SỐ SỬ DỤNG IC80C51 HIỂN THỊ TRÊN
LCD
a. 74HC00

Quad-2 đầu vào NAND Gate
Hiệu suất cao Silicon-Gate CMOS
Các 74HC00 là giống hệt nhau
trong sơ đồ chân đến LS00. Các thiết bị
đầu vào tương thích với kết quả đầu ra
tiêu chuẩn CMOS; với điện trở pullup,

phù hợp với kết quả đầu ra LSTTL.
Các tính năng
• Khả năng ra Drive: 10 Tải trọng
LSTTL
• Kết quả đầu ra trực tiếp giao diện để
CMOS, NMOS và TTL

Hình 8. IC 74HC00

• Điện áp hoạt động: 2,0-6,0 V
• Dòng điện đầu vào: 1.0 A
b. 74LS393
IC 74LS393 bao gồm hai bộ đếm nhị phân 4-

1/2 bit:

- Bộ thứ nhất từ chân số 1 -> chân số 6.
- Bộ thứ nhất từ chân số 8 -> chân số 13.
Mỗi bộ đếm bao gồm 4 trigo ghép nối tiếp
nhau theo
một trình tự nhất định sao cho bộ đếm thực hiện phép đếm tín hiệu vào tương
ứng với một loại mã, trong đó mỗi trigo đại diện cho một bit.
Hình 9. IC 74LS393

NHÓM 9 – B4D1B

Page 22


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND


2014

c. IC80C51
AT89C51 là một vi điều khiển 8 bit, chế tạo theo công nghệ CMOS
chất lượng cao, công suất thấp với 4 KB PEROM (Flash Programeable and
erasable read only memory).
Các đặc điểm của 8951 được tóm tắt như sau:
- 4KB bộ nhớ, có thể lập trình lại nhanh, - Giao tiếp nối tiếp
có khả năng ghi xóa tới 1000 chu kỳ
- Tần số hoat động từ 0 Hz đến 24 MHz
- 3 mức khóa bộ nhớ lập trình

- 64 KB vùng nhớ mã ngoài
- 64 KB vùng nhớ dữ liệu ngoài
- Xử lý Boolean (hoạt động trên bit

- 2 bộ Timer/Counter 16 bit

đơn)

- 128 Byte RAM nội

- 210 vị trí nhớ có thể định vị bit

- 4 Port xuất/nhập (I/O) 8 bit

- 4μs cho hoạt động nhân hoặc chia

Sơ đồ khối và sơ đồ chân của AT89C51


Hình 10. Sơ đồ khối của AT89C51

NHÓM 9 – B4D1B

Page 23


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND
d. LCD
- LCD
c gi i thi u
â y 14 chân
d i). Ch c n ng các chân
c cho
d i:

2014
(hình
trong b ng

Hình 11. LCD 14 chân

Chức năng các chân của
ModuleLCD 16x2
Chân
số


hiệu


Mức
logic

I/O

Chức năng

1

Vss

-

-

Nguồn cung cấp(GND)

2

Vdd

-

-

Nguồn cung cấp(+5V)

3


Vee

-

I

Điện áp để điều chỉnh độ tương phản

4

RS

0/1

I

Lựa chọn thanh ghi
0= thanh ghi lệnh

5

R/W

0/1

I

1=thanh ghi dữ liệu

0=ghi vào LCD module

1=đọc từ LCD module

6

E

1,1=>0

I

Tín hiệu cho phép

7

DB1

0/1

I/O

Data bus line 0(LSB)

8

DB2

0/1

I/O


Data bus line1

9

DB3

0/1

I/O

Data bus line2

10

DB4

0/1

I/O

Data bus line3

11

DB5

0/1

I/O


Data bus line4

12

DB6

0/1

I/O

Data bus line5

13

DB7

0/1

I/O

Data bus line6

14

DB8

0/1

I/O


Data bus line7(MSB)

15

Vcc

-

-

Nguồn cung cấp

16

GND

-

-

mass

e. RESPACK-8
NHÓM 9 – B4D1B

Page 24


TRƯỜNG ĐẠI HỌC KỸ THUẬT HẬU CẦN CAND


2014

Hình 12. Bề ngoài điện trở Respack-8

Đó chính là điện trở thanh có 8 chân, chân số 1 nối với V cc , hay dùng cho
các ứng dụng điện trở kéo lên hoặc kéo xuống cho một Port vi điều khiển, hạn
chế dòng cho dãy LED, LED 7 đoạn…
Có 2 điện trở thanh thông dụng:
- Loại được đóng gói 1 hàng (SIP).
Để ý cái chấm trên đầu, nó là một chân chung, các chân còn lại nối với
chân chung qua 1 điện trở, giá trị điện trở đó thường ghi trên chân.

NHÓM 9 – B4D1B

Page 25


×