LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH QUAN LY CUÔC GỌI ĐIỆN THOẠI BAN 2.giới thiệu AT89C51 AT89C51 là một Microcomputer 8 bít, loại CMOS, có tốc độ cao và công suất thấp với b
Trang 1LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUAN LY CUOC GOI DIEN THOAI BAN
BO GIAO DUC & ĐÀO TẠO
KHOA ĐIỆN - ĐIỆN TỬ NGÀNH ĐIỆN TỬ VIỄN THÔNG
Bek Fag
THIET KE VA THI CONG MACH QUAN
LY CUOC GOI DIEN THOAI BAN
2 fa
| TRƯỜNG BHỮL =K TÊN GVHD: Th.S NGUYEN HUY HUNG
Trang 2LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
moi diéu kiện thuận lợi cho em hoàn thành tốt dé tài luận văn tố nghiệp này
Em cũng xin chân thành cảm ơn các thay, các cô đặc biệt là các Thầy Cô
trong khoa Điện — Điện Tử đã truyền thụ những kiến thức quí báu trong những
năm học qua đã giúp em thực hiện tốt đề tài này
Tuy nhiên, do khả năng còn hạn chế và thời gian có hạn, chắc chắn trong
tập luận văn không tránh khỏi thiếu sót, mong được sự thông cảm và đóng góp
ý kiến của quý thầy cô và các bạn để tập luận văn hoàn chỉnh hơn
Em xin chân thành cảm ơn
Tháng 01 năm 2006
SVTH: Nguyễn Công Trực
SS eee ee SS SSC
SVTH: NGUYEN CONG TRUC 6 GVHD: ThS NGUYEN HUY HUNG
Trang 3LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VA THI CONG MACH
QUAN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
MỤC LỤC
Giới thiệu để tài
Chương I: Giới thiệu linh kiện
1 Giới thiệu về IC AT89C51
X Nhifng linh kién lién quan
Chương II Thiết kế mạch
I Khoi DTMEF
II Khối hiển thị
II Khối điều khiển trung tâm
TV Khối giao tiếp máy tính
V Khối cảm biến nhấc máy
VI Khối cảm biến chuông
VII đèn báo nguồn
Phân II Nguyên lý hoạt động của mạch
Chương II Lưu đồ giải thuật
1 Lưu đồ giải thuật chương trình chính
2 Lưu đỗ giải thuật kiểm tra password
3 Lưu đồ giải thuật lưu thông tin cuộc gọi
Trang 4LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUAN LY CUOC GOI ĐIÊN THOẠI BÀN
GIỚI THIỆU ĐÈ TÀI
Công nghệ thông tin Hiên lạc ngày nay đã phát triển một cách nhanh chóng
và vượt bực, nhằm đáp ứng nhu cầu ngày càng cao của xã hội Công nghệ thông tin đóng vai trò cốt lõi trong việc cập nhật thông tin cho mọi người, trong dịch
vụ viễn thông điện tử dựa trên hệ thống mạng điện thoại, hoạt động độc lập thông qua mạng thuê bao điện thoại
Ngày nay khi thông tin liên lạc đã phát triển cao, mọi người không còn xa
lạ gì với thuật ngữ “Thương mại điện tử”, tức là việc buôn bán , giao dịch thông qua mạng điện thoại, mạng internet Va các nhân viên có thể sử dụng điện thoại một cách thoải mái, không ai kiểm soát họ Chính vì vậy nên các công ty
bị thất thu một số tiền khá lớn vào hàng tháng cho các hóa đơn điện thoại của các cuộc gọi đi động, gọi liên tỉnh do các nhân viên sử dụng vào mục đích cá
nhân
Với suy nghĩ là ứng dụng các kiến thức đã học ở trường, em chọn để tài:
“Mạch quản lý cuộc gọi điện thoại bàn”, nhằm giúp cho các công ty giám sắt được các cuộc gọi ra ngoài của các nhân viên
Với máy giám sát cuộc gọi này, các công ty có thể biết danh sách tất cả các cuộc gọi ra ngoài như: nhân viên nào thực hiện cuộc gọi, số gọi, thời gian đàm thoại, cuộc gọi: di động, nội hạt, liên tỉnh hay nước ngoài Nhờ đó mà các
công ty vẫn có thể cho nhân viên sử dụng điện thoại tự do mà vẩn có thể giám
sát được các cuộc gọi của họ
Với để tài quản lý cuộc gọi điện thoại, nhiệm vụ chủ yếu là phải ghi nhận
được tên của nhân viên, số gọi, thời gian gọi Để thực hiện được việc này thì “
mỗi nhân viên được cung cấp một mã số gọi điện thoại cho mỗi nhân viên,
trong đó có mã số riêng Khi nhân viên muốn thực hiện việc quay số gọi ra
ngoài thì phải nhập mã số của mình (từ bàn phím của máy điện thoạ1) trứớc khi bấm số gọi Nhờ vậy mà ta có thể giám sát và biết được nhân viên nào thực
hiện cuộc gọi và ghi nhận lại
Để thông tin các cuộc gọi được lưu trử một cách an toàn thì ta phải sử dụng
bộ nhớ lưu trử không bay hơi nghĩa là khi điện mất thì dử liệu van con
SSS
Trang 5LUẬN VĂN TỐT NGHIỆP THIET KE VA THI CONG MACH
QUẢN LÝ CUỘC GỌI ĐIÊN THOẠI BÀN
CHƯƠNG I: Giới thiệu linh kiện
I, Giới thiệu về IC AT98C51
1 Giới thiệu khái quát về họ IC MSC-51
MCS-51 là một họ IC 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-
511M của Intel là Siemens, Advanced Micro Devices, Fujitsu, Philips, Atmel
Các IC của họ MCS-51”w có các đặc trưng chung như sau:
e 4port VO 8 bit
e = Giao tiép ndi tiép
e 64K không gian bộ nhớ chương trình mở rộng
e 64K không gian bộ nhớ dữ liệu mở rộng
e - Một bộ xử lý luận lý (thao tác trên các bit đơn)
e 210 bit được địa chỉ hóa
e Bộ nhân/chia 4 Hs
Ngoài ra, tùy theo số hiệu sản xuất mà chúng có những khác biệt về bộ nhớ và
bộ định thời/bộ đếm như trong bảng so sánh dưới đây:
Số hiệu sản|Bộ nhớ chương |Bộ nhớ dữ liệu | Số bộ định thời
xuất trình trên chip trên chip (bộ đếm)
Trang 6LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUAN LY CUÔC GỌI ĐIỆN THOẠI BAN
2.giới thiệu AT89C51
AT89C51 là một Microcomputer 8 bít, loại CMOS, có tốc độ cao và công
suất thấp với bộ nhớ Flash có thể lập trình được Nó được sản xuất với công
nghệ bộ nhớ không bay hơi mật độ cao của hãng Atmel, và tương thích với
chuẩn công nghiệp của 80C51 va 80C52 vé chan ra và bộ lệnh
ALE/PRDG 4 | TNE | ineTRUCTION AND
Trang 7LUẬN VĂN TỐT NGHIỆP THIET KE VA THI CONG MACH
QUAN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
2.1 Những đặc trưng của AT8§9C51
+ Tương thích với các sản phẩm MCS-51
+4KByte bộ nhớ Flash có thể lập trình lại với 1000 chu kỳ đọc/xoá
+ Hoạt động tĩnh đầy đủ: 0Hz đến 24MHz
+ Khoá bộ nhớ chương trình ba cấp
+ 128 x 8 bit RAM nội
+ 32 đường xuất-nhập lập trình được (tương ứng 4 port)
+ Hai timer/counter 16 bit
+ Một port nối tiếp song công lập trình được
+ Mạch đồng hồ và bộ dao động trên chip
Cấu hình chân của AT89C51 như sau:
{T2) P1.0 FẬ 1 ~ ao voc {T2 EX) P1.1 CỊ ? 3# Po.d (ADO) P12 075 38 H Pö.1 (AÚ1) P41.3 C 4 a7 fo Pò.2 {(AD#) P1.4 C15 36: E] P8.3 (AD5]
P1.5 TÌ 6 35 T P64 (ADd]
Plan? 34 L1 0:8 (ADS)
1714 33.1 P96 (A061 ast cls 32 [0 Po.7 iAD7) (RXD) P4.0 LẬ 10 312 ÊÃ?vVPP (TXOI 5.1 LÍ 1ì 46 [9 ALE/PROG (NTO) P3.2 C] 12 29 (1 PSEN (§TL #3.3 CỊ 14 #8 F1 2.7 (A15) {Tð0 P8.4 LÌ 14 #7 E.P2:6 (Atá†
(Tt) 3.5 Chis ¿6 E] E2.B (A14) NHÀ P4.E LỆ 16 zs P2.4{A1)
(AD) Ps oy £4 [1 E2.3 (A11)
bus địa chỉ và bus đữ liệu
Trang 8LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIÊN THOẠI BÀN
e Port 0 ( chân 32 đến chân 39)
Port 0 là một port xuấư/nhập song hướng cực máng hở 8 bit Nếu được sử
dụng như là một ngõ xuất thì mỗi chân có thể kéo 8 ngõ vào TTL Khi mức 1
được viết vào các chân của port 0, các chân này có thể được dùng như là các
ngõ nhập tổng trở cao
Port 0 có thể được định cấu hình để hợp kênh giữa bus địa chỉ và bus dữ
liệu (phần byte thấp) khi truy cập đến bộ nhớ dữ liệu và bộ nhớ chương trình ngoài Ở chế độ này, PO có các điện trở pullup bên trong
Port 0 cũng nhận các byte code (byte mã chương trình) khi lập trình Flash,
và xuất ra các byte code khi kiểm tra chương trình Cần có các điện trở pullup bên ngoài khi thực hiện việc kiểm tra chương trình
e Port 1 (chân 1 đến chân 8)
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 l 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 Í, 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 l (được kéo xuống thấp qua các điện trở bên
ngoài) sẽ cấp dòng I„, do các điện trở pullup bên trong
e Port 2(chân 21 đến chân 28)
Port 2 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 2 có thể kéo hoặc cung cấp 4 ngõ vào TT
Khi các mức 1 được viết vào các chân của port 2 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 2 (được kéo xuống qua các điện trở bên ngoai) sẽ cấp dòng Iạ, do có các điện trở pullup bên trong
Port 2 phát ra byte cao của địa chỉ 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 chi 16 bit (MOVX @DPTR)
Trong ứng dụng này, nó dùng các điện trở pullup nội "mạnh" khi phát ra các
mức 1 Khi truy cập bộ nhớ dữ liệu ngoài đùng các địa chi 8 bit (MOVX @RD),
port 2 phát ra các nội dung của thanh ghi chức năng đặc biệt P2
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 Flash
e Port 3 (chân 10 đén chân 18)
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
———Ễễễễ=ễễ—ễễễ =
SVTH: NGUYỄN CÔNG TRỰC 12 GVHD: Th.S NGUYEN HUY HUNG
Trang 9LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUÔC GỌI ĐIỆN THOẠI BÀN
Các bộ đệm ngõ ra của port 3 có thể kéo hoặc cung cấp 4 ngõ vào TIL 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 đòng Iạ, do có các điện trở pullup bên trong
Port 3 cũng cung cấp các chức năng của các đặc trưng đặc biệt như được liệt
kê dưới đây:
Chân Tên Các chức năng chuyển đối
P3.0 RXD _ Port nhập nối tiếp P3.1 TXD Port xuất nối tiếp P3.2 INT0 Ngắt 0 bên ngoài P3.3 INT1 Ngắt 1 bên ngoài
P3.4 TO Ngõ vào Timer/Counter Ô
P3.5 T1 Ngõ vào Timer/Counter 1
P3.6 WR Xung ghi bộ nhớ dữ liệu ngoài
P3.7 RD Xung đọc bộ nhớ dữ liệu ngoài
Các chức năng chuyển đổi trên Port 3
e RST (chân 9)
Ngõ vào reset Một mức cao trên chân này khoảng hai chu kỳ máy trong
khi bộ dao động đang chạy sẽ reset thiết bị
e ALE
ALE là một xung ngõ ra để chốt byte thấp của địa chi trong khi truy cập
bộ nhớ ngoài Chân này cũng là ngõ nhập xung lập trình (PROG) 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
tan số bộ đao động và có thể được dùng cho các much dich timing và clocking
bên ngoài Tuy nhiên, lưu ý rằng một xung ALE sẽ bị bỏ qua mỗi khi truy cập
bộ nhớ dữ liệu ngoài
Nếu muốn, hoạt động ALE có thể cấm được bằng cách set bit 0 của SFR
tại địa chỉ 8Eh Nếu bit này được set, ALE chỉ dược hoạt động khi có một lệnh
MOVX hoặc MOVC Ngược lại, chân này được kéo lên cao bởi các điện trở
pullup "nhẹ" Việc set bit cấm-ALE không có tác dụng khi bộ vi điểu khiển
đang ở chế độ thi hành ngoài
e PSEN
PSEN (Program Store Enable) là xung đọc bộ nhớ chương trình ngoài Khi
AT89C52 đang thi hành mã (code) từ bộ nhớ chương trình ngoài, PSEN được
==—=——ễễễ——ễễ—ễễ==
SVTH: NGUYỄN CÔNG TRỰC 13 GVHD: Th.s NGUYEN HUY HUNG
Trang 10LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
kích hoạt hai lần mỗi chu kỳ máy, nhưng hai hoạt động PSEN sẽ bị bỏ qua mỗi
khi truy cập bộ nhớ dữ liệu ngoài
° EA/Vpp
EA (External Access Enable) phải được nối với GND để cho phép thiết bị
đọc code từ bộ nhớ chương trình ngoài có địa chỉ từ 0000H đến FFFFH Tuy
nhiên, lưu ý rằng nếu bit kho4 1 (lock-bit 1) được lập trình, EA sẽ được chốt
bên trong khi reset
EA phải được nối với Vcc khi thi hành chương trình bên trong Chân này
cũng nhận điện áp cho phép lập trình Vpp=12V khi lập trình Flash (khi đó áp
lập trình 12V được chọn)
eXTAL1 va XTAL2
XTALI và XTAL2 là hai ngõ vào va 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 chịp
Figure 7 Oscillator Connections
Notes: Cl, C2 = 30 pF +'10 pF for Crystals
= 40 pF + 10 pF for Ceramic Resonators
Hình: Các kết nối của bộ dao động
Không có yêu câu nào về duty cycle của tín hiệu xung ngoài,vì ngõ nhập nối với mạch tạo xung nội là một flip-flop chia đôi, nhưng các chỉ định về thời
gian high và low, các mức áp tối đa và tối thiểu phải được tuân theo
=———ễễễễễễễễễễễ————ễễ -~
Trang 11LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Các đặc trưng khác sẽ được trình bày một cách chỉ tiết hơn ở những phần tiếp
theo sau đây
3 Các tổ chức bộ nhớ
AT89C51 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ó thể ở bên trong; dù vậy chúng có thể được mở rộng bằng các thành phần
ngoài lên đến tối đa 64 Kbytes bộ nhớ chương trình và 64 Kbytes bộ nhớ dữ
liệu
Bộ nhớ bên trong bao gồm ROM và RAM trên chip, RAM trên chip bao
gồm nhiều phần : phan lưu trữ đa dụng, phần lưu trữ địa chỉ hóa từng bít, các
bank thanh ghi và các thanh ghi chức năng đặc biệt
Hai đặc tính cần lưu ý là :
e Các thanh ghi và các port xuất nhập đã được xếp trong bộ nhớ và
có thể được truy xuất trực tiếp giống như các địa chỉ bộ nhớ khác
e Ngăn xếp bên trong RAM nội nhỏ hơn so với RAM ngoài như trong các bộ vi xử lý khác
Chi tiết về bộ nhớ RAM trên chip:
Như ta thấy trên hình (_), RAM bên trong AT89C5I1 được phân chia giữa các bank thanh ghi (00H-1FH), RAM địa chỉ hóa từng bít (20H-2FH), RAM đa dụng (30H-7FH) và các thanh ghi chức năng đặc biệt (S0H-FFH)
3.1 RAM đa dụng
Mặc dù trên hình cho thấy 80 byte RAM đa dụng chiếm các địa chỉ từ
30H-7EH, 32 byte dưới cùng từ 00H đến IFH cũng có thể được dùng với mục
đích tương tự (mặc dù các địa chỉ này đã có mục đích khác)
Mọi địa chỉ trong vùng RAM đa dụng đều có thể được truy xuất tự do dùng
cách đánh địa chỉ trực tiếp hoặc gián tiếp Ví dụ, để đọc nội dung ở địa chỉ 5FH của RAM nội vào thanh ghi tích lũy, lệnh sau sẽ được dùng :
MOV A,5FH
Lệnh này di chuyển 1 byte dữ liệu dùng cách đánh địa chỉ trực tiếp để xác
định “địa chỉ nguồn” (5FH) Đích nhận đữ liệu được ngầm xác định trong mã
lệnh là thanh ghi tích lũy A
RAM bên trong cũng có thể được truy xuất dùng cách đánh địa chỉ gián tiếp qua R0 hay R1 Ví dụ, hai lệnh sau thi hành cùng nhiệm vụ như lệnh đơn ở
trên :
SVTH: NGUYỄN CÔNG TRỰC 15 GVHD: Ths NGUYEN HUY HUNG
Trang 12LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THỊ CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Lệnh đầu dùng địa chỉ tức thời để di chuyển giá trị 5FH vào thanh ghi RO,
và lệnh thứ hai dùng địa chỉ trực tiếp để di chuyển đữ liệu “được trỏ bởi RO”
vào thanh ghi tích lũy
——=————
SVTH: NGUYEN CONG TRUC 16 GVHD: Th.§ NGUYEN HUY HUNG
Trang 13LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Địa chỉ Địa chỉ bit Địa chỉ Dia chi bit
8 được địa chỉ hóa
8 được chỉ hóa
8 dudc chi héa
8 |khOng duc dia chi héa
Bank 3 8§9_ |không được địa chỉ hóa
chỉ hóa được chỉ hóa ông được chỉ hóa
87 |86 |85 |84 |83 J82 181 Bank 1 được
3.2 RAM địa chỉ hóa từng bít
ATS9C51 chứa 210 bit được dia chỉ hóa, trong đó 128 bit là ở các địa chỉ
byte 20H đến 2FH, và phần còn lại là trong các thanh ghi chức năng đặc biệt
Ý tưởng truy xuất từng bịt riêng rễ bằng phần mềm là một đặc tính tiện lợi của vi điều khiển nói chung Các bit có thể được đặt, xóa, AND, OR, với một
lệnh đơn Đa số các vi xử lý đòi hỏi một chuỗi lệnh đọc-sửa-ghi để đạt được
SS
SVTH: NGUYEN CONG TRUC 17 GVHD: Ths NGUYEN HUY HUNG
Trang 14LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VA THI CONG MACH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
hiệu quả tương tự Hơn nữa, cdc port I/O ciing được địa chỉ hóa từng bít làm đơn
Chú ý rằng “địa chỉ bit 67H” 1a bit có trọng số lớn nhất (MSB) ở “địa chỉ
byte 2CH” Lệnh trên sẽ không tác động đến các bịt khác ở địa chỉ này Các vi
xử lý sẽ phải thi hành nhiệm vụ tương tự như sau :
MOV A,2CH : đọc cả byte
ORL A, #10000000B ; set MSB
MOV 2CH,A ; ghi lai ca byte
3.3 Các bank thanh ghi :
32 byte thấp nhất của bộ nhớ nội là dành cho các bank thanh ghi Bộ lệnh của 8051/8031 hỗ trợ 8 thanh ghi (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-07H Lệnh sau đây sẽ đọc nội dung ở địa chỉ 05H vào thanh ghi tích lũy :
MOV A,R5
Đây là lệnh 1 byte dùng địa chỉ thanh ghi Tất nhiên, thao tác tương tự có thể được thi hành bằng lệnh 2 byte dùng địa chỉ trực tiếp nằm trong byte thứ hai
MOV A,05H
Các lệnh dùng các thanh ghi RO đến R7 thì sẽ ngắn hơn và nhanh hơn các
lệnh tương ứng nhưng dùng địa chỉ trực tiếp Các giá trị đữ liệu được dùng thường xuyên nên dùng một trong các thanh ghi này
Bank thanh ghỉ tích cực có thể chuyển đổi bằng cách thay đổi các bit chọn
bank thanh ghi trong từ trạng thái chương trình (PSW) Giả sử rằng bank thanh
ghi 3 được tích cực, lệnh sau sẽ ghi nội dung của thanh ghi tích lũy vào địa chỉ 18H:
MOV RO,A
Ý tưởng dùng “các bank thanh ghi” cho phép “chuyển hướng” chương trình
nhanh và hiệu quả (từng phần riêng rẽ của phần mễm sẽ có một bộ thanh
ghi riêng không phụ thuộc vào các phần khác)
SVTH: NGUYEN CONG TRỰC 18 GVHD: Th.S NGUYEN HUY HUNG
Trang 15
— #
a
LUAN VAN TOT NGHIEP THIẾT KẾ VÀ THI CÔNG MẠCH:
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
4 Các thanh ghi chức năng đặc biệt
Một bản đồ vùng bộ nhớ trên chip được gọi là không gian thanh ghi chức năng đặc biệt (SFR) như được trình bày trong bảng
Lưu ý rằng không phải tất cả các địa chỉ đều được sử dụng, và các địa
chỉ không được sử dụng có thể không được cung cấp trên con chip Các hành
động đọc đến các địa chỉ này nói chung sẽ trả về các dữ liệu ngẫu nhiên, và các
hành động viết sẽ có một hiệu ứng không xác định |
Các phần mềm người dùng không nên viết các mức 1 đến những vị trí không được liệt kê này, vì chúng có thể được dùng trong các sản phẩm tương lai
khi thêm vào các đặc trưng mới Trong trường hợp này, các giá trị reset hoặc
không tích cực của các bit mới sẽ luôn là 0
Các thanh ghi nội của AT89C51 được truy xuất ngầm định bởi bộ lệnh
Vi dy lénh “INC A” sé tăng nội dung của thanh ghi tích lũy A lên 1 Tác động
này được ngầm định trong mã lệnh
Các thanh ghi trong AT89C51 được định dạng như một phần của RAM trên chip Vì vậy mỗi thanh ghi sẽ có một địa chỉ (ngoại trừ thanh ghi đếm
chương trình và thanh ghi lệnh vì các thanh ghi này hiếm khi bị tác động trực
tiếp, nên không lợi lộc gì khi đặt chúng vào trong RAM trên chip)
Đó là lý do để AT§9C51 có nhiều thanh ghi như vậy Cũng như R0 đến R7, có 21 thanh ghi chức năng đặc biét (SFR : Special Function Register) ở vùng
trên của RAM nội, từ địa chỉ 80H đến FFH Chú ý rằng hầu hết 128 địa chỉ từ
80H đến FFH không được định nghĩa Chỉ có 21 địa chỉ SFR là được định nghĩa
Ngoại trừ tích lãy (A) có thể được truy xuất ngầm như đã nói, đa số các SFR được truy xuất dùng địa chỉ trực tiếp Chú ý rằng một vài SFR có thể được
địa chỉ hóa bit hoặc byte Người thiết kế phải thận trọng khi truy xuất bit và
byte Ví dụ lệnh sau :SETB 0EOH sẽ set bit O trong thanh ghi tích lũy, các bit
khác không đổi Ta thấy rằng E0H đồng thời là địa chỉ byte của cả thanh ghi
tích lũy và là địa chỉ bit của bít có trọng số nhỏ nhất trong thanh ghi tích lũy Vì
lệnh SETB chỉ tác động trên bit, nên chỉ có địa chỉ bit là có hiệu quả
Trang 16
LUẬN VĂN TỐT NGHIỆP THIET KE VA THI CONG MACH
QUAN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Bit Ky hiéu Địa chỉ Ý nghĩa
01 = bank 1: dia chi 08H —- 0EH
10 = bank 2: dia chi 10 H- 17H
11 = bank 3: dia chi 18H — 1Fh
Cờ nhớ (CY) có công dụng kép Thông thường nó được dùng cho các lệnh
toán học : nó sẽ được set nếu có một số nhớ sinh ra bởi phép cộng hoặc có một
số mượn bởi phép trừ Ví dụ, nếu thanh ghi tích lũy chứa FFH, thì lệnh ADD A,
#1 sẽ trả về thanh ghi tích lũy kết quả 00H và set cờ nhớ trong PSW
Cờ nhớ cũng có thể xem như một thanh ghi 1 bịt cho các lệnh luận ly thi hành trên bịt Ví dụ, lệnh sau sẽ AND bit 25H với cờ nhớ và đặt kết quả trở vào
cờ nhớ:ANL C,25H
* Cờ nhớ phụ
Khi cộng các số BCD, cờ nhớ phụ (AC) được set nếu kết quả của 4 bit
thấp trong khoảng 0AH đến 0FH Nếu các giá trị được cộng là số BCD, thì sau
lệnh cộng cần có DA A (hiệu chỉnh thập phân thanh ghi tích lũy) để mang kết
quả lớn hơn 9 vào nibble cao
*Co0
Cờ 0 ŒO) là 1 bít cờ đa dụng dành cho các ứng dụng của người dùng
* Các bit chọn bank thanh ghi
Cac bit chon bank thanh ghi (RS0 và RS1) xác định bank thanh ghi được
tích cực Chúng được xóa sau khi reset hệ thống và được thay đổi bằng phần
mềm nếu cần Ví dụ, ba lệnh sau cho phép bank thanh ghi 3 và di chuyển nội
SO
SVTH: NGUYEN CONG TRUC 20 GVHD: Th.S NGUYEN HUY HUNG
Trang 17
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
dung của thanh ghi R7 (địa chỉ byte 1FH) đến thanh ghi tích lũy :
SEITB RSI SETB RSO MOV A,R7
Khi chương trình được hợp dịch, các đại chỉ bit đúng được thay thế cho các
ký hiệu “RS1” và “RS0” Vậy, lệnh SETB RSI sẽ giống như lệnh SETB OD4H |
* Cờ tràn
Cờ tràn (OV) được set sau một lệnh cộng hoặc trừ nếu có một phép toán bị |
tràn Khi các số có dấu được công hoặc trừ với nhau, phần mềm có thể kiểm tra
bit này để xác định xem kết quả có nằm trong tâm xác định không Khi các số
không dấu được cộng, bit OV có thể được bỏ qua Các kết quả lớn hơn +127
hoặc nhỏ hơn -128 sẽ set bit OV
Kết quả là một số có dấu 8EH được xem như -116, không phải là kết quả
đúng (142), vì vậy, bit OV được set
4.2 Thanh ghi B
Thanh ghi B ở địa chỉ FOH được dùng cùng với thanh ghi tích lũy A cho
các phép toán nhân và chia Lệnh MUL AB sẽ nhân các giá trị không dấu 8 bit
trong A và B rồi trả về kết quả 16 bit trong A (byte thấp) và B (byte cao) Lệnh
DIV AB sẽ chia A cho B rồi trả về kết quả nguyên trong A và phần dư trong B
Thanh ghi B cũng có thể được xem như thanh ghi đệm đa dụng Nó được địa chỉ
hóa từng bịt bằng các địa chi bit F0OH đến F7H
4.3 Con trỏ ngăn xếp
Con trỏ ngăn xếp (SP) là một thanh ghi 8 bit ở địa chỉ 81H Nó chứa địa chỉ của byte dữ liệu hiện hành trên đỉnh của ngăn xếp Các lệnh trên ngăn xếp
bao gồm các thao tác cất đữ liệu vào ngăn xếp và lấy dữ liệu ra khỏi ngăn xếp
Lệnh cất dữ liệu vào ngăn xếp sẽ làm tăng SP trước khi ghi dữ liệu, và lệnh lấy
đữ liệu ra khỏi ngăn xếp sẽ đọc dữ liệu và giảm SP Ngăn xếp của 8051/8031
được giữ trong RAM nội và được giới hạn các địa chỉ có thể truy xuất bằng địa
chỉ gián tiếp Chúng là 128 byte đầu cia AT89C51
SVTH: NGUYEN CONG TRUC 21 GVHD: Th.S NGUYEN HUY HUNG
Trang 18LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VA THI CONG MACH
QUAN LY CUOC GOI DIEN THOAI BAN
Ss
Trén AT89C51 ngan xép bi gidi han 32 byte vi dia chi cao nhat cha RAM
trên chip là 7FH Sở đĩ dùng giá trị 5FH vì SP sẽ tăng lên 60H trước khi cất byte
dữ liệu đầu tiên
Người thiết kế có thể chọn không phải khởi động lại con trổ ngăn xếp mà
để nó lấy giá trị mặc định khi reset hệ thống Giá trị mặc định đó là 07H và kết
quả là ngăn đầu tiên để cất đữ liệu có địa chỉ là 08H Nếu phần mềm ứng dụng
không khởi động lại SP, bank thanh ghi 1 (có thể cả 2 và 3) sẽ không dùng được
vì vàng RAM này đã được dùng làm ngăn xếp
Ngăn xếp được truy xuất trực tiếp bằng các lệnh PUSH và POP để lưu trữ
tạm thời và lấy lại đữ liệu, hoặc được truy xuất ngâm bằng các lệnh gọi chương
trình con (ACALL, LCALL) và các lệnh trở về (RET, RETD) để cất và lấy lại bộ
đếm chương trình
4.4 Con trỏ dữ liệu
Con trỏ dữ liệu (DPTR) được dùng để truy xuất bộ nhớ ngoài là một thanh
ghi 16 bit 6 địa chỉ 82H (DPL : byte thấp) và 83H (DPH : byte cao) Ba lệnh sau
sẽ ghi 55H vào RAM ngoài ở địa chỉ 1000H :
MOV A,#55H
MOV _ DPTR, #1000H
MOVX @DPTR,A
Lệnh đầu tiên dùng địa chỉ tức thời để tải dữ liệu 55H vào thanh ghi tích
lũy Lệnh thứ hai cũng dùng địa chỉ tức thời, lần nay dé tai dif liệu 16 bit 1000H
vào con trỏ dữ liệu Lệnh thứ ba dùng địa chỉ gián tiếp để di chuyển dữ liệu
trong A (55H) đến RAM ngoài ở địa chỉ được chứa trong DPTR (1000H)
4.5 Các thanh ghi port xuất nhập
Cac port cia 8051/8031 bao gém Port 06 dia chi 80H, Port 1 6 dia chi
90H, Port 2 6 dia chi AOH va Port 3 6 dia chi BOH Tat ca cdc port đều được địa
chỉ hóa từng bit Điều đó cung cấp một khả năng giao tiếp thuận lợi Ví dụ nếu
một motor được nối qua một cuộn dây có transistor lái đến bit 7 của Port 1, nó
có thể được bật và tắt bằng một lệnh đơn :
SETB Pl.7 ; bậtmotor
CLR Pl7 ;tắtmotor
Các lệnh trên dùng dấu chấm để xác định một bit trong một byte Trình
hợp dịch sẽ thi hành sự chuyển đổi cần thiết, vì vậy hai lệnh sau đây là như
nhau :
¬— SS
SVTH: NGUYỄN CÔNG TRỰC 22 GVHD: Th.S NGUYEN HUY HUNG
Trang 19
LUẬN VĂN TỐT NGHIỆP THIET KE VA THI CONG MACH
QUAN LY CUOC GOIDIEN THOAI BAN
CLR P1.7
CLR 97H
Trong một ví dụ khác, xem xét giao tiếp đến một thiết bị với một bit trạng
thái gọi là BUSY, được set khi thiết bị đang bận và được xóa khi thiết bị da sin
sàng Nếu BUSY được nối tới P1.5, vòng lặp sau sẽ được dùng để chờ thiết bị
trở lại trạng thái sẵn sàng :
WAIT: JB P1.5, WAIT
Lệnh này có nghĩa là “nếu bit P1.5 được set thì nhảy tới nhấn WATT” Nói
cách khác “nhảy trở lại và kiểm tra lần nữa”
4.6 Các thanh ghi timer
AT89C51 chứa hai bộ định thời / đếm 16 bit được dùng cho việc định thời
hoặc đếm sự kiện Timer 0 6 địa chỉ 8AH (TL0 : byte thấp) và 8CH (THO : byte
cao) Timer 1 ở địa chỉ 8BH (TLI : byte thấp) và 8DH (THI : byte cao) Việc
vận hành timer được set bởi thanh ghi Timer Mode (TMOD) ở địa chỉ 89H va
thanh ghi điều khiển timer (TCON) ở địa chỉ 88H Chỉ có TCON được địa chỉ
hóa từng bit
4.7 Các thanh ghi port nối tiếp
8051/8031 chứa một port nối tiếp trên chip 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 cho việc giao tiếp với các IC
khác có giao tiếp nối tiếp (các bộ chuyển đổi A/D, các thanh ghi dịch ) Một
thanh ghi gọi là bộ đệm dữ liệu nối tiếp (SBUF) ở địa chỉ 99H sẽ giữ cả hai dữ
liệu truyền và nhận Khi truyền dữ liệu thì ghi lên SBUE, khi nhận dữ liệu thì
đọc SBUE 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) (được địa chỉ hóa từng bit) ở địa chỉ 98H
4.8 Các thanh ghi ngắt
AT89CS5I 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ả hai thanh ghi được địa chỉ hóa từng bit
4.9 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 nhiễu bit
điều khiển Chúng được tóm tắt trong bảng sau :
eo SVTH: NGUYỄN CÔNG TRỰC 23 GVHD: Th.S NGUYỄN HUY HÙNG
Trang 20
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
7 SMOD Bit gấp đôi tốc độ baud, nêu được set thì
tốc độ baud sẽ tăng gấp đôi trong các mode 1,2 va3 cua port néi tiép
1 PD Giảm công xuất, được set để kích họat
mode giảm công suất, chỉ thoát khi reset
0 IDL Mode cho, set đề kích hoạt mode chờ, chỉ
thoát khi có ngắt hoặc reset hệ thống
5 Bảo vệ bộ nhớ
Các bit khoá bộ nhớ chương trình Vi điều khiển AT89C51 có 3 bit khoá
có thể bỏ không lập trình (U) hoặc được lập trình (P) để nhận các đặc trưng
thêm vào được liệt kê trong bảng dưới đây (với LB1, LB2, LB3 là các bịt khóa
2 ỊP U U Các lệnh MOVC được thi hành từ bộ nhớ chương
trình ngoài bị cấm khi lấy các byte mã từ bộ nhớ nội,
/EA được lấy mẫu và được chốt lại khi reset và hơn
nữa, việc lập trình bộ nhớ Flash là bị cấm
4 | Như chế độ 3 nhưng việc thi hành ngoài cũng bị
Khi bit khoá 1 được lập trình, mức logic tại chân EA được lấy mẫu và
chốt lại khi reset Nếu thiết bị được bật nguồn mà không có reset, việc chốt sẽ
được khởi tạo với một giá trị ngẫu nhiên cho đến khi được reset Giá trị được
chốt của EA phải bằng với mức logic hiện tại ở chân đó để cho thiết bị làm
việc một cách chính xác
6 Hoạt động của port nối tiếp
6.1 Giới thiệu
AT89C51 có một port nối tiếp trong chip có thể hoạt động ở nhiều chế
độ trên một dãi tần số rộng Chức năng chủ yếu của port nối tiếp là thực hiện
SVTH: NGUYEN CONG TRUC 24 GVHD: ThS NGUYỄN HUY HÙNG
Trang 21
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
chuyển đổi song song sang nối tiếp đối với dữ liệu xuất, và chuyển đổi nối tiếp
sang song song với dữ liệu nhập
Truy xuất phần cứng đến port nối tiếp qua các chân TXD và RXD Các
chân này có các chức năng khác với hai bit của Port 3, P3.1 ở chân 11 (TXD) và
P3.0 ở chân 10 (RXD)
Port nối tiếp cho 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 thu và
được giữ trong khi ký tự thứ hai được nhận Nếu CPU đọc ký tự thứ nhất trước
khi ký tự thứ hai được thu được thu đây đủ thì dữ liệu sẽ không bị mất
Hai thanh ghi chức năng đặc biệt cho phép phần mềm truy xuất đến port
nối tiếp là : SBUF và SCON Bộ đệm port nối tiếp (SBUE) ở địa chỉ 99H thật sự
là hai bộ đệm Viết vào SBUF để nạp dữ liệu sẽ được phát, và đọc SBUF để
truy xuất dữ liệu thu được Đây là hai thanh ghi riêng biệt : thanh ghi chỉ ghi để
phát và thanh ghi chỉ đọc để thu
Thanh ghi điều khiển port nối tiếp (SCON) ở địa chỉ 98H là thanh ghi có
địa chỉ bit chứa các bit trạng thái và các bit điều khiển Các bịt điều khiển đặt
chế độ hoạt động cho port nối tiếp, và các bit trạng thái báo kết thúc việc phát
hoặc thu ký tự Các bịt trạnh thái có thể được kiểm tra bằng phần mềm hoặc có
Trang 22LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUAN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
6.2 Thanh ghi điều khiển port nối tiếp
Chế độ hoạt động của port nối tiếp được đặt bằng cách ghi vào thanh ghi
chế độ port nối tiếp (SCON) ở địa chỉ 98H Sau đây là các bắng tóm tắt thanh
ghi SCON và các chế độ của port nối tiếp :
Bit Ký hiệu | Địa chỉ Mô tả
SCON.7 SMO 9FH_ | Bi:0 của chế độ port nối tiếp
SCON.6 SMI 9EH Bit 1 của chế độ port nối tiếp
SCON.5 SM2 9DH_ | Bit 2 cia chế độ port nối tiếp Cho phép
truyền thông đa xử lý trong các chế đọ 2 và
3; RI se không bị tác động nếu bit thứ 9 thu
SCON.2 RBS 9AH Bit § thu, bit thứ 9 thu được
SCON.1 TI 99H Cờ ngắt phát Đặt lên 1 khi kết thúc phát ký
SMO SMI Chế độ Mô tả Tốc độ baud
0 0 0 Thanh ghi dịch | Cố định (Fosc /12)
0 1 1 UART 8 bit Thay đối (đặt bằng timer)
1 0 2 UART 9 bit Cố định (Fọsc chia cho 12
hoặc 64)
1 1 3 UART 9 bit | Thay đổi (đặt bằng timer)
Các chế độ port nối tiếp
Trước khi sử dụng port nối tiếp, phải khởi động SCON cho đúng chế độ Ví dụ,
lệnh MOV SCON, #01010010B khởi động port nối tiếp cho chế độ 1
(SMO/SM1 = 0/1), cho phép bộ thu (REN = 1) va đặt cờ ngắt phát (mt = 1) dé
chỉ bộ phát sẵn sàng hoạt động
SO
SVTH: NGUYEN CONG TRUC 26 GVHD: Th.S NGUYEN HUY HUNG
Trang 23
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUAN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
6.3 Các chế độ hoạt động
Port nối tiếp có 4 chế độ hoat động, có thể chọn được bằng cách viết các
số 1 hay 0 vào các bit SM0 và SMI trong SCON Có ba chế độ cho phép truyền thông bất đồng bộ, với mỗi ký tự được thu (nhận) hoặc phát đều được đóng
khung bằng một bit start và 1 bit stop Ở chế độ thứ tư, port nối tiếp hoạt động
như một thanh ghi dich đơn giản
6.3.1 Thanh ghi dịch 8 bit (chế độ 0)
Chế độ 0 được chọn bằng cách ghi các bit 0 vào SMI và SMO của SCON,
đưa port nối tiếp vào chế độ thanh ghi dịch 8 bit Dữ liệu nối tiếp vào và ra qua
RXD và TXD xuất xung nhịp dịch § bit được phát hoặc thu với bịt đầu tiên là
LSB Tốc độ baud cố định ở 1/12 tần số dao động trên chip
Việc phát đi được khởi động bằng bất cứ lệnh nào ghi dữ liệu vào SBUE
Dữ liệu được dịch ra ngoài trên đường RXD (P3.0) với các xung nhịp được gửi
Tả đường TXD (P3.1) Mỗi bit phát đi hợp lệ (trên RXD) trong một chu kỳ máy
Trong mỗi chu kỳ máy, tín hiệu xung nhập xuống thấp ở S3PI và trở về mức
Giản đồ thời gian port nối tiếp phát ở chế độ 0
SVTH: NGUYEN CONG TRUC 27 GVHD: ThS NGUYỄN HUY HÙNG
Trang 24
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUAN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Việc thu được khởi động khi bit cho phép bộ thu (REN) là 1 và bit ngắt thu
(RD là 0 Qui tắc tổng quát là đặt REN khi bắt đầu chương trình để khởi động port nối tiếp, rồi xóa RI để bắt đầu hoạt động nhập dữ liệu Khi RI bị xóa, các xung nhịp được đưa ra đường TXD, bắt đầu chu kỳ máy kế tiếp, và dữ liệu theo xung nhịp ở đường RXD Lấy xung nhịp cho dữ liệu vào port nối tiếp xảy ra ở
cạnh dương của TXD
—>| [F— Một chu kỳ máy
(TXD) Giản đồ thời gian port nối tiếp thu ở chế độ 0
Một ứng dụng của chế độ thanh ghi dịch là mở rộng khả năng xuất của AT89C5I IC thanh ghi dịch nối tiếp ra song song có thể được nối vào các
đường TXD và RXD của AT§9C51 để cung cấp thêm 8 đường ra Có thể nối xâu chuỗi thêm các thanh ghi dịch để mở rộng thêm
Chế độ thanh ghỉ dịch của port nối tiếp
6.3.2 UART 8 bit với tốc độ baud thay đổi được (chế độ 1)
Ở chế độ 1, port nối tiếp của AT§9C51 làm việc như một UART 8 bít với
tốc độ baud thay đổi được Một UART (Universal Asynchronous
Receiver/Transmitter : Bộ thu/phát bất đồng bộ vạn năng) là một dụng cụ thu
và phát dữ liệu nối tiếp với mỗi ký tự dữ liệu đi trước là bit start ở mức thấp và
theo sau là bit stop ở mức cao Đôi khi xen thêm bit kiểm tra chẵn lẻ giữa bit đữ
liệu cuối cùng và bit stop Hoạt động chủ yếu của UART là chuyển đổi song
song sang nối tiếp với dữ liệu xuất và chuyển đổi nối tiếp sang song song với dữ liệu nhập
SVTH: NGUYỄN CONG TRUC 28 GVHD: Th.S NGUYỄN HUY HÙNG
L
Trang 25
LUẬN VĂN TỐT NGHIỆP THIET KE VA THI CONG MACH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Ở chế độ 1, 10 bit được phát trên TXD hoặc thu trên RXD Những bit đó
là : 1 bit start (đuôn luôn là 0), 8 bit dữ liệu (LSB đầu tiên) và 1 bít stop (luôn
luôn là 1) Với hoạt động thu, bit stop được đưa vào RBS§ trong SCON Trong
AT89C51 chế dộ baud được đặt bằng tốc độ báo tràn của Timer 1
Tạo xung nhịp và đồng bộ hóa các thanh ghi dịch của port nối tiếp trong các chế độ 1, 2 và 3 được thiết lập bằng bộ đếm 4 bit chia cho 16, ngõ ra là
xung nhịp tốc độ baud Ngõ vào của bộ đếm này được chọn qua phần mềm
Truyền dữ liệu (phát) được khởi động bằng cách ghi vào SBUE, nhưng vẫn chưa thật sự bắt đầu chạy cho đến khi sự thay thế kế tiếp của bộ đếm chia cho
16 cung cấp tốc độ baud cổng nối tiếp Dữ liệu được dịch ra ngoài trên đường
TXD bắt đầu bằng bit start, theo sau là 8 bit đữ liệu và sau cùng là bit stop Dd
rộng (theo thời gian của mỗi bit) là nghịch đảo của tốc độ baud được lập trình
trong timer Cờ ngắt phát (TD được đặt lên 1 khi xuất hiện bit stop trén TXD
rxD \ san / POX BEX Be YBa YX DH YDS \ DE BF RE
Trang 26
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Việc thu dữ liệu được khởi động bằng một chuyển trạng thái từ 1 xuống 0
trên RXD Bộ đếm 16 tức thời được xóa để đồng bộ số đếm với luồng bit đến
Luống bit đến được lấy mẫu giữa 16 lần đếm
Bộ thu sẽ phát hiện được bit start sai bằng cách yêu cầu trạng thái 0 ở (bit
start) ở lần đếm thứ 8 sau khi có chuyển trạng thái từ 1 xuống 0 đầu tiên Nếu
điều này không xảy ra, người ta giả sử là bộ thu được kích bởi nhiễu chứ không
phải do một ký tự hợp lệ Bộ thu được reset và quay về trạng thái nghỉ (idle),
tìm kiếm (đợi) chuyển trạng thái từ 1 xuống 0 kế
Giả sử đã phát hiện được bit start hợp lệ, thì tiếp tục thu ký tự Bít start
được bỏ qua và 8 bit đữ liệu được đưa vào thanh ghi dịch cổng nối tiếp theo
xung nhịp Khi đã có được tất cả 8 bit, điều sau đây xảy ra :
1 Bit thứ 9 (bit stop) được chốt vào RB8 trong SCON
2 SBUFE được nạp với 8 bit dữ liệu
3 Cờ ngắt bộ thu (RD được đặt lên 1
Tuy nhiên, những điều này chỉ xảy ra nếu đã có những điều kiện sau :
1.RI=0
2 SM2 = 1 và bit stop thu được là 1, hoặc SM2 = 0
Đồi hỏi RI = 0 để bảo đảm là phần mềm đã đọc ký tự trước (và RI được xóa)
Điều kiện thứ hai hơi phức tạpn nhưng chỉ áp dụng trong chế độ truyền thông đa
xử lý Điều đó hàm ý là “không đặt RI lên 1 trong chế độ truyền thông đa xử lý
khi bít dữ liệu thứ 9 là 0)
6.3.3 UART 9 bit với tốc độ baud cố định (chế độ 2)
Khi SMI = 1 và SM0 =0, cổng nối tiếp làm việc ở chế độ 2, như một
UART 9 bit có tốc độ baud cố định 11 bit sẽ được phát hoặc thu : 1 bít start, 8
bit dir liu, bit di liệu thứ 9 có thể lập trình được và 1 bit stop Khi phát, bit thứ
9 là bất cứ gì đã được đưa vào TB§ trong SCON (có thể là bit parity) Khi thu,
bit thứ 9 thu được sẽ ở trong RB8 Tốc độ baud ở chế độ 2 là 1/32 hoặc 1/16 tần
số dao động trên chip
6.3.4 UART 9 bít với tốc độ baud thay đổi được
Chế độ này giống như chế độ 2 ngoại trừ tốc độ baud có thể lập trình được và được cung cấp bởi timer Thật ra, các chế độ 1,2 và 3 rất giống nhau
Các khác biệt là ở tốc độ baud (ccó định trong chế độ 2, thay đổi trong các chế
độ 1 và 3) và ở số bit đữ liệu (8 trong chế độ 1, 9 trong các chế độ 2 và 3)
SVTH: NGUYỄN CÔNG TRỰC 30 GVHD: Ths NGUYEN HUY HUNG
Trang 27
QUAN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
6.4 Khởi động và truy xuất các thanh ghi cổng nối tiếp
6.4.1 Cho phép thu
Bit cho phép bé thu (REN = Receiver Enable) trong SCON phai được đặt
lên 1 bằng phầm mềm để cho phép thu các ký tự Thông thường thực hiện việc
nàyở đầu chương trình khi khởi động cổng nối tiếp, timer, Có thể thực hiện
việc này theo hai cách Lệnh SETB REN sẽ đặt REN lên 1, hoặc lệnh MOV
SCON, #xxxIxxxxB sẽ đặt REN lên 1 và đặt hoặc xóa các bit khác trong SCON
khi cần (Các x phải là 0 hoặc 2 để đặt chế độ làm việc)
6.4.2 Bit dữ liệu thứ 9
Bit dữ liệu thứ 9 cần phát trong các chế độ 2 và 3 phải được nạp vào
trong TB8 bằng phần mềm Bit dữ liệu dữ liệu thứ 9 thu được đặt ở RB8 Phần
mềm có thể cần hoặc không cần bit dữ liệu thứ 9, phụ thuộc vào đặc tính kỹ
thuật của thiết bị nối tiếp sử dụng (Bit dữ liệu thứ 9 cũng đóng một vai trò quan
trọng trong truyền thông đa xử lý)
6.4.3 Thêm 1 bit parity
Thường sử dụng bit dữ liệu thứ 9 để thêm parity vào ký tự Như đã xét ở các chương trước, bit P trong từ trạng thái chương trình (PSW) được đặt lên 1
hoặc bị xóa mỗi chu kỳ máy để thiết lập kiểm tra chẵn với 8 bit trong thanh ghi
tích lũy Ví dụ, nếu truyền thông cần 8 bit dữ liệu cộng thêm kiểm tra chấn, có
thể sử dụng các lệnh sau để phát 8 bit trong thanh ghi tích lũy với kiển tra chắn
thêm vào bịt thứ 9 :
MOV C,P ; Dat bit parity chan vao TB8 MOV TB8, C ; nó trở thành bit đữ liệu thứ 9
MOV SBUF, A ; Chuyén 8 bit ty ACC vao SBUF
Nếu cần parity lẻ thì sửa các lệnh lại như sau :
MOV C,P ; Dat bit parity chin vao cd C
CPL C ; Đổi sang parity lẻ
MOV TB§,C MOV SBUF, A
Dĩ nhiên, việc sử dụng parity không bị giới hạn ở các chế độ 2 và 3 Ở chế
độ 1, 8 bit dữ liệu được truyền đi có thể bao gồm 7 bit đữ liệu cộng thêm bit
parity Dé truyén ma ASCII 7 bit với parity chẵn ở bit 8, có thể sử dụng các lệnh
sau :
CLR ACC.7 ; bảo dim MSB được xóa
SVTH: NGUYỄN CÔNG TRỰC 31 GVHD: Th.S NGUYEN HUY HUNG
Trang 28
LUẬN VĂN TỐT NGHIỆP THIET KE VA THI CONG MACH
QUAN LY CUOC GỌI ĐIỆN THOẠI BÀN
Hai cờ ngắt thu và phát (RI và TỊ) trong SCON đóng một vai trò quan
trọng trong truyền thông nối tiếp dùng AT§9C51 Cả hai bit được đặt lên 1 bằng phần cứng, nhưng phải được xóa bằng phần mềm
Ví dụ: thường RI được đặt lên 1 khi kết thúc việc thu ký tự và báo “bộ
đệm thu tràn” Điều kiện này có thể được kiểm tra trong phần mêm hoặc có thể được lập trình để gây ra một ngắt Nếu phần mềm muốn nhập một ký tự từ thiết
bị được nối vào cổng nối tiếp (có thể là thiết bị đầu cuối biển thị video), nó phải
đợi cho đến khi RI được đặt lên 1, rồi xóa RI và đọc ký tự từ SBUF Chương
ký tự trước đã được gởi đi, đợi cho đến khi việc truyền dữ liệu hoàn tất trước khi gửi ký tự kế Các lệnh sau sẽ truyền ký tự trong thanh ghi tích lũy:
WAIT:JNB TLWAIT ; Kiểm tra TIcho đến khi nó bằng 1
CLR TI ; Xda TI MOV SBUF, A ; Gởi ký tự di
Các đoạn chương trình trên là một phần của các hàm nhập và xuất ký tự chuẩn
6.5 Tốc độ baud port nối tiếp
Như đã nói, tốc độ baud cố định ở các chế độ 0 và 2 Trong chế độ 0, nó luôn luôn là tần số dao động trên chip được chia cho 12 Thông thường thạch
anh ấn định tần số dao động trên chip của AT89C51, nhưng cũng có thể sử dụng nguồn xung nhịp khác Giả sử với tần số dao động danh định là 12 MHz, thì tốc
độ baud chế độ 0 là 1 MHz
SVTH: NGUYEN CONG TRUC 32 GVHD: ThS NGUYỄN HUY HÙNG
Trang 29
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
trén chip SMOD = 1 dé baud
| +32 LI
b) ché d6 2
đao động MOD =0 xung nhịp tốc
trên chip SMOD = 1 độ baud
| +16 LS
c) các chế độ 1 và 3
Các nguồn tạo xung nhịp cho port nối tiếp
Mặc nhiên sau khi reset hệ thống, tốc độ baud chế độ 2 là tần số bộ dao động chia cho 64 Tốc độ baud cũng bị ảnh hưởng bởi một bit trong thanh ghi
điều khiển nguồn cung cấp (PCON) Bit 7 của PCON là bit SMOD Đặt bit
SMOD lên 1 làm gấp đôi tốc độ baud trong các chế độ 1, 2 và 3 Trong chế
độ 2, tốc độ baud có thể bị gấp đôi từ giá trị mặc nhiên của 1/64 tần số dao
động (SMOD =0) đến 1/32 tần số dao déng (SMOD = 1)
Vì PCON không được định địa chỉ theo bit, nên để đặt bit SMOD lên 1 cần phải
theo các lệnh sau :
MOV A,PCON ; Lấy giá trị hiện thời của PCON SETB ACC.7 : Đặt bit 7 (SMOD) lên 1
MOV PCON,A ; Ghi giá trị ngược về PCON
Các tốc độ baud trong các chế độ 1 và 3 được xác định bằng tốc độ tràn của Timer 1 Vì timer hoạt động ở tân số tương đối cao, tràn timer được chia thêm cho 32 (16 nếu SMOD = 1) trước khi cung cấp xung nhịp tốc độ baudcho port nối tiếp
= 1 SVTH: NGUYEN CONG TRUC 33 GVHD: ThS NGUYỄN HUY HÙNG
Trang 30
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
* Sit dung Timer 1 làm xung nhịp tốc độ baud
Xét AT89C51, cách thông dụng để tạo tốc độ baud là khởi động TMOD
cho chế độ 8 bit tự động nạp lại (chế độ 2) và đặt giá trị nạp lại đúng vào THỊ
để cho tốc độ tràn đúng với tốc độ baud TMOD được khởi động như sau :
MOV TMOD, #0010xxxxB
Các x là các bit 1 hoặc 0 can cho timer
Cũng có thể đạt được các tốc độ baud thấp bằng cách sử dụng timer chế độ
1 với TMOD = 0001xxxxB Tuy nhiên, tốn thêm phần mềm vì các thanh ghi
TH1/TLI phải được khởi động lại sau mỗi lần tràn Việc này sẽ được thực hiện
trong chương trình phục vụ ngắt Một chọn lựa khác là cấp xung nhịp cho Timer
1 từ ngoài dùng T1(P3.5) Và luôn luôn tốc độ baud là tốc độ tràn của Timer l
được chia cho 32 (hoặc cho 16, nếu SMOD = 1)
Công thức tổng quát để xác định tốc độ baud trong các chế độ 1 và 3 là :
Tốc độ baud = Tốc độ tràn của Timer 1 + 32
Ví dụ, muốn làm việc với tốc độ baud là 1200 baud, thì tốc độ tràn của Timer 1 phải là :
1200 x 32 = 38.4 KHz
Nếu dùng thạch anh 12 MHz, Timer 1 được cấp xung nhịp 1 MHz hay
1000 KHz Vì tốc đô tràn của Timer 1 là 38.4 KHz và timer được cấp xung nhịp
1000 KHz, thi cần tràn sau 1000 + 38.4 = 26.04 xung nhịp (lầm tròn là 26) Vì
timer đếm lên và tràn xảy ra khi có sự thay đổi từ FFH xuống 00H ở số đếm
Như vậy giá trị đúng cần nạp vào THỊ là -26 Cách dễ nhất để đặt giá trị nạp
lại vào THỊ là :
MOV THI,#-26
Trình hợp dịch sẽ thực hiện chuyển đổi cần thiết Trong trường hợp này —
26 được chuyển thành 0E6H Như vậy, lệnh trên hoàn toàn giống với lệnh :
MOV THI,#0E6H
Do việc làm tròn nên có sai số nhỏ trong tốc độ baud Tổng quát thì cho
phép dung sai 5% trong truyền thông bất đồng bộ (start/stop) Có thể có được tốc độ baud chính xác nếu dùng thạch anh 11.059 MHz Bảng sau đây tóm tắt
các giá trị nạp lại cho các tốc độ baud thông dụng nhất, ding thach anh 12 MHZ hoac 11.059 MHz:
====ỄỄễ———ễễ
SVTH: NGUYEN CONG TRUC 34 GVHD: ThS NGUYỄN HUY HÙNG
Trang 31
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Tốc độ Tần số SMOD | Giátrinạp | Tốc độ Sai số
thạch anh lại baud
SN54/74LS47 là IC giải mã/điều khiển công suất thấp chuyển mã BCD sang 7
đoạn bao gồm các cổng NAND, các bộ đệm ngõ vào và 7 cổng (AND-OR-
Đảo) Chúng cung cấp trực tiếp các đồng ra thấp để chạy các vật hiển thị(Led 7
Đoạn) 7 cổng NAND và 1 chân điều khiển được nối thành cặp để tạo mã BCD
và phần bổ sung của nó có thể dùng cho 7 cổng AND-OR-ĐẢO giải mã Còn
lại I cổng NAND và 3 bộ đệm ngõ vào đưa ra các chân LT(amp test),
BI/RBO(Đlanking input / ripple-blanking output), RBI(@ipple-blanking input)
Mạch nhận 4 bit nhị phân(mã BCD) và ,phu thuộc vào trạng thái của các chân
hổ trợ, giải mã dữ liệu này sang Led 7 đoạn Các mức ngõ ra được trình bày
trong bảng sự thật Cấu hình ngõ ra của SN54/74LS47 được thiết kế để chịu
được điện thế tương đối cao mà Led 7 Đoạn yêu cầu
Các chân ngõ ra sẽ chịu được điện áp 15V với một dòng điện nghịch tối đa 250
uA Các đoạn hiển thị yêu cầu đòng điện lên tới 24 mA có thể được đưa trực
tiếp từ SN74LS47 Kiểu hiển thị cho ngõ vào mã BCD mà vượt quá số 9 là
những ký tự đặc biệt, tuỳ thuộc ở trạng thái ngõ vào
Chân L/T sẽ hoạt động vào bất cứ lúc nào mà chân BL/RBO tích cực mức cao IC
này có một chân để trống(BI) được dùng để điều khiển cường độ sáng bằng
cách thay đối tần số và công suất chu kỳ của tín hiệu vào chân BI, hay cấm các
chân ngõ ra
SVTH: NGUYEN CONG TRUC 35 GVHD: ThS NGUYỄN HUY HÙNG
Trang 32
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Trang 33
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Trang 34
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
L LÍỊL LH HÌH H H TH H HH HH H HH H HH
LÔ LỊL H L LỊH H HH L HH HH HH HH H HH
LẺ LÍỊL H L HÌH HH HH LH HH H H H HoH HK A Lok jt H H LỊH H H HH H LH HH HH HH HH
- Optocouplers hay còn gọi là Optoisolator là một loại linh kiện quang được sử
để tạo mạch cách ly về điện Cho phép người thiết kế mạch điều khiển ngõ ra
bằng thay đổi năng lượng cấp cho ngõ vào Tuy nhiên hai phần ngõ vào và ngõ
ra của mạch được cách ly về điện bằng một điện trở vô cùng lớn Linh kiện này
có thể chứa photodiode, transistor , opamp hoặc các linh kiện khác có thể
giao tiếp với mạch điều khiển điều khiển bởi Mạch điều khiển thường sử dụng Led hồng ngoại
- Nguyên tắc hoạt động của linh kiện : Khi có dòng điện chạy qua Led, led sẽ phát ra sóng hồng ngoại và dưới tác dụng của sóng hồng ngoại bộ phận
thu như photodiode sẽ bị tác động và dẫn điện Như vậy hai mạch ngõ vào và ngõ ra được cách ly với nhau
- Mạch điều khiển từ xa sử dụng optocuopler loại 4N35 là loại có phần
thu sử dụng transistor như hình sau:
+Chân 5: Collector
SVTH: NGUYỄN CÔNG TRỰC 38 GVHD: ThS NGUYỄN HUY HÙNG
Trang 35
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
UẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
+ Chân 6: Base
V IC MT8870
a, Cau tao:
IC MT8870 là một mach thu tin hiéu DTMF hoàn chỉnh tích hợp cả hai
chức năng mạch lọc tách băng thông và giải mã tín hiệu DTMF ra tín hiệu số
bốn bit nhị phân IC này được sản xuất bằng công nghệ CMOS, kích thước nhỏ ,
ít tốn năng lượng và khả năng ứng dụng rộng rãi IC được tổng hợp gồm nhiều
b Chức năng :
- Chức năng lọc tách tin hiéu DTMF 1am hai nhém tone cao va tone thấp
- Giai mã tín hiệu DTMF ( tương ứng với 16 phím trên bàn phím máy điện thoại ) thành mã 4 bit nhị phân
- IC còn được cung cấp thêm phần khuyếch đại vi sai ở ngõ vào , có thể
điều chỉnh được độ lợi
- IC hoạt động với dao động thạch anh 3.5795 Mhz
- IC có phần chốt ba trạng thái ở ngõ ra giao tiếp với bus dữ liễu
* Một số ứng dung cua IC MT8870:
- Điều khiển từ xa
- Mạch thu cho tổng đài ( thu tín hiệu DTME )
- Mạch tín cước điện thoại v.v
* Tên và chức năng của các chân IC MT8870
IC MT8870 là vi mạch được đóng gói trong vỏ gồm có 18 chân chia làm hai hàng Tên và chức năng của MT§870 được trình bày tóm tắt ở bảng dưới
đây:
SVTH: NGUYEN CONG TRUC 39 GVHD: Th.SNGUYỄN HUY HÙNG
Trang 36
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
1 IN+ Ngõ vào không đảo mạch khuếch đại
2 IN- Ngõ vào đảo mạch khuyếch đại
3 GS Chân hồi tiếp của ngõ ra mạch khuyếch đại để gắn với
Điện trở bên ngoài để điều khiển hệ thống khuyếch đại
4 Vref | Nguồn bias
5 INH INHIBIT (inhput) :Khi chân này ở mức cao thì sẽ không nhận
biết các phím nhấn A, B,C ,D Thường chân được đạt ở mức
thấp
6 PWDN | Power Down (nput) : tác động mức cao Dùng để tiết kiệm
năng lượng khi không sử dụng IC
7 OSCI Chân tạo xung clock (input)
8 OSC2 | Chân tạo xung clock (output) Thach anh 3.579545Mhz được
nối với hai chân OSC1 Và OSC2 tạo thành mạch dao động nội
9 VSS Ground: chân nối đất
10 TOE Three State Output Enable ( input) : Điều khiển xuất đữ liệu
Ở ngõ ra TOE=O : ngõ ra ở trang thai Hi-Z
TOE=l : ngõ ra là dữ liệu Q1-Q4
11-14 QI-Q4_ | Three State Data (output):bốn ngõ ra trạng thái được điều
khiển bởi chân TOE
15 StD Delay Steering (output): Tich cu'c mức cao, thông báo tín hiệu
DTMF đã được giải mã và chốt ở ngõ ra sẵn sang xuất ra Ở chân Q1 -> Q4 khi TOE =1, trở về mức logic thấp khi điện áp
trên chân Sư GT nhỏ hơn mức ngưỡng (V „„)
16 Est Early Steering (output): tích cực mức cao, báo có tín hiệu
DTME, tạo thời gian để giải mã tone sang tín hiệu số Khi mất tín hiệu DTME sẽ trở về mức thấp
17 SƯGT | Steering Input/Guard time (Output) Bidirectional: Khi điện áp
chân này lớn hơn điện áp ngưỡng (V „„) thì ghi nhận giải mã moat tone và chốt dữ liệu ở ngõ ra Khi điện áp nhỏ hơn điện
áp ngưỡng thì giải mã thiết bị để chuẩn bị nhận moat tone
Trang 37LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
Digit] TOE | INH | ESt Q4 Q3 Q2 Ql
A H H L Không giải mã các giá trị này ngõ ra
B H H L vẫn giữ giá trị cũ của lần giải mã
Vi mạch MAX 232 chuyển đối mức TTL ở ngõ vàothành mức +10V
hoặc —10V ở phía truyền và các mức +3V +15V hoặc -3V -15V
thành mức TTL ở phía nhận Trên hình 4.1 mô tả cách sắp xếp chân và
sơ đồ cấu trúc của vi mạch MAX232
SVTH: NGUYEN CONG TRUC 41 GVHD: ThS NGUYỄN HUY HÙNG
Trang 38
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
Đường dẫn TxD dẫn trực tiếp đến chân 11 của vi mạch MAX 232 còn bộ đệm nối ra ở chân 14 được nối trực tiếp tới chân số 2 của cổng nối tiếp
Việc sắp xếp chân ở ổ cắm nối tiếp được lựa chọn sao cho có thể dùng một cáp nối trực tiếp cổng nối tiếp của hệ phát triển, với cổng nối tiếp của máy
tính thường là COM 1
Với đường dẫn RxD mọi việc cũng diễn ra tương tự chân 13 của vi mạch
được nối đến chân 3 của cổng nối tiếp
Oe AD2 AD3
AD
AOS ane
kê GND it ta
DS: Thay đổi dữ liệu
ResSer: Ngõ vào reset
IRQ: Yêu cầu ngắt ngõ ra
e Dua vao thay thế cho máy tính IBM AT về đồng hồ/lịch
e© Những chân tương thích với MC146818B và DS1287
e_ Hoạt động hoàn toàn ổn định với khoảng 10 năm mà không có năng
Trang 39
LUẬN VĂN TỐT NGHIỆP THIẾT KẾ VÀ THI CÔNG MẠCH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
e Đếm giây, phút, giờ, ngày, ngày trong tuần, thứ, tháng, và năm có giá trị tới năm 2100
Thời gian, lịch, và báo động có 2 dạng là mã nhị phân hoặc mã BCD
Đồng hồ 12 hoặc 24 giờ với chế, với chế độ 12 giờ AM và PM
Tùy chọn thời gian tiết kiệm ban ngày
Có thể chọn lựa giữ bus thời gian của Motorola và Intel
Sử dụng bus đa thành phần cho hiệu quả của các chân
Bề mặt với phần mềm xác định 128 RAM
a) 14 bytes cho đồng hồ và thanh ghi điểu khiển
b) 114 bytes cho mục đích chung của RAM
e©_ Lập trình với tín hiệu sóng vuông ở ngõ ra
e_ Bus tương thích với những tín hiệu ngắt (IRQ bà)
e_ Có 3 ngắt là riêng rẽ về che dấu phần mễm và có thể kiểm tra
a) Thời gian của ngày được báo động 1 lần/giây tới 1 lần/ngày
b) Nhịp độ tuần hoàn từ 122ms tới 500ms
c) Kết thúc của chu trình cặp nhật đồng hồ
MÔ TẢ:
Đồng hồ thời gian thực DS12887 kết hợp Ram được thiết kế để thay thế
trực tiếp cho DS1287 DS12887 giống hệt thể loại, vừa vặn, và chức năng của DS1287, và có mục đích cộng vào RAM 64 bytes Việc truy cặp tới khoảng
trống cộng thêm của RAM thì được xác định bởi mức logic hiện tại của AD6
trong suốt phần địa chỉ của 1 chu kỳ truy cặp Một nguồn năng lượng lithium,
tinh thể thạch anh, và mạch bảo vệ ghi được gói gọn trong 24 chân Hiểu theo
cách thông thường, DS12887 là một hệ thống phụ hoàn thiện thay thế cho l6 thành phần trong 1 ứng dụng đặt thù Những chức năng bao gồm 1 đồng hồ thời
gian trong ngày ổn định, 1 báo động, lịch 100 năm, lập trình ngắt, bộ phát sóng
vuông, và 114 byte RAM tĩnh ổn định Đồng hồ thời gian thực để phân biệt thời
gian đó trong ngày, và bộ nhớ vẫn được duy trì ngay cả khi không có nguồn
OPERA TION: (hoạt động)
Sơ đồ khối trong hình 1 nêu lên sự kết nối chân với những chức năng chủ yếu bên trong DS12887 Những phần sau mô tả chức năng của các chân
SVTH: NGUYỄN CÔNG TRỰC 43 GVHD: Th.S NGUYỄN HUY HÙNG
Trang 40
LUẬN VĂN TỐT NGHIỆP THIET KE VA THI CONG MACH
QUẢN LÝ CUỘC GỌI ĐIỆN THOẠI BÀN
====——rr— -
BLOCK DIAGRAM DS12887: ( Sơ đồ khối)
Chức năng của đồng hồ thời gian thực sẽ tiếp tục hoạt động và tất cả
những vị trí của bộ nhớ RAM, thời gian, lịch, và báo động; những vị trí còn lại
của bộ nhớ ổn định bất chấp mức của ngõ vào Vcc Khi Vcc được ứng dụng vào
DS12887 và vươn tới mức lớn hơn 4.25 volts, thiết bị trở nên truy cặp được sau
200ms, điều kiện đó là bộ tạo dao động đang chạy và chuỗi đếm xuống của bộ
dao động không reset (xem thanh ghi A) Thời gian hoạt động này cho phép hệ
thống đạt ổn định sau khi cung cấp nguồn Khi Vcc rơi xuống điện áp dưới 4.25 Volts, ngõ vào chip select thì bắt buộc bên trong không hoạt động bất chấp giá
trị ngõ vào của chân CSbù Vì vậy DS12887 chống được việc ghi Khi DS12887
đang ở trạng thái chống ghi, tất cả các ngõ vào thì không được quan tâm và tất
cả các ngõ ra ở trạng thái trở kháng ở mức cao Khi Vcc rơi xuống mức tương
ứng 3 volts, thì nguồn cung cấp bên ngoài bị tắt đi và 1 nguồn năng lượng lithium bên trong cung cấp năng lượng tới đồng hồ thời gian thực và bộ nhớ
RAM
TT
SVTH: NGUYEN CONG TRUC 44 GVHD: Th.S NGUYEN HUY HUNG