Ngày nay, cùng với sự phát triển của khoa học kỹ thuật, nhất là trong lĩnh vực Điện tử - Tin học - Viễn thông, việc đưa thông tin quảng cáo đến với người tiêu dùng, đến với xã hội trở nên dễ dàng và nhanh chóng. Thông qua nhiều hình thức quảng cáo khác nhau mà các doanh nghiệp giới thiệu sản phẩm của mình đến mọi người.
Trong nhiều hình thức đa dạng của thông tin quảng cáo như: Báo, đài, tivi, tờ rơi, áp phích Thì việc dùng bảng quang báo điện tử là một cách đơn giản và hiệu quả để quảng cáo. Chúng ta bắt gặp rất nhiều bảng thông tin như vậy trong thực tế. Khi đi trên đường phố lúc về đêm, bạn sẽ bắt gặp cùng với ánh đèn màu là rất nhiều các bảng quang báo lớn với các hình ảnh sinh động hay các hình ảnh, logo hiện lên với đủ kiểu (từ trên xuống, từ trái sang .).
Qua đó ta thấy rằng, bảng quang báo điện tử đã được ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau như: giới thiệu sản phẩm, làm biển hiệu Với ứng dụng rộng rãi như vậy, việc tìm hiểu và thiết kế một bảng thông tin như vậy đã thôi thúc em thực hiện đề tài “Thiết kế mạch quang báo và đồng hồ số” bằng vi xử lí sử dụng IC89C51.
Tuy nhiên, do lần đầu thực hiện nên bảng quảng cáo của chúng tôi có thể còn nhiều sai sót. Vì vậy rất mong nhận được những ý kiến đóng góp, giúp đỡ chân thành từ phía các thầy cô cũng như các bạn sinh viên.
74 trang |
Chia sẻ: ngtr9097 | Lượt xem: 3711 | Lượt tải: 5
Bạn đang xem trước 20 trang tài liệu Đồ án Thiết kế mạch quang báo và đồng hồ số, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
MỤC LỤC
Nhận xét của giáo viên hướng dẫn 3
Nhận xét của giáo viên phản biện 4
Lời nói đầu 5
Lời cảm ơn 6
CHƯƠNG 1: GIỚI THIỆU CÁC LINH KIỆN TRONG MẠCH
Điện trở 7
Tụ điện 9
Led 10
Diode 10
IC 7805 ổn áp 5Vol 11
Reset 12
IC xử lý trung tâm 89C51 12
1.7.1 Sơ đồ chân IC 89C51 12
1.7.2 Cấu trúc bên trong IC 89C51 15
1.7.3 Tổ chức bên trong bộ nhớ 16
IC giải mã 74LS247 27
IC đệm đảo ULN2803 28
2.0 IC thời gian thực DS12C887 29
2.0.1 Sơ đồ chân 29
2.0.2 Chức năng các chân 29
2.0.3 Cấu trúc của DS12C887 32
CHƯƠNG 2: GIỚI THIỆU VÀ THI CÔNG MẠCH QUANG BÁO
2.1 Sơ đồ nguyên lý mạch quang báo 37
2.2 Chức năng các khối trong mạch 37
2.2.1 Khối nguồn 38
2.2.2 Khối tạo dao động 38
2.2.3 Khối điều khiển trung tâm 38
2.2.4 Khối giải mã 39
2.2.5 Khối hiển thị 39
2.3 Lưu đồ giải thuật mạch quang báo 40
2.4 Chương trình mạch quang báo 44
2.5 Mạch in mạch quang báo 48
CHƯƠNG 3: GIỚI THIỆU VÀ THI CÔNG MẠCH ĐỒNG HỒ SỐ
3.1 Sơ đồ nguyên lý 49
3.2 Sơ đồ khối và chức năng các khối 49
3.2.1 Khối giải mã 50
3.2.2 Khối hiển thị 50
3.2.3 Khối công tắc 50
3.2.4 Khối lưu giờ 51
3.2.5 Khối kết led 7 đoạn 52
3.3 Lưu đồ giải thuật 53
3.4 Chương trình mạch đồng hồ số 58
3.5 Mạch in mạch đồng hồ số 73
Tài liệu tham khảo 74
LỜI NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Chữ ký của giáo viên hướng dẫn
TP.Vinh, Ngày….tháng …..năm 2010
LỜI NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Chữ ký của giáo viên phản biện
TP.Vinh, Ngày….tháng…..năm 2010
LỜI NÓI ĐẦU
Ngày nay, cùng với sự phát triển của khoa học kỹ thuật, nhất là trong lĩnh vực Điện tử - Tin học - Viễn thông, việc đưa thông tin quảng cáo đến với người tiêu dùng, đến với xã hội trở nên dễ dàng và nhanh chóng. Thông qua nhiều hình thức quảng cáo khác nhau mà các doanh nghiệp giới thiệu sản phẩm của mình đến mọi người.
Trong nhiều hình thức đa dạng của thông tin quảng cáo như: Báo, đài, tivi, tờ rơi, áp phích… Thì việc dùng bảng quang báo điện tử là một cách đơn giản và hiệu quả để quảng cáo. Chúng ta bắt gặp rất nhiều bảng thông tin như vậy trong thực tế. Khi đi trên đường phố lúc về đêm, bạn sẽ bắt gặp cùng với ánh đèn màu là rất nhiều các bảng quang báo lớn với các hình ảnh sinh động hay các hình ảnh, logo hiện lên với đủ kiểu (từ trên xuống, từ trái sang ….).
Qua đó ta thấy rằng, bảng quang báo điện tử đã được ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau như: giới thiệu sản phẩm, làm biển hiệu… Với ứng dụng rộng rãi như vậy, việc tìm hiểu và thiết kế một bảng thông tin như vậy đã thôi thúc em thực hiện đề tài “Thiết kế mạch quang báo và đồng hồ số” bằng vi xử lí sử dụng IC89C51.
Tuy nhiên, do lần đầu thực hiện nên bảng quảng cáo của chúng tôi có thể còn nhiều sai sót. Vì vậy rất mong nhận được những ý kiến đóng góp, giúp đỡ chân thành từ phía các thầy cô cũng như các bạn sinh viên.
LỜI CẢM ƠN
Trong thời gian thực hiện đề tài nhóm chúng em đã nhận được sự giúp đỡ tận tình cả về kiến thức chuyên ngành lẫn tinh thần của giáo viên hướng dẫn và các thầy cô trong khoa công nghệ . Trước tiên nhóm chúng em muốn dành tình cảm chân thành đến giáo viên hướng dẫn Lê Thị Thanh Huyền cũng như các thầy cô trong khoa công nghệ, đã tận tình hướng dẫn và giúp đỡ cho chúng em trong suốt quá trình thực hiện đồ án này. Do kiến thức còn hạn hẹp nên trong quá trình thực hiện đồ án chúng em không thể tránh khỏi những sai sót. Kính mong quý thầy cô trong hội đồng khảo thí chỉ dẫn và giúp đỡ thêm.
Nhóm chúng em chắc rằng cuốn đồ án này không tránh khỏi những thiếu sót trong khi làm cũng như trong suốt quá trình chúng em thực hiện đồ án. Chúng em rất cảm ơn khi nhận được những ý kiến đóng góp quý báu của khoa, giảng viên để chúng em ngày càng hoàn thiện hơn. Chúng em xin chân thành cảm ơn.
TP.Vinh, Ngày 06 tháng 11 năm 2010
CHƯƠNG 1: GIỚI THIỆU CÁC LINH KỆN TRONG MẠCH
1.1 Điện trở
Điện trở là đại lượng vật lý đặc trưng cho tính chất cản trở dòng điện của một vật thể dẫn điện. Nó được định nghĩa là tỉ số của hiệu điện thế giữa hai đầu vật thể đó với cường độ dòng điện đi qua nó.
Hình 1: Ký hiệu của điện trở Hình 2: Hình ảnh điện trở thực tế
Trong đó:
U : là hiệu điện thế giữa hai đầu vật dẫn điện, đo bằng vôn (V).
I : là cường độ dòng điện đi qua vật dẫn điện, đo bằng ampe (A).
R : là điện trở của vật dẫn điện, đo bằng Ohm (Ω).
Điện trở được cấu tạo từ những vật liệu có điện trở suất cao như làm bằng than, magie kim loại Ni-O2, oxit kim loại, dây quấn. Để biểu thị giá trị điện trở. Người ta dùng các vòng màu để biểu thị giá trị điện trở. Mỗi màu đại diện cho một số. Có nhiều loại điện trở khác nhau nhưng được chia làm hai loại chính dựa trên cấu trúc của nó,đó là diện trở đơn và điện trở thanh . Điện trở thanh gồm nhiều diện trở đơn ghép lại với nhau.
Hình 3: Các vòng màu thể hiện giá trị của điện trở
Điện trở thanh thường dùng khi cần nhiều điện trở giống nhau, nhưng yêu cầu thiết kế gọn, ví dụ như kéo lên một port của vi điều khiển, hạn dòng cho dãy led, led 7 đoạn, vvv…Có 2 loại đ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à 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 được ghi trên thânLoại đóng gói 2 hàng (DIP), nhìn giống các IC thông thường.Loại này thì 2 chân đối diện nối với nhau qua trở, giá trị cũng ghi trên thân.
1.2 Tụ điện
Tụ điện là một linh kiện có tính tích trữ năng lượng điện, tụ điện được cấu tạo gồm hai bản phẳng bằng chất dẫn điện gọi là hai bản cực. Hai bản cực đặt song song với nhau, ở giữa là chất điện môi cách điện.
Để đặc trưng cho khả năng tích điện của tụ điện, ta dùng đại lượng gọi là điện dung. C=ε(s/d). Đơn vị : Fara (F)
Hình 4: Kí hiệu của tụ điện Hình 5: Hình dạng thực tế
Phân loại: Tụ được chia làm hai loại chính đó là tụ phân cực và tụ không phân cực, ngoài ra tụ còn được gọi theo tên vật liệu cấu tạo nên chúng như tụ gốm, tụ giấy, tụ hóa…
Cường độ điện trường bên trong tụ có trị số:
E =
= 8.86.10-12 C2/ N.m2 là hằng số điện môi của chân không.
là hằng số điện môi tương đối của môi trường, đối với chân không = 1, giấy tẩm dầu = 3,6; gốm = 5,5; mica = 4 5
Đơn vị: Có 3 đơn vị chính
1µ=10-6F
1n=10-9F
1p=10-12F
Như vậy điện dung tỉ lệ thuận với tiết diện của bản tụ. Tỉ lệ nghịch với khoảng cách giữa hai bản tụ và phụ thuộc vào chất điện môi.
1.3 Led (Diode phát quang)
Diode phát quang là Diode phát sáng khi ta phân cực thuận cho nó và có dòng điện cấp qua. Diode này có thể phát ra màu sắc khác nhau. Tùy theo mức năng lượng giải phóng cao hay thấp mà bước sóng ánh sáng phát ra khác nhau (tức màu sắc của LED sẽ khác nhau). Mức năng lượng (và màu sắc của LED) hoàn toàn phụ thuộc vào cấu trúc năng lượng của các nguyên tử chất bán dẫn.
Hình 6: Ký hiệu của led Hình 7: Hình dạng thực tế của led
LED thường có điện thế phân cực thuận cao hơn diode thông thường, trong khoảng 1,5 đến 3V. Nhưng điện thế phân cực nghịch ở LED thì không cao. Do đó, LED rất dễ bị hư hỏng do điện thế ngược gây ra.
1.4 Diode
Diode bán dẫn là dụng cụ bán dẫn có một lớp tiếp xúc P-N. Bên ngoài có bọc một lớp Plastic. Hai đầu của mẫu bán dẫn có tráng kim loại để nối dây ra.Có hai cách phân cực cho diode. Là phân cực thuận, phân cực nghịch.
Hình 8: Ký hiệu của diode Hình 9: Hình dạng thực của diode
a. Phân cực thuận:
Cực dương của nguồn nối với anot, cực âm của nguồn nối với catot.
b. Phân cực nghịch
Ta nối cực dương của nguồn với catot và cực âm của nguồn nối với anot.
c. Diode chỉnh lưu
Hình dạng to, thuộc loại tiếp mặt, hoạt động ở tần số thấp. Diode chỉnh lưu dùng để đổi điện xoay chiều sang điện một chiều, chịu dòng từ vài trăm mA đến công suất cao vài trăm A. Diode chỉnh lưu thông thường là loại Silic.
IC 7805 IC ổn áp 5 Vol
Với những mạch điện không đòi hỏi độ ổn định của điện áp quá cao, sử dụng IC ổn áp thường được người thiết kế sử dụng vì mạch điện khá đơn giản. Các loại ổn áp thường được sử dụng là IC 78xx, với xx là điện áp cần ổn áp. Ví dụ 7805 ổn áp 5V, 7812 ổn áp 12V. Việc dùng các loại IC ổn áp 78xx tương tự nhau, dưới đây là minh họa cho IC ổn áp 7805
Hình 10 : Hình dạng thực tế của IC7805
IC 7805 có 3 chân:
Chân số 1 là chân IN
Chân số 2 là chân GND
Chân số 3 là chân OUT
Ngõ ra OUT luôn ổn định ở 5V dù điện áp từ nguồn cung cấp thay đổi. Mạch này dùng để bảo vệ những mạch điện chỉ hoạt động ở điện áp 5V (các loại IC thường hoạt động ở điện áp này).
Điện áp đặt trước IC 78xx phải lớn hơn điện áp cần ổn áp từ 1.5V đến 2V khoảng 7V đến 9V
1.6 Reset
Có tác dụng như một công tắc đóng mở. Dùng để cho hoặc không cho dòng điện đi qua.
Hình 11: Ký hiệu của reset Hình 12: Hình dạng thực của reset
1.7 IC XỬ LÝ TRUNG TÂM 89C51:
1.7.1 Sơ đồ chân 89C51:
89c51 là IC vi điều khiển (Microcontroller) do hãng Atmel sản xuất. IC này có đặc điểm như sau:
4k byte ROM,128 byte RAM nội.
4 Port I/O 8 bit.
2 bộ đếm/ định thời 16 bit.
Giao tiếp truyền dữ liệu nối tiếp.
64k byte bộ nhớ bên ngoài dung để lưu chương trình điều khiển.
64k byte bộ nhớ bên ngoài dung để lưu dữ liệu.
210 bit có thể truy xuất từng bit..
Có các lệnh xử lý bit.
Sơ lược về các chân của 89C51:
Hình 13. Sơ đồ chân 89C51
Chức năng của các chân 89C51:
Port 0: từ chân 32 đến chân 39 (P0.0 _P0.7). Port 0 có 2 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.
Port 1: từ chân 1 đến chân 8 (P1.0 _ P1.7). Port 1 chỉ có chức năng dùng làm các đường điều khiển xuất nhập IO.
Port 2: từ chân 21 đến chân 28 (P2.0 _P2.7). Nếu không dùng bộ nhớ mở rộng bên ngoài thì port 2 dùng làm các đường điều khiển IO. Nếu dùng bộ nhớ mở rộng bên ngoài thì port 2 có chức năng là bus địa chỉ cao A0 – A15.
Port 3: từ chân 10 đến chân 17 (P3.0 _ P3.7). Port 3 là port có 2 chức năng. Các chân port này có nhiều chức năng , các công dụng chuyển đổi có liên hệ đặc biệt của 89C51.
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 OE\ của Eprom cho phép đọc các byte mã lệnh.
PSEN ở mức thấp trong thời gian 89C51 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 89C51 để giải mã lệnh. Khi 89C51 thi hành chương trình trong EPROM nội PSEN ở mức logic 1.
ALE (Address Latch Enable):
Khi 89C51 truy xuất bộ nhớ bên ngoài, Port 0 có chức năng là bus địa chỉ và dữ liệu (AD7 – AD0) 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ức 1 thì vi điều khiển thi hành chương trình từ bộ nhớ nội.
Nếu ở mức 0 thì vi điều khiển thi hành chương trình từ bộ nhớ ngoại.
RST (Reset):
Ngõ vào chân 9 là ngõ vào Reset. Khi cấp điện cho hệ thống hoặc nhấn nút reset thì mạch sẽ reset vi điều khiển. Khi reset thì tín hiệu reset phải ở mức cao ít nhất 2 chu kì máy.
Các ngõ vào bộ dao động Xtal1, Xtal2:
Bộ tạo dao động được tích hợp bên trong 89C51. Khi sử dụng 89C51, người ta chỉ cần nối thêm tụ thạch anh và các tụ. Tần số tụ thạch anh thường là 12 Mh – 24 Mh.
Hình14: sơ đồ mắc thạch anh vào chân XTAL
1.7.2 Cấu trúc bên trong của 89C51
B1. Sơ đồ khối bên trong 89C51:
Hình 2-3. Cấu trúc bên trong của vi điều khiển
1.7.3 Tổ chức bộ nhớ.
Hình 15: Bảng tóm tắt các vùng nhớ 89C51
RAM bên trong 89C51 được phân chia như sau:
Các bank thanh ghi có địa chỉ từ 00H đến 1FH.
RAM địa chỉ hóa từng bit có địa chỉ từ 20H đến 2FH
RAM đa dụng từ 30H đến 7FH.
Các thanh ghi chức năng từ 80H đến FFH.
Địa chỉ byte
Địa chỉ byte
7F
7E
7D
7C
7B
7A
79
78
2F
77
76
75
74
73
72
71
70
2E
6F
6E
6D
6C
6B
6A
69
68
2D
67
66
65
64
63
62
61
60
2C
5F
5E
5D
5C
5B
5A
59
58
2B
57
56
55
54
53
52
51
50
2A
4F
4E
4D
4C
4B
4A
49
48
29
47
46
45
44
43
42
41
40
28
3F
3E
3D
3C
3B
3A
39
38
27
37
36
35
34
33
32
31
30
26
2F
2E
2D
2C
2B
2A
29
28
25
27
26
25
24
23
22
21
20
24
1F
1E
1D
1C
1B
1A
19
18
23
17
16
15
14
13
12
11
10
22
0F
0E
0D
0C
0B
0A
09
08
21
07
06
05
04
03
02
071
00
20
Bank 3
1F
18
Bank 2
17
10
Bank 1
0F
08
Bank thanh ghi 0
(maëc ñònh cho R0-R7)
07
00
RAM ña duïng
7F
30
RAM
Ñòa chæ bit
87
86
85
84
83
82
81
80
80
P0
khoâng ñöôïc ñòa chæ hoùa bit
81
SP
khoâng ñöôïc ñòa chæ hoùa bit
82
DPL
khoâng ñöôïc ñòa chæ hoùa bit
83
DPH
khoâng ñöôïc ñòa chæ hoùa bit
87
PCON
8F
8E
8D
8C
8B
8A
89
88
88
TCON
khoâng ñöôïc ñòa chæ hoùa bit
89
TMOD
khoâng ñöôïc ñòa chæ hoùa bit
8A
TL0
khoâng ñöôïc ñòa chæ hoùa bit
8B
TL1
khoâng ñöôïc ñòa chæ hoùa bit
8C
TH0
97
96
95
94
93
92
91
90
90
P1
9F
9E
9D
9C
9B
9A
99
98
98
SCON
khoâng ñöôïc ñòa chæ hoùa bit
99
SBUF
A7
A6
A5
A4
A3
A2
A1
A0
A0
P2
AF
–
–
AC
AB
AA
A9
A8
A8
IE
–
–
–
BC
BB
BA
B9
B8
B8
IP
E7
E6
E5
E4
E3
E2
E1
E0
E0
ACC
D7
D6
D5
D4
D3
D2
–
D0
D0
PSW
B7
B6
B5
B4
B3
B2
B1
B0
B0
P3
F7
F6
F5
F4
F3
F2
F1
F0
F0
B
CAÙC THANH GHI CHÖÙC NAÊNG ÑAËC BIEÄT
Ñòa chæ bit
khoâng ñöôïc ñòa chæ hoùa bit
8D
TH1
FF
Hình 16: Cấu trúc bộ nhớ Ram bên trong vi điều khiển
- Bộ nhớ trong 89C51 bao gồm ROM và RAM. RAM trong 89C51 bao gồm nhiều thành phần: phần lưu trữ đa dụng, phần lưu trữ địa chỉ hóa từng bit, các bank thanh ghi và các thanh ghi chức năng đặc biệt.
- 89C51 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. Chương trình và dữ liệu có thể chứa bên trong 8951 nhưng 8951 vẫn có thể kết nối với 64K byte bộ nhớ chương trình và 64K byte dữ liệu
Ram đa dụng:
Vùng nhớ Ram đa dụng gồm có 80 byte địa chỉ từ 30H – 7FH .Vùng nhớ bank thanh ghi 32 byte từ 00H – 1FH cũng có thể dùng làm vùng nhớ Ram đa dụng. Mọi địa chỉ trong vùng Ram đa dụng đều có thể truy xuất tự do dùng kiểu địa chỉ trực tiếp hoặc gián tiếp. Bộ nhớ ngăn xếp của vi điều khiển dùng bộ nhớ Ram nội nên dung lượng bộ nhớ ngăn xếp nhỏ trong khi đó các bộ vi xử lý bên ngoài làm bộ nhớ ngăn xếp nên dung lượng tùy ý mở rộng.
Ram có thể truy xuất từng bit:
89C51 chứa 210 bit được địa chỉ hóa từng bit, trong đó 128 bit chứa ở các byte có địa chỉ từ 20H đến 2FH, các bit còn lại chứa trong nhóm thanh ghi chức năng đặc biệt.
Ý tưởng truy xuất từng bit bằng phần mềm là một đặc tính mạnh của vi điều khiển nói chung. Các bit có thể được đặt, xóa, and, or,… với 1 lệnh đơn. Ngoài ra các port cũng có thể truy xuất được từng bít làm đơn giản phần mềm xuất nhập từng bit.
Các bank thanh ghi:
Bộ lệnh 89C51 hỗ trợ 8 thanh ghi có tên là R0 đến R7 và theo mặc định (sau khi reset hệ thống), các thanh ghi này ở các địa chỉ 00H đến 07H.
Đây là lệnh 1 byte dùng địa chỉ thanh ghi. Tuy nhiên có thể thi hành bằng lệnh 2 byte dùng địa chỉ trực tiếp nằm trong byte thứ 2: MOV A, 05H.
Lệnh dùng các thanh ghi R0 đến R7 thì sẽ ngắn hơn và nhanh hơn nhiều so với lệnh tương ứng dùng địa chỉ trực tiếp.
Bank thanh ghi tích cực bằng cách thay đổi các bit trong từ trạng thái chương trình (PSW). Giả sử thanh ghi thứ 3 đang được truy xuất, lệnh sau đây sẽ di chuyển nội dung của thanh ghi A vào ô nhớ ram có địa chỉ 18H: MOV R0, A.
Các thanh ghi có chức năng đặc biệt:
89C51 có 21 thanh ghi chức năng đặc biệt (SFR: Special Funtion Register) ở vùng trên của RAM nội từ địa chỉ 80H đến FFH.
Các thanh ghi port xuất nhập:
Các port của 89C51 bao gồm port 0 ở địa chỉ 80H, port 1 ở địa chỉ 90H, port 2 ở địa chỉ A0H, và port 3 ở địa chỉ B0H. Tất cả các port này đều có thể truy xuất từng bit nên rất thuận tiện trong khả năng giao tiếp.
Các thanh ghi timer:
89C51 có chứa 2 bộ định thời đếm 16 bit được dùng cho việc định thời hoặc đếm sự kiện. Timer 0 ở địa chỉ 8AH (TL0: byte thấp) và 8CH (TH0: byte cao). Timer 1 ở địa chỉ 8BH (TL1: byte thấp) và 8DH (TH1: byte cao). Việc khởi động timer được Set bởi Timer Mode (TMOD) ở địa chỉ 89H và thanh ghi điều khiển timer (TCON) ở địa chỉ 88H, chỉ có TCON được địa chỉ hóa từng bit.
Các thanh ghi port nối tiếp:
89C51 chứa một port nối tiếp dành cho việc trao đổi thông tin với các thiết bị nối tiếp như máy tính, modem hoặc giao tiếp nối tiếp với các IC khác. Một thanh ghi gọi là bộ đệm dữ liệu nối tiếp (SBUF) ở địa chỉ 99H sẽ giữ cả 2 dữ liệu truyền và dữ liệu nhận. Khi truyền dữ liệu thì ghi lên SBUF, khi nhận dữ liệu thì đọc SBUF. Các mode vận hành khác nhau được lập trình qua thanh ghi điều khiển port nối tiếp SCON ở địa chỉ 98H.
Các thanh ghi ngắt:
89C51 có cấu trúc 5 nguồn ngắt, 2 mức ưu tiên. Các ngắt bị cấm sau khi reset hệ thống và sẽ được cho phép bằng việc ghi thanh ghi cho phép ngắt (IE) ở địa chỉ A8H, cả 2 thanh ghi được địa chỉ hóa từng bit.
Thanh ghi điều khiển công suất:
Thanh ghi điều khiển công suất (PCON) ở địa chỉ 87H chứa các bit điều khiển.
Tín hiệu Reset:
89C51 có ngõ vào reset RST tác động ở mức cao trong khoảng thời gian 2 chu kỳ, sau đó xuống mức thấp để 89C51 bắt đầu làm việc. RST có thể kích bằng tay bằng một phím nhấn thường mở, sơ đồ mạch reset như hình trên (hình a) sau khi reset hệ thống được tóm tắt như sau:
Thanh ghi
Nội dung
Đếm chương trình PC
Thanhghi tích lũy A
Thanh ghi B
Thanh ghi trạng thái
SP
DPTR
Port 0 đến Port 3
IP
IE
Các thanh ghi định thời
0000H
00H
00H
00H
07H
0000H
FFH
XXX0000 B
0XX00000 B
00H
Hoạt động thanh ghi TIMER
89C51 có hai timer 16 bit, mỗi timer có bốn cách làm việc. Người ta sử dụng các timer để:
Định khoảng thời gian.
Đếm sự kiện.
Tạo tốc độ cho port nối tiếp trong 89C51.
Trong các ứng dụng định khoảng thời gian, người ta lập trình timer ở những khoảng đều đặn và đặt cờ tràn timer. Cờ được dùng để đồng bộ hóa 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 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 hai sự kiện (ví dụ đo độ rộng xung ).
Truy xuất các timer của 89C51 dùng sáu thanh ghi chức năng đặc biệt cho trong bảng sau:
SFR
Mục Đích
Địa chỉ
Địa chỉ hóa từng bit
TCON
Điều khiển Timer
88H
Có
TMOD
Chế độ Timer
89H
Không
TL0
Byte thấp của Timer 0
90H
Không
TL1
Byte thấp của Timer 1
91H
Không
TH0
Byte cao của Timer 0
92H
Không
TH1
Byte cao của Timer 1
93H
Không
Các thanh ghi chức năng của timer trong 8051.
Thanh ghi chế độ timer (TMOD):
Thanh ghi TMOD chứa hai nhóm 4 bit dùng để đặt chế độ làm việc cho Timer 0, và Timer 1.
Bit
Tên
Timer
Mô tả
7
GATE
1
Bit mở cổng, khi lên 1 timer chỉ chạy khi INT1 ở mức cao
6
C/T
1
Bit chọn chế độ Count/Timer
1 = bộ đếm sự kiện
0 = bộ định khoảng thời gian
5
M1
1
Bit 1 của chế độ mode
4
M0
1
Bit 0 của chế độ mode
3
GATE
0
Bit mở cổng, khi lên 1 timer chỉ chạy khi INT0 ở mức cao
2
C/T
0
Bit chọn chế độ Count/Timer
1
M1
0
Bit 1 của chế độ mode
0
M0
0
Bit 0 của chế độ mode
Tóm tắt thanh ghi chức năng TMOD.
Thanh ghi điều khiển timer(TCON)
Thanh ghi TCON chứa các bit trạng thái và các bit điều khiển cho Timer 1, Timer 0.
Bit
Ký hiệu
Địa chỉ
Mô tả
TCON.7
TF1
8FH
Cờ báo tràn timer 1. Đặt bởi phần cứng khi tràn, được xóa bởi phần mềm, hoặc phần cứng khi bộ xử lý chỉ đến chương trình phục vụ ngắt.
TCON.6
TR1
8EH
Bit điều khiển timer 1 chạy đặt xóa bằng phần mềm để cho timer chạy ngưng.
TCON.5
TF0
8DH
Cờ báo tràn Timer 0.
TCON.4
TR0
8CH
Bit điều khiển Timer 0 chạy
TCON.3
IE1
8BH
Cờ cạnh ngắt 1 bên ngoài. Đặt bởi phần cứng khi phát hiện một cạnh xuống ở INT1 xóa bằng phần mềm họăc phần cứng khi CPU chỉ đến chương trình phục vụ ngắt.
TCON.2
IT1
8AH
Cờ kiểu ngắt 1 bên ngoài. Đặt xóa bằng phần