CHƯƠNG 5:
KHỐI RAM – ROM
8031 có khả năng mở rộng bộ nhớ lên đến 64K bộ nhớ chương trình và
64K bộ nhớ dữ liệu ngoài. Do đó có thể dùng thêm RAM và ROM.
1. ROM :
Bộ nhớ ROM (Read Only Memory) là bộ nhớ được thiết kế để lưu trữ các
dữ liệu cố đònh. Trong lúc hoạt động bình thường, dữ liệu mới không thể được
ghi vào ROM mà dữ liệu chỉ có thể được đọc từ ROM. Khi ROM được lập trình
thì khi ngừng cấp nguồn các dữ liệu bên trong ROM không bò mất.
ROM có ba bus: bus dữ liệu, bus đòa chỉ và bus điều khiển.
Với bộ nhớ như trên bus đòa chỉ có 4 đường, bus dữ liệu có 8 đường tức là
từ dữ liệu có độ dài 8 bit. Như vậy dung lượng bộ nhớ là 16 bytes.
Các loại bộ nhớ ROM:
- Programable ROM (PROM): chỉ được lập trình một lần, không thể nạp
lại được vì mỗi bit nhớ của nó tương tự như một cầu chì khi đức thì không thể
nối lại được.
- Erasable Programable ROM (EPROM): có thể lập trình lại được, cũng có
thể xóa và lập trình lại nhiều lần. Để xóa dữ liệu trong EPROM cần phải chiếu
tia cực tím trực tiếp vào EPROM. Để lập trình cho EPROM phải dùng mạch
nạp EPROM.
Từ những đặc điểm như trên bộ nhớ EPROM phù hợp với máy tính cước
này. Có thể được xóa và lập trình lại nhiều lần để cập nhật lại giá cước điện
thoại.
Vì bộ nhớ chương trình khá lớn nên EPROM được chọn sẽ là vi mạch
2764 có dung lượng nhớ 8 Kbytes.
Sơ đồ chân được kết nối như sau:
+5V
PGM Vpp
Vcc
EPROM
2764
D
0
D
7
A
0
A12
GND
OE
CE
PSEN
ADDRESS
OUTPUT DATA
Sơ đồ kết nối EPROM
2. RAM
Bộ nhớ RAM (Random Access Memory) là bộ nhớ truy xuất ngẫu nhiên
có nghóa là bất kỳ ô nhớ nào cũng dễ dàng truy xuất trong bộ nhớ.
Bộ nhớ RAM dùng để lưu trữ tạm thời chương trình và dữ liệu, nội dung
các ô nhớ trong RAM thay đổi liên tục khi vi xử lý thực hiện chương trình.
Một nhược điểm lớn của RAM là dữ liệu chứa trong RAM sẽ bò mất khi
RAM bò mất nguồn cung cấp nhưng điều này đã được cải thiện nhờ dùng một
nguồn pin dự phòng để nuôi RAM.
Có hai loại bộ nhớ RAM :
- RAM tónh (Static RAM): sự tồn tại dữ liệu trong SRAM dưới dạng tắt
hay bão hòa của các transistor nên sự ổn đònh của dữ liệu theo thời gian là khá
bền.
- RAM động (Dynamic RAM): dữ liệu được tồn trữ trong DRAM dưới
dạng điện tích trong điện dung ký sinh nên rất dễ bò thất thoát bởi hiện tượng rò
rỉ, vì vậy khi dùng DRAM ngoài mạch giải mã như thường mà người ta còn
phải có một mạch làm tươi, do đó sẽ làm phức tạp thêm cho mạch.
Từ những đặc điểm trên, bộ nhớ SRAM phù hợp với máy tính cước này.
Vì máy có thể nhớ tới 255 cuộc đàm thoại bao gồm số tiền, số cuộc gọi,…
nên SRAM được chọn sẽ là 6264 có dung lượng nhớ 8 Kbytes.
Các vi mạch EPROM 2764 và SRAM 6264 sẽ được giới thiệu ở phần PHỤ
LỤC.
Sơ đồ kết nối chân của RAM 6264 như sau:
D
0
+5V
CE2
Vcc
RAM
6264
GND
RD
WR
ADDRESS
CE1
OUTPUT DATA
A12
D0
D7
A0
Sơ đồ kết nối Ram
3. Kết Nối Bộ Nhớ EPROM Và RAM Vào CPU :
Bộ nhớ EPROM và RAM được kết nối với CPU thông qua các bus đòa chỉ,
bus dữ liệu và bus điều khiển. Như đã khảo sát ở trên, CPU 8031 có thể có bộ
nhớ chương trình và dữ liệu lên đến 64 Kbytes nhưng trong phạm vi máy tính
do chương trình làm việc cũng tương đối lớn nên ta chọn hai IC nhớ SRAM và
EPROM có tổng dung lượng nhớ là 16 Kbytes.
a. Bus đòa chỉ (Address Bus):
Là bus một chiều chuyển tải thông tin từ CPU 8031 đến các IC nhớ. Do
8031 có thể điều khiển bộ nhớ mở rộng lên đến 64 Kbytes tức là có tới 16
đường đòa chỉ ra A
0
….A
15
mà các IC nhớ chỉ có 16 Kbytes. Vì vậy ta sử dụng 13
bit thấp đòa chỉ của CPU từ A
0
… A
12
để kết nối song song với 13 đường đòa chỉ
của SRAM và EPROM. Các bit đòa chỉ còn lại sẽ dùng cho việc điều khiển.
b. Bus dữ liệu (Data Bus):
Là bus dữ liệu hai chiều có chức năng chuyển dữ liệu qua lại giữa CPU và
các IC nhớ. Do vậy 8 đường dữ liệu của CPU 8031 sẽ nối song song với 8
đường dữ liệu của SRAM và EPROM.
c. Bus điều khiển (Control Bus):
Bus điều khiển là bus khá quan trọng trong mạch vì nó quyết đònh xem khi
nào SRAM hay EPROM sẽ được đọc dữ liệu và khi nào SRAM sẽ ghi dữ liệu.
Do vậy chân RD\ của CPU sẽ được nối đến chân OE\ của SRAM và WD\
của CPU sẽ được nối đến chân WE\ của SRAM.
Chân PSEN\ của CPU sẽ được nối đến OE\ của EPROM để cho phép CPU
gọi chương trình lưu trữ sẵn chứa trong EPROM.
Mỗi SRAM và EPROM có dung lượng nhớ 8 Kbytes nên việc qui đònh nội
dung đòa chỉ ô nhớ như sau:
- Đối với EPROM do CPU có đặc điểm khi máy được cấp nguồn thì sẽ bắt
đầu hoạt động ở đòa chỉ 0000H nên đòa chỉ của EPROM bắt đầu từ 0000H và kết
thúc ở đòa chỉ 1FFFH.
- Đối với SRAM, đòa chỉ bắt đầu là 8000H và kết thúc ở 9FFFH. Sở dó ta chọn
đòa chỉ này vì theo thiết kế phần cứng chân đòa chỉ cuối cùng của CPU (A
15
) được
dùng làm chân điều khiển và được nối đến chân CS\ của SRAM.
IV. KHỐI CHỐT ĐỊA CHỈ:
Trong máy tính cước này, CPU được dùng là vi điều khiển 8031 có đặc điểm
là 8 bit thấp của đòa chỉ được đa hợp với 8 bit dữ liệu. Vi mạch dùng để chốt đòa
chỉ là vi mạch chốt 74573.
Vi mạch 74573 dùng để chốt đòa chỉ do CPU xuất ra:
- 8 ngõ vào của 74573 được kết nối với 8 ngõ AD
0
… AD
7
(Port 0) của CPU
8031.
- 8 ngõ ra của 74573 được kết nối với các đường đòa chỉ của SRAM và
EPROM
Vi mạch 74573 có 8 Flip-Flop D và 8 cổng đệm điều khiển. Tín hiệu điều
khiển chốt đòa chỉ được CPU đưa ra ở chân ALE (Address Latch Enable) được nối
vào chân C (Chip) của 74573.
Ở nửa chu kỳ đầu của chương trình làm việc, các Flip-Flop D của 74573 sẽ
chốt các đòa chỉ do CPU đưa tới, khi đó chân C ở mức 1. Ở nữa chu kỳ còn lại, C ở
mức 0 dữ liệu xuất ra ở Q chính là dữ liệu ở các ngõ vào trước đó, lúc này các
đường port 0 sẽ rãnh rỗi để nhận và xuất dữ liệu đến SRAM và EPROM.
V. KHỐI NHẬN ÂM HIỆU – GIẢI MÃ BÀN PHÍM (ĐẢO CỰC – DTMF THU):
* Khi thuê bao không được đặt ở chế độ đảo cực:
- Lúc không đảo cực có nghóa là công tắc chân 1 và 2 được nối lại với nhau,
chân TXD và RXD sẽ được truyền trực tiếp với nhau.
- Để bắt đầu cuộc gọi khi thuê bao bắt đầu nhấc máy, và điều này báo hiệu
cho tổng đài biết rằng thuê bao muốn thiết lập cuộc gọi, đồng thời ngõ ra P3.3 tức
là chân INT1 của 8031 xuất ra mức logic 1 làm qua điện trở R6 để phân cực cho
transistor Q1 hoạt động kéo theo các tiếp điểm của rơlay đóng lại.
- Khi tổng đài nhận biết rằng có thuê bao muốn thiết lập cuộc gọi, thì tổng
đài sẽ gửi tín hiệu mời quay số. Tín hiệu đó sẽ đi qua chân 6 và chân 7 của head 7
để sau đó tiếp tục đi vào mạch.
- Một trong hai cặp tone theo chân 6 sẽ làm cho diode IS01 cháy để tác động
làm 4N35 dẫn, điều này kéo theo chân TXD và RXD đều bò dẫn xuống mass. Lúc
này chương trình phần mềm sẽ hiểu rằng khi RXD và TXD đều ở mức logic 0 là
máy đang được cài đặt ở chế độ không được đảo cực. Tín hiệu sau khi qua ISO1,
lại tiếp tục đi ra chân 5 của head7.
- Một tín hiệu còn lại sẽ đi qua chân 7 của head7, qua tiếp điểm rơlay, qua
điện trở R8, qua tụ điện C7, qua điện trở R9, đi vào chân đảo cực –IN của vi
mạch MT8870. Tín hiệu đó sau khi vào bộ thu DTMF hoạt động ở chế độ tone.
Sau đó tín hiệu sẽ quay trở ra theo đường chân GS qua điện trở R10 và chạy
ngược ra chân 7 của head7.
- Hai tín hiệu từ chân 7 và chân 5 sẽ tiếp tục đi vào máy thuê bao và tại máy
thuê bao sẽ nghe tín hiệu mời quay số của tổng đài. Sau đó thuê bao có thể quay
số cần gọi.
- Khi thuê bao nhấn số xong, thì sẽ có một cặp tín hiệu tone đi vào hai chân
5 và chân 7, tương tự như tín hiệu từ tổng đài tới, một trong hai tone theo chân 5
sẽ làm cho diode ISO2 cháy để tác động làm 4N35 dẫn. Điều này kéo theo
chânTXD và RXD đều bò dẫn xuống mass. Lúc này chương trình phần mềm sẽ
hiểu rằng khi TXD và RXD đều ở mức logic 0 là máy đang được cài đặt ở chế độ
không đảo cực. Tín hiệu sau khi qua ISO2 lại tiếp tục đi ra chân 6 của head7.
- Một tín hiệu còn lại sẽ đi qua chân 7 của head7, qua tiếp điểm rơlay, qua
điện trở R8, qua tụ điện C7, qua điện trở R9, đi vào chân đảo cực –IN của vi
mạch MT8870. Tín hiệu đó sau khi vào bộ thu DTMF hoạt động ở chế độ tone. Nó
có tác dụng giải mã các phím bấm của của điện thoại thành các bit dữ liệu để vi
xử lý nhận biết và xử lý. Sau đó tín hiệu sẽ quay trở ra theo đường chân GS qua
điện trở R10 và chạy ngược ra chân 7 của head7.
- Hai tín hiệu từ chân 6 và chân 7 sẽ tiếp tục đi ra tổng đài và tổng đài sẽ
hiểu rằng có máy thuê bao muốn yêu cầu chuyển mạch tới máy thuê bao khác và
sau đó có các thông báo ví dụ như tín hiệu hồi âm chuông tới thuê bao hoặc tín
hiệu báo bận từ thuê bao cần liên lạc.
- Khi bên thuê bao kia nhấc máy, tín hiệu thông qua chuyển mạch tự động
của tổng đài sẽ vào chân 7 và chân 6 và tương tự như trên, lúc này RXD và TXD
vẫn ở mức logic 0, chân STD của MT8870 đưa tín hiệu vào INT0 và chương trình
phần mềm điều khiển xử lý sau 10s chân cho phép đọc RD\ của vi điều khiển 8031
sẽ qua các cổng logic và tác động vào chân TOE của MT8870 để cho phép các bit
dữ liệu xuất ra qua Q
1
…Q
4
vào CPU để xử lý tính tiền.
* Khi máy được cài ở chế độ đảo cực: