Tải bản đầy đủ (.doc) (124 trang)

Luận văn điện tử Điều khiển và kiểm tra thiết bị điện bằng điện thoại di động qua soạn tin nhắn

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 (3.38 MB, 124 trang )

GVHD: Th.S Vũ Thị Hồng Nga
Lời nói đầu
***
Với sự phát triển mạnh mẽ của Khoa học kĩ thuật trong những thập niên
gần đây, ngành Bưu chính viễn thông đã tạo ra bước ngoặc quan trọng trong
lĩnh vực thông tin để đáp ứng nhu cầu của con người. Hiện nay, hệ thống
thông tin qua mạng điện thoại đã được toàn cầu hóa, trở nên gần gũi và quen
thuộc với con người. Nhờ hệ thống thông tin này mà con người đã không bị
hạn chế về khoảng cách liên lạc. Trong lĩnh vực thông tin đã đáp ứng được
nhu cầu cần thông tin của con người. Vậy trong lĩnh vực điều khiển tự động
thì sao?
Thật vậy, trong việc điều khiển có nhiều cách như: điều khiển bằng tia
hồng ngoại, điều khiển bằng vô tuyến… nhưng các cách ấy đều phụ thuộc
vào khoảng cách, chỉ có tác dụng trong phạm vi điều khiển gần.
Với sự phát triển của KHKT, với mức độ nhu cầu của con người ngày
càng cao, đòi hỏi con người phải điều khiển được một thiết bị điện nào đó
mà không bị hạn chế về khoảng cách điều khiển. Từ đó, ý tưởng đề tài là
phải thiết kế một hệ thống dùng ngay chính đường truyền có sẵn của mạng
thông tin qua điện thoại để điều khiển.
Với kết quả khả quan trong việc nghiên cứu, thiết kế đề tài của một số tài
liệu tham khảo và thực tế đã chắc chắn rằng việc sử dụng điện thoại di động
để điều khiển thiết bị điện là một vấn đề hoàn toàn có thể được, có tính khả
thi, phù hợp với xu thế mới của con người. Đó cũng chính là vấn đề mà sinh
viên thực hiện đề tài đang quan tâm.
Với lượng kiến thức được truyền đạt trong suốt khóa học, với khả năng
của bản thân và thời gian cho phép để thực hiện đề tài nên cá nhân sinh viên
thực hiện vẫn còn những giới hạn cụ thể trong đề tài.
Sau một thời gian thực hiện luận văn tốt nghiệp, bản thân sinh viên đã
được mở rộng và hiểu biết thêm về các thiết bị chế tạo, cũng như phát hiện
ra nhiều thiếu sót. Ngoài ra, nó còn giúp cho em tìm hiểu thêm một số ứng
dụng thực tế của nhiều thiết bị, linh kiện trong thực tiễn và làm cho kiến


thức của em ngày càng được nâng cao.
Qua đó, em xin chân thành cám ơn cô Th.S Vũ Thị Hồng Nga và thầy
Th.S Trần Nguyên Bảo Trân khoa Công nghệ điện tử đã nhiệt tình giúp đỡ
và hướng dẫn em hoàn thành tốt đề tài luận văn tốt nghiệp.
Nếu trong quá trình trình bày có gì không đúng hay chưa hợp lý thì kính
mong quí thầy cô sửa chữa và có những ý kiến đóng góp giúp cho nội dung
trình bày ngày càng tốt hơn.
ĐHCN Tp.HCM, ngày 05 tháng 04 năm 2009
Sinh viên
Trương Châu Hiếu Đức
1
GVHD: Th.S Vũ Thị Hồng Nga
Nhận xét của giáo viên hướng dẫn
***
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
.
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………

……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………………………

Tp.HCM, ngày…tháng…năm 2009
Ký tên
2
GVHD: Th.S Vũ Thị Hồng Nga
Nhận xét của giáo viên phản biện
***
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
.
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………

……………………………………………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………………………

Tp.HCM, ngày…tháng…năm 2009
Ký tên
3
GVHD: Th.S Vũ Thị Hồng Nga
Mục Lục
***
Trang
Lời nói đầu…………………………………………… 1
Nhận xét của GV hướng dẫn……………………………………………………………… 2
Nhận xét của GV phản biện…………………………………… 3
CHƯƠNG 1: Lý thuyết liên quan…………………….5

1. Các phương thức giao tiếp qua máy tính
2. Module Sim300C………………………………………… 17
2.1 Giới thiệu
2.2 Cấu tạo…………………………………………………….18
2.3 Giao tiếp giữa Module với VXL………………………… 22
3. Vi xử lý 8951……………………………………………….24
4. Giải quyết vấn đề………………………………………… 44
CHƯƠNG 2: Thực hiện đồ án……………………… 45
1. Linh kiện
2. Sơ đồ khối của mô hình…………………………………….61
3. Sơ đồ mạch nguyên lý…………………………………… 62
4. Sơ đồ mạch Layout…………………………………………74
5. Nguyên lý hoạt động……………………………………….76
6. Lưu đồ giải thuật………………………………………… 80

7. Chương trình vi xử lý………………………………………82
CHƯƠNG 3: Đánh giá – Kết luận…… ………… 118

1. Kết quả thực hiện đề tài
2. Đánh giá đề tài đã thực hiện
3. Kết luận - Hướng phát triển của đề tài…………………… 119
4
GVHD: Th.S Vũ Thị Hồng Nga
*Tài liệu tham khảo
CHƯƠNG 1
Lý thuyết liên quan
1. Các phương thức giao tiếp qua máy tính
1.1 Các phương pháp điều khiển vào ra:
a. Vào ra điều khiển bằng chương trình:
Thiết bị ngoại vi được ghép tới Bus của hệ thống vi điều khiển thông qua
các phần thích ứng về công nghệ chế tạo và logic. Thích ứng về công nghệ
chế tạo là điều chỉnh công nghệ sản xuất thiết bị ngoại vi và công nghệ sản
xuất của mạch trong hệ vi điều khiển. Thích ứng về logic là nhiệm vụ tạo tín
hiệu điều khiển ngoại vi từ tín hiệu trên Bus hệ thống.
Trong hệ vi điều khiển một vùng nhớ dùng làm nơi chứa địa chỉ cổng
vào /ra và CPU xuất hoặc nhập dữ liệu từ các cổng vào/ra này bằng các lệnh
xuất/nhập IN/OUT. Lúc này cổng vào ra được xem như một thanh ghi ngoài,
chúng được viết vào hoặc đọc ra như ô nhớ RAM qua hai lệnh trên. Để phân
biệt hướng xuất hoặc nhập dữ liệu từ cổng vào ra CPU phát ra tín hiệu điều
khiển đọc hoặc viết. Để phân biệt vùng nhớ với thiết bị vào ra CPU phát ra
tín hiệu điều khiển IO/M. Khi có các lệnh này thì lệnh IN/OUT mới có tác
dụng.
Ngoài ra các lệnh qui chế độ nhớ, cũng như khả năng trao đổi dữ liệu giữa
thiết bị ngoài và hệ vi điều khiển. Lúc đó cổng vào ra được gán như địa chỉ ô
nhớ của bộ nhớ. Các thanh ghi liên quan đến cổng vào ra được xem như

ngăn nhớ. Khi bộ vi điều khiển gọi địa chỉ và xung điều khiển đọc hay viết
bộ nhớ, nó không cần xác định nơi gởi là bộ nhớ hay thiết bị vào ra. Nó chỉ
đòi hỏi nơi gởi dữ liệu vào trong khỏang thời gian cho phép. Bộ logic bên
ngoài sẽ giải mã địa chỉ kết hợp với xung MR, MW để chọn thiết bị mà
không phân biệt ngăn nhớ hay thiết bị vào ra.
b. Vào ra điều khiển bằng ngắt:
Với phương pháp điều khiển vào ra bằng chương trình CPU phải liên tục
kiểm tra trạng thái của thiết bị ngoại vi đến khi sẵn sàng. Đó là sự lãng phí
thời gian của CPU và làm cho chương trình dài và phức tạp. Khi bộ vi điều
khiển có nhiều thiết bị ngọai vi CPU không đáp ứng được nhu cầu của
chúng. Có thể đáp ứng được yêu cầu ngoại vi nhanh chóng và không theo
trình tự như định trước nhờ cơ cấu ngắt của CPU.
5
GVHD: Th.S Vũ Thị Hồng Nga
Nhờ tính chất đáp ứng ngắt tức thời của các vi điều khiển, khi có yêu cầu
ngắt từ thiết bị ngoại vi. Do đó các ngắt thường được dùng ở những trường
hợp yêu cầu đáp ứng nhanh, thời gian trả lời ngắn thực hiện ở bất cứ thời
điểm nào.
Khi đó CPU phải chuyển đến chương trình con phục vụ yêu cầu ngắt ở
cuối bất kỳ lệnh nào trong chương trình chính.
Các chương trình con phục vụ ngắt có thể lưu giữ nội dung các thanh ghi
và khôi phục lại khi thực hiện xong chương trình phục vụ ngắt và trước khi
trở lại chương trình chính. Phần cứng này trở nên phức tạp do phải giải
quyết ưu tiên về vấn đề mã hóa. Khi sử dụng hệ ngắt ta xét đến các vấn đề
sau:
Yêu cầu ngắt: kiểm tra ngắt ở cuối chu kỳ lệnh, một chu kỳ lệnh có thể kéo
dài nên tín hiệu yêu cầu ngắt thường được chốt lại cho đến khi bộ vi điều
khiển ghi nhận. Ta có thể dùng đầu vào ngắt của vi điều khiển cho nhiều
thiết bị ngoại vi nhưng CPU không xác định được nguồn yêu cầu ngắt.
Chuyển điều kiện ngắt đến phục vụ ngắt: tùy vào chế độ ngắt, lọai đầu vào

ngắt, dữ liệu vào và họ vi điều khiển được chuyển sang chương trình phục
vụ ngắt theo mỗi cách khác nhau.
Cất giữ khôi phục trạng thái: tất cả các vi điều khiển khi thực hiện ngắt
phải tự động ngắt cất giữ một trạng thái điều khiển, nó là nội dung thanh ghi
bộ đếm chương trình PC. Phần còn lại của trạng thái được cất giữ tùy theo
yêu cầu cụ thể của phần mềm.
Có hai phương pháp cất giữ trạng thái:
+ Dùng ngăn xếp: địa chỉ ngăn xếp được điều chỉnh và nhớ ở thanh ghi
con trỏ ngăn xếp.
+ Trao đổi giữa hai thanh ghi: chương trình con phục vụ ngắt được gọi đến
bằng một lệnh. Khi đó CPU chuyển sang làm việc ở thanh ghi thứ hai.
Xác định nguồn ngắt:
+ Phương pháp hỏi dòng: thứ tự chính là thứ tự ưu tiên. Bộ vi điều khiển
hỏi vòng khi chắc chắn có một thiết bị yêu cầu ngắt.
+ Phương pháp tạo vectơ hỏi vòng: tất cả các nguồn ngắt được mã hóa để
tạo vectơ ngắt. Vectơ ngắt được hiểu như một phần của địa chỉ, phân nhánh
đến chương trình con phục vụ ngắt hoặc một lệnh mà vi điều khiển phải thực
hiện trong chu kỳ lệnh kế tiếp. Vectơ ngắt được đưa vào Bus dữ liệu bằng
lệnh điều khiển của CPU.
Ưu tiên: vấn đề ưu tiên trong thời điểm có nhiều yêu cầu ngắt, để dữ liệu
vào ra của hệ thống không bị xáo trộn, thường mỗi thiết bị ngọai vi được gán
một mức ưu tiên cố định. CPU phục vụ theo mức ưu tiên giảm dần. Trong
mạch điều khiển ngắt, mức ưu tiên ngắt có tám mức được mã hóa từ ba bit.
Mã đó được so sánh với nội dung được ưu tiên mà người sử dụng nạp vào
chương trình. Nếu mức ưu tiên cao hơn mức qui định thì yêu cầu ngắt được
cho phép CPU ngắt.
6
GVHD: Th.S Vũ Thị Hồng Nga
Cho phép ngắt và cấm ngắt: có thể điều khiển các ngắt vi điều khiển bằng
phần mềm. Nghĩa là ta có thể thực hiện cho phép ngắt hoặc cấm ngắt vi điều

khiển bằng cách thiết lập cơ điều khiển bằng phần mềm.
Bộ vi điều khiển tự động cấm ngắt trong các trường hợp sau:
+ Khởi động hệ thống.
+ Sau khi ngắt.
c. Vào ra điều khiển bằng thâm nhập trực tiếp (DMA):

Thâm nhập trực tiếp là phương pháp vào ra dữ liệu nhanh nhất bằng phần
cứng. Khi chuyển dữ liệu CPU không cần phải đọc, giải mã và thực hiện các
lệnh chuyển dữ liệu mà nó chuyển quyền điều khiển các Bus cho DMAC.
DMAC tạo địa chỉ các tín hiệu cần đọc.
Để thực hiện một phép chuyển đổi DMAC mỗi DMAC phải giải quyết các
vấn đề sau.
+ Thông báo CPU yêu cầu thực hiện DMAC.
+ Điều khiển Bus và không gây ảnh hưởng đến họat động bình thường của
CPU và không gây xung đột ở Bus.
+ Xác định địa chỉ số từ đã chuyển đổi.
Để thực hiện việc chuyển đổi bằng cách thâm nhập trực tiếp, phương pháp
thông dụng nhất là bắt CPU tự treo thay vì yêu cầu ngắt CPU. Thiết bị yêu
cầu đến DMAC khi nhận được tín hiệu yêu cầu ngắt, DMAC tạo tín hiệu
HOLD đến CPU. CPU dựa vào tín hiệu HOLD khi thực hiện chu kỳ cuối
cùng của lệnh hiện tại sau đó tự treo và thông báo đến DMAC bằng tín hiệu
HALT. Khi nhận được tín hiệu trả lời HALT của CPU, DMAC lấy quyền
điều khiển Bus, tạo địa chỉ, ghi nhận số liệu của thiết bị ngọai vi bằng
DACK. Số liệu được chuyển trực tiếp giữa thiết bị ngọai vi và bộ nhớ.
1.2 Sơ lược về cách giao tiếp giữa máy tính và thiết bị
ngoại vi:
Có ba cách giao tiếp giữa máy tính và thiết bị ngọai vi. Tùy theo trường
hợp ứng dụng cụ thể mà chọn cách giao tiếp thích hợp.
a. Giao tiếp bằng SLOT-CARD:
Trong máy tính trên board mạch hệ thống thường chế tạo sẵn các Slot

nhằm mục đích mở rộng bộ nhớ, cũng như mở rộng phạm vi ứng dụng của
máy vi tính bằng cách gắn thêm trên các board mở rộng vào các Slot này.
Mỗi Slot đều có các Bus dữ liệu, Bus địa chỉ và các đường tín hiệu điều
khiển như: CLK, IOW, IOR,…Do đó việc thiết kế các SLOT-CARD từ các
đầu cắm Slot sẽ đơn giản số linh kiện ít và tận dụng được các nguồn điện
của máy vi tính(-5v/+5v, -12v/+12v) nên giá thành rẻ, dễ dàng đưa tín hiệu
điều khiển ra ngòai và tốc độ truyền nhanh.
Bên cạnh những ưu điểm nó có một số nhược điểm sau:
7
GVHD: Th.S Vũ Thị Hồng Nga
+ SLOT-CARD phải cắm vào các Slot trên board mạch hệ thống nên phải
gỡ nắp máy ra.
+ Phạm vi truyền tín hiệu gần và các dạng phức tạp. Trong một số trường
hợp không thực hiện được.
Vì vậy khi sử dụng SLOT-CARD để giao tiếp với thiết bị ngọai vi phải
cân nhắc kỹ giữa ưu và khuyết điểm. Tùy theo mục đích sử dụng mà chọn
cách thích hợp.

b. Giao tiếp bằng cổng máy in (Giao tiếp song song):
Port giao tiếp máy in dùng để giao tiếp với máy in. Trong cách giao tiếp
này dữ liệu được truyền song song gồm 8 bit và một số tín hiệu bắt tay. Đầu
nối gồm 25 chân trong đó có 8 chân được nối với 8 đường dữ liệu, một số
chân còn lại được nối với tín hiệu bắt tay (Hand-Shaking). Tất cả các đường
dữ liệu và tín hiệu điều khiển đều ở mức logic tương thích với mức logic
TTL. Hơn nữa người lập trình có thể cho phép hay không cho phép sử dụng
các ngắt ở ngõ vào, nên việc giao tiếp được dễ dàng. Tuy nhiên với mức
logic TTL thì không thể truyền đi xa được mà chỉ truyền được khỏang ngắn,
cáp truyền cũng phức tạp hơn cổng COM. Đây là nhược điểm của cổng máy
in.
c. Giao tiếp bằng cổng COM (Giao tiếp nối tiếp):


Khác với cổng máy in, cổng COM là cổng truyền dữ liệu nối tiếp. Nó
thường được dùng để giao tiếp với thiết bị ngoại vi có tốc độ xử lý dữ liệu
chậm như: chuột hoặc modem…cổng này giao tiếp theo chuẩn RS232. Dữ
liệu được truyền dưới dạng nối tiếp theo từng bit một. Tốc độ truyền bit do
người lập trình quyết định (thường là 1200bps, 2400bps, 4800bps,
9600bps…). Chiều dài dữ liệu có thể là 5,6,7 hoặc 8 bit kèm theo các bit
Start, Stop, Parity tạo thành một khung gọi là Frame. Cổng này gồm các
đường phát, đường thu và đường mass chung. Vì giao tiếp với tiêu chuẩn
RS232 nên khoảng cách truyền xa hơn so với cách truyền song song như
cổng máy in.
Truyền nối tiếp cũng có 2 lọai: đồng bộ hay không đồng bộ. Trong cách
truyền đồng bộ, dãy ký tự được truyền sẽ kèm theo ký tự đồng bộ là SYN
(mã ASCII là 22). Phương thức này cho tốc độ truyền khá cao nhưng do
mạch xử lý truyền và nhận (bao gồm mạch thêm ký tự đồng bộ, phát hiện và
báo sai…) khá phức tạp nên chỉ dùng trong các ứng dụng có yêu cầu cao về
tốc độ truyền. Còn trong các ứng dụng thông thường, nhất là các ứng dụng
trong lĩnh vực điều khiển tự động, thì không có yêu cầu về tốc độ mà yêu
cầu về độ tin cậy nhưng mạch thực hiện phải đơn giản, rẻ tiền. Khi đó, cách
truyền không đồng bộ rất phù hợp. Theo cách truyền này thì các ký tự được
truyền riêng rẽ, phân làm từng frame có bit bắt đầu, các bit dữ liệu của ký tự
cần truyền, bit chẵn lẻ (để kiểm tra lỗi đường truyền), và các bit kết thúc.
8
GVHD: Th.S Vũ Thị Hồng Nga
Chuẩn RS232-C (do EIA: Electronics Industry Associations đưa ra) là một
trong những phương thức truyền nối tiếp không đồng bộ. Theo chuẩn này thì
việc truyền thông được thực hiện ngay tại chỗ bằng cách truyền và nhận một
chuỗi các xung điện áp liên tục tương ứng với các bit. Dữ liệu ở mức TTL
được biến đổi sang các mức điện áp như sau: mức 1 là từ -3v đến -15v (tiêu
chuẩn là -12v), và mức 0 là từ +3v đến +15v(tiêu chuẩn là +12v). Việc

truyền và nhận các mức điện áp như vậy được thực hiện rất đơn giản. Chính
vì vậy mà chuẩn RS232-C đã trở thành giao diện rất phổ biến rộng rãi nhất.

Các thuật ngữ có liên quan đến giao thức truyền thông RS232-C:
+ Chu kỳ truyền dữ liệu: tốc độ truyền dữ liệu được tính bằng bit/s, nhưng
để phân biệt với cách truyền đồng bộ, người ta sử dụng đơn vị baud (tương
ứng bit/s trong thời gian có dữ liệu truyền).
+ Trạng thái đánh dấu: là khỏang thời gian không có dữ liệu truyền. Trong
suốt thời gian này, thiết bị phát sẽ giữ đường truyền ở mức cao.
+ Bit bắt đầu: một bit thấp cho biết việc truyền dữ liệu sẽ bắt đầu.
+ Các bit ký tự: là dòng dữ liệu gồm 5,6,7 hay 8 bit mã hóa ký tự được
truyền. Bit có trọng số thấp nhất(LSB) là bit đầu tiên được truyền.
+ Bit chẳn lẻ: là một bit tùy chọn(có thể có hay không), được phát đi sau các
bit ký tự dùng để kiểm tra các lỗi truyền dữ liệu. Trong chế độ kiểm tra tính
chẵn, thiết bị phát sẽ được bật 1 hay xóa về 0 bit chẵn lẻ để tính tổng các bit
1 của ký tự được truyền và bit chẵn lẻ là một số chẵn. Còn trong chế độ
kiểm tra tính lẻ, bit chẵn lẻ thực hiện tính tổng các bit 1 phải là một số lẻ.
+ Các bit kết thúc: một hay nhiều bit cao được chèn trong dòng truyền để
báo việc kết thúc truyền một ký tự, cũng như cho thiết bị nhận có đủ thời
gian chuẩn bị để sẵn sàng cho việc nhận ký tự kế tiếp.
9
GVHD: Th.S Vũ Thị Hồng Nga

Hình 1.1: Ví dụ về một ký tự được truyền theo frame gồm: 1 bit bắt đầu,
8 bit dữ liệu, 1 bit chẵn lẻ và 1 bit kết thúc.
1.3 Giao tiếp qua cổng nối tiếp:
Cổng nối tiếp trên máy tính thường gọi là cổng COM thường được sử
dụng để truyền dữ liệu 2 chiều giữa máy tính và ngoại vi vì các lý do sau:
- Khỏang cách truyền dài hơn so với cổng song song. Cổng nối tiếp truyền
mức 1 từ -3v đến -25v và mức 0 từ +3v đến +25v nên tính chống nhiễu cao

hơn cho phép khỏang cách truyền xa hơn.
- Số dây kết nối ít.
- Có thể ghép với đường dây điện thọai.
- Có thể truyền không dây dùng tia hồng ngọai.
- Ghép nối dễ dàng với vi điều khiển hay PLC.
- Cho ghép nối mạng.

Các thiết bị ghép nối nối tiếp được chia làm 2 loại DTE (Data Terminal
Equipment) và DCE ( Data Communication Equipment). DCE là các thiết bị
như modem, còn DTE là các thiết bị như các máy vi tính, vi điều khiển, PLC
là nguồn tạo ra hay tiếp nhận dữ liệu để xử lý. Có thể ghép nối DTE với
DTE hoặc DCE, DCE với DTE hoặc tín hiệu truyền nối tiếp theo dạng xung
chuẩn RS232 của EIA (Electronics Industry Associations). Mức logic 0 còn
gọi là Space giữa +3v và +25v, mức logic 1 còn gọi là Mark giữa -3 và -25.
Khi không truyền đường dây sẽ ở trạng thái Mark, khi bắt đầu truyền xung
start được truyền (+10v) sau đó là 8 bit dữ liệu, bit DO được truyền trước,
nếu bit dữ liệu mức 1 thì điện áp đường dây tương ứng là +10v, sau các bit
dữ liệu là bit kiểm tra chẵn lẻ rồi bit stop logic 1 (-10v) DTE nhận tín hiệu
truyền ngược trở lại theo đường RXD. Từ DTE tín hiệu được truyền giữa 2
dây TXD và GND theo khuôn dạng sau:
Hình 1.2:
+ Nối 2 DTE với nhau thì sử dụng sơ đồ a.
10
GVHD: Th.S Vũ Thị Hồng Nga
+ Nối DTE với DCE thì chân TXD của DCE nhận tín hiệu, còn
chân RXD thì phát tín hiệu như sơ đồ b.
Theo chuẩn RS232-C có 3 loại: DB-25 (D-Shell), BERG 16 chân và D-
Shell 9 chân.
Hình 1.3: Các loại chân cắm theo chuẩn RS232-C.
Chân

D-25
Chân
D-9 Tên Ý Nghĩa
2 3 TD,TXD Xuất dữ liệu nối tiếp
3 2 RD,RXD Nhập dữ liệu nối tiếp
4 7 RTS DTE sẵn sàng trao đổi dữ liệu
5 8 CTS Modem sẵn sàng trao đổi dữ liệu
6 6 DSR Modem sẵn sàng kết nối
7 5 SG
8 1 CD Phát giác có tín hiệu trên đường dây
20 4 DTR DTE sẵn sàng kết nối
22 9 RI Modem phát giác tín hiệu chuông

Các mạch logic dùng điện áp 5V do đó cần bộ chuyển mạch TTL/CMOS
 RS232 để có điện áp phù hợp cổng COM, có 2 dạng đầu nối đực D-25 và
D-9.
Thường sử dụng các sơ đồ kết nối sau:
11
GVHD: Th.S Vũ Thị Hồng Nga
Hình 1.4: Sơ đồ kết nối.


12
GVHD: Th.S Vũ Thị Hồng Nga
Các đặc tính kỹ thuật của RS232 như sau:
Chiều dài cáp cực đại 15m
Tốc độ dữ liệu cực đại 20Kbps
Điện áp ngõ ra cực đại -25v/+25v
Điện áp ngõ ra có tải -5v/+5v đến -15v/+15v
Trở kháng tải 3K đến 7K

Điện áp ngõ vào -15v/+15v
Độ nhạy ngõ vào -3v/+3v
Trở kháng ngõ vào 3K đến 7K
Tín hiệu truyền nối tiếp dưới dạng các bit, số bit trong một giây là Baud,
vận tốc truyền thông dụng là 300, 600, 1200, 2400, 4800, 9600, 19200 baud.
Nếu dùng vận tốc 9600 baud và khung truyền 8, E, 2(8 bit dữ liệu, 1 bit
kiểm tra chẵn, 2 bit stop) thì chuyển một byte chiếm 12 bit vậy 1 giây truyền
được 800 byte, thời gian bit là 0.1msec. Các modem đời mới có thể đạt tốc
độ 56000 baud (vi mạch 16550), 230400 baud (vi mạch 16C650), vì vậy các
modem phải nén dữ liệu trước khi truyền. Kết nối giữa máy tính (DTE) và
modem (DCE) thực hiện theo nguyên tắc các chân cùng tên nối với nhau.
Còn kết nối DTE và DTE thường dùng sơ đồ sau:
D9 D25 D25 D9
3 2 TD RD 3 2
2 3 RD TD 2 3
5 7 SG SG 7 5
4 20 DTR DTR 20 4
6 6 DSR DSR 6 6
1 8 CD CD 8 1
7 4 RTS RTS 4 7
8 5 CTS CTS 5 8
Khi DTE cần truyền dữ liệu thì DTR tích cực đưa về DSR cho biết phía
nhận sẵn sàng, đưa về CD cho biết đã nhận được sóng mang của modem ảo.
Hai DTE có cùng khung truyền nên RTS và CTS nối với nhau. Đôi khi có
thể bỏ đường nối DTR với DSR và CD.
13
GVHD: Th.S Vũ Thị Hồng Nga
Khi kết nối DTE với DCE do vận tốc truyền khác nhau cần điều khiển lưu
lượng. Có hai cách dùng phần cứng và phần mềm. Khi dùng phần cứng sử
dụng hai dây RTS và CTS. Nếu DTE muốn truyền sẽ cho RTS tác động nếu

DCE chấp nhận sẽ gởi trở về CTS và máy tính sẽ gởi dữ liệu, nếu máy tính
không nhận được sẽ không gởi dữ liệu. Điều khiển lưu lượng bằng phần
mềm dùng hai ký tự Xon và Xoff. Khi modem muốn máy tính ngừng truyền
sẽ gởi đi ký tự Xoff (ASCII 19) còn khi modem rảnh nó sẽ gởi ký tự Xon
(ASCII 17).
Việc trao đổi số liệu của máy tính được thực hiện thông qua vi mạch
UART (Univeral Asynchronous Receiver /Transmitter) còn với vi điều
khiển hay PLC thì có các vi mạch chuyên dụng hoặc được tích hợp trong vi
xử lý. Các máy tính đời mới dùng công nghệ ASIC sử dụng chip đa năng
làm nhiều nhiệm vụ giao tiếp nối tiếp, song song, cổng trò chơi, điều khiển
đĩa, tuy nhiên phần giao tiếp nối tiếp thiết kế tương hợp với các vi mạch
UART rời.
Các loại vi mạch UART thường gặp là 8250, 8250A, 16450, 16550,
16650, 16750,…6402.
1.4 MAX232 và họ IC dùng biến đổi TTLRS232-C:
Họ IC từ MAX220-MAX249 được sản xuất cho truyền thông EIA/TIA-
232E và V.28/V.24, cụ thể là cho những ứng dụng mà không có sẵn điện áp
-12v đến +12v. Họ IC này đặc biệt thích hợp cho những hệ thống dùng pin
có công suất thấp, do chúng có chế độ hạ nguồn làm giảm công suất tiêu tán
xuống dưới 5uW. MAX225, MAX233, MAX235, MAX245, MAX247
không cần các linh kiện phụ bên ngòai, được dùng cho những nơi tiết kiệm
không gian.
Các đặc điểm chính:
- Nguồn cung cấp +5v (MAX231/MAX239 dùng nguồn +5v và +12v)
- Hạ nguồn công suất thấp nhưng vẫn có thể nhận (MAX223/MAX242)
- Hỗ trợ chuẩn EIA/TIA-232E và V.28
- Nhiều bộ nhận và phát.
- Phát hiện đứt mạch đường truyền (MAX243).
a. Cấu tạo chân:
14

GVHD: Th.S Vũ Thị Hồng Nga

Hình 1.5: Sơ đồ chân MAX232.
b. Mô tả chức năng chân:
Ta thấy rằng MAX232 cần có 4 tụ ngòai (mắc vào giữa C1+ và C1-, C2+
và C2-, V+ và nguồn dương, V- và đất để biến đổi điện áp từ 0v đến 5v
thành -12v đến +12v phù hợp cho truyền thông theo chuẩn RS232. Ngoài ra
có 4 bộ khuếch đại đảo nhằm chuyển từ mức TTL ra chuẩn RS232 và ngược
lại.
c. Sơ đồ khối:
Sơ đồ sau đây cho thấy các khối bên trong MAX232 và các linh kiện mắc
bên ngòai theo dạng chuẩn:
15
GVHD: Th.S Vũ Thị Hồng Nga
Hình 1.6: Sơ đồ khối MAX232.
1.5 Các chuẩn truyền tín hiệu khác:
Có hai loại cơ bản là chuẩn giao tiếp RS485 và RS422.
Hình 1.7: Chuẩn giao tiếp RS485.
16
GVHD: Th.S Vũ Thị Hồng Nga

Chuẩn RS232 dùng đường truyền không cân bằng vì các tín hiệu lấy chuẩn
là GND chung nên dễ bị ảnh hưởng của nhiễu làm tốc độ và khỏang cách
truyền bị giới hạn. Khi muốn tăng khỏang cách truyền, một phương pháp có
thể sử dụng là dùng 2 dây truyền vi sai vì lúc này 2 dây có cùng đặc tính nên
sẽ lọai trừ được nhiễu chung. Hai chuẩn được sử dụng là RS422 và RS485
nhưng thông thường sử dụng RS485. Điện áp vi sai yêu cầu phải lớn hơn
200mV. Nếu Uab > 200mV thì tương ứng với logic 1 và Uab < -200mV
tương ứng với mức logic 0. Chuẩn RS485 sử dụng hai điện trở kết thúc là
120ohm tại hai đầu xa nhất của đường truyền và sử dụng dây xoắn đôi.

Hình 1.8: Chuẩn giao tiếp RS422.

Các đặc tính kỹ thuật:
Đặc tính RS422 RS485
Số thiết bị truyền 1 32
Số thiết bị nhận 10 32
Chiều dài cáp cực đại 1200m 1200m
Tốc độ truyền cực đại(12m - 1200m) 10Mps-100Kbps 10Mps-100Kbps
Đ/áp cực đại tại ngõ ra thiết bị truyền -0.25v – 6v -7v – 12v
Điện áp ngõ vào thiết bị nhận -10v – 10v -7v – 12v
Đối với chuẩn RS232, khoảng cách truyền không cho phép đi xa nên khi
muốn thực hiện truyền ở khoảng cách xa thì phải chuyển từ RS232 sang
chuẩn RS485 để truyền đi và sau đó chuyển từ RS485 sang RS232 để máy
tính có thể nhận dạng được.
17
GVHD: Th.S Vũ Thị Hồng Nga
2. Module Sim300C
2.1 Giới thiệu:
Hình 1.9: Module Sim300C.
Module Sim300C là một thiết bị có phương tiện GSM (Global Standard
for Mobile Communications)/GPRS (General Packet Radio Service), hoạt
động trên ba tần số EGSM (Enhanced GSM) 900MHz, DCS 1800MHz và
PCS (Personal Communication System) 1900MHz.
+ Để có chức năng như một điện thoại di động, Sim300C được kết nối với
một tấm bo mạch GSM100 thông qua đế cắm 60 chân. Trên thị trường khe
cắm này được bán rộng rãi, ngoại trừ anten.
+ Phần bo mạch GSM100, trên đó có một cái đế dùng để lắp thẻ Simcard
bất kỳ (vina, mobile, viettel…) và một cổng giao tiếp RS232.
Hình 1.10: Đế kết nối, khoảng cách chân 0.5mm.
Module Sim300C có khả năng hỗ trợ GPRS mã hóa chương trình CS-1,

CS-2, CS-3 và CS-4. *(đơn vị: kbps).
18
GVHD: Th.S Vũ Thị Hồng Nga
Coding Schemes(CS) CS-1 CS-2 CS-3 CS-4
1 Timeslot 9.05 13.4 15.6 21.4
2 Timeslot 18.1 26.8 31.2 42.8
4 Timeslot 36.2 53.6 62.4 85.6
Sim300C cấu tạo nhỏ gọn, có kích thước 40mm*33mm*2.85mm,
Sim300C có thể phù hợp với hầu hết tất cả các yêu cầu về không gian của
người sử dụng. Chẳng hạn như điện thọai thông minh và các thiết bị điện
thoại di động khác.
Ngoài ra, nó còn hai cổng giao tiếp có thể giúp bạn dễ dàng phát triển các
ứng dụng và hai ngõ âm thanh bao gồm hai ngõ vào micrô và hai ngõ ra loa.
Hình 1.11: Anten thu sóng của Sim300C.

Module Sim300C được thiết kế với khả năng tiết kiệm điện năng, nguồn
cung cấp khỏang 3.4v - 4.5v (thường là 4v), dòng tiêu thụ thấp với 2.5mA,
vùng nhiệt độ thường hoạt động từ -20độC đến +55độC.
2.2 Cấu tạo:
Hình 1.12: Đế cắm 60 chân của Sim300C.
19
GVHD: Th.S Vũ Thị Hồng Nga
Hình 1.13: Sơ đồ chân của khe cắm Sim300C.
Chức năng của từng chân được mô tả ở bảng sau:
Chân Chức năng In/Out put Chân Chức năng I/O
1 VBAT I 11 NC
2 GND 12 NC
3 VBAT I 13 NC
4 GND 14 NC
5 VBAT I 15 NC

6 GND 16 VRTC I/O
7 VBAT I 17 VDD_EXT O
8 GND 18 SPI_DATA I/O
9 VBAT I 19 SPI_D/C O
10 GND 20 SPI_CLK O
20
GVHD: Th.S Vũ Thị Hồng Nga
Chân Chức năng In/Out put Chân Chức năng I/O
21 SPI_RST O 41 DBGRX I
22 SPI_CS O 42 NC
23 NC 43 DBGTX O
24 NC 44 NC
25 SIM_VDD O 45 RTS I
26 NC 46 NC
27 SIM_RST O 47 CTS O
28 NC 48 NC
29 SIM_I/O I/O 49 RI O
30 NC 50 AGND I/O
31 SIM_CLK O 51 AGND I/O
32 Buzzer/GPIO5 I/O 52 NC
33 SIM_Presence I 53 MIC1P I
34 NC 54 SPK1P O
35 NC 55 MIC1N I
36 GPIO8 56 SPK1N O
37 DCD/GPIO0 O 57 MIC2P I
38 NC 58 SPK2P O
39 DTR I 59 MIC2N I
40 NC 60 SPK2N O
Sim300C có 2 cổng nối tiếp. Module GSM được thiết kế như DCE (Data
Communication Equipment).

SIM300C(DCE) Customer(DTE)
Serial port1 Serial port1

TXD TXD
RXD RXD
RTS RTS
CTS CTS
DTR DTR
DCD DCD
/RING /RING
Serial port2 Serial port2

/DBGTXD /TXD
/DBGRXD /RXD
Hình 1.14: Sơ đồ cổng giao tiếp của module Sim300C.
Port 1:
21
GVHD: Th.S Vũ Thị Hồng Nga
- Có 7 chân là: TXD, RXD, RTS (Request to Send), CTS (Clear to Send),
DTR (Data Terminal Ready), DCD (Data Carrier Detection) và RI (Ring
Indicator).
- Cổng 1 có thể sử dụng GPRS và gởi lệnh AT của Sim300C. Nó có chức
năng đa dạng mà cổng 2 không có chức năng như vậy.
- Cổng 1 hỗ trợ đường truyền như sau: 1200, 2400, 4800, 9600, 38400,
57600, 115200. Thường là 115200bps.
- TXD của môđun Sim300C gởi dữ liệu đến chân RXD của môđun khác.
- RXD của môđun Sim300C nhận dữ liệu từ chân TXD của môđun khác.
Port 2:
- Cổng 2 chỉ dùng cho việc truyền (phát) lệnh AT.
- Cổng 2 hỗ trợ đường truyền như sau: 9600, 19200, 38400, 57600 và

115200bps.
- /TXD của DTE (Data Terminal Equipment) gởi dữ liệu đến chân
/DGBRXD của DCE.
- /RXD của DTE nhận dữ liệu từ chân /DGBTXD của DCE.
* Chú ý:

- MIC1P (53): Microphone 1 input +
- MIC1N(55): Microphone 1 input -
- SPK1P(54): Audio 1 output +
- SPK1N(53): Audio 1 output –
- MIC2P (57): Microphone 2 input +
- MIC2N(59): Microphone 2 input -
- SPK2P(58): Audio 2 output +
- SPK2N(60): Audio 2 output –
- SIM_VDD(25): Nguồn SIM Card, ngõ ra có 2 mức điện áp: 3v và 1.8v,
dòng là 10mA.
- SIM_I/O(29): Ngõ vào/ra dữ liệu của SIM Card.
- SIM_CLK(31): Xung Clock SIM Card.
- SIM_RST(27): Reset SIM Card.
- SIM Presence(33): SIM Card Presence.
- SPI_Data(18): Hiển thị ngõ ra dữ liệu. (Display data output)
- SPI_CLK(20): Hiển thị clock của LCD. (Display clock for LCD)
- SPI_CS(22): Cho phép hiển thị. (Display enable)
- SPI_D/C(19): Hiển thị dữ liệu hoặc địa chỉ được chọn. (Data or Address)
- SPI_RST(21): LCD reset.
- GPIO5(32): General Purpose Input/Output Port.
- GPIO8(36): General Purpose Input/Output Port.
- VBAT nguồn cung cấp: 3.4v – 4.5v. Thường 4v, I = 2.5mA.
- VRTC nguồn cung cấp: 1.2v – 2v. Thường 1.8v, I = 20uA.
22

GVHD: Th.S Vũ Thị Hồng Nga
Ngõ ra tín hiệu RF của SIM300C như sau:
Frequency Max Min
E-GSM900 33dBm 5dBm
DCS1800 30dBm 0dBm
PCS1900 30dBm 0dBm
SIM300C nhận tín hiệu RF như sau:
Tần số Nhận t/h nhạy
E-GSM900 < - 106dBm
DCS1800 < - 104dBm
PCS1900 < - 104dBm
SIM300C nhận và truyền với tần số như sau:
Tần số Nhận Truyền
E-GSM900 925Mhz đến 960Mhz 880Mhz đến 915Mhz
DCS1800 1805Mhz đến 1880Mhz 1710Mhz đến 1785Mhz
PCS1900 1930Mhz đến 1990Mhz 1850Mhz đến 1910Mhz
2.3 Giao tiếp giữa Module với VXL:
a. Giao tiếp:

Quá trình trao đổi dữ liệu giữa vi điều khiển và Module được thực hiện
theo cơ chế bắt tay phần cứng hay phần mềm.
- Bắt tay phần cứng: vi điều khiển muốn truyền dữ liệu thì cho RTS=1 và
chờ module trả lời bằng tín hiệu CTS. Ngược lại, module muốn truyền dữ
liệu thì cho DSR=1 và chờ tín hiệu DTR từ vi điều khiển.
- Bắt tay phần mềm: dùng ký tự Xon và Xoff để bắt đầu truyền hay kết
thúc truyền.
Quy tắc truyền lệnh trên module:
- Mỗi dòng lệnh của module bắt đầu bằng ký tự AT, ngoại trừ lệnh A/ và +
++.
- Dòng lệnh có thể chứa nhiều lệnh.

- Kết thúc lệnh bằng ký tự Enter (mã ASCII là 13) ngoại trừ lệnh A/ và ++
+.

23
GVHD: Th.S Vũ Thị Hồng Nga
- Dòng lệnh cuối cùng được lưu trong module. Có thể dùng lệnh A/ để thực
hiện lại lệnh này.
- Thông báo kết quả thực hiện lệnh của module có thể ở dạng từ chữ hay
số (giá trị mặc định là chữ). Có thể sử dụng lệnh V để lựa chọn dạng thông
báo là chữ hay số.
- Để hoạt động đúng, module cần có các thông số xác định. Nếu không có
sự thay đổi cần thiết, module họat động theo giá trị mặc định (default). Nếu
thông số trong lệnh bị bỏ qua, giá trị thông số mặc định là 0.
b. Các thanh ghi thông dụng trên Module:
Thanh ghi S0: xác định số hồi chuông nhận được mà sau đó module sẽ trả
lời một cách tự động. Gía trị trong thanh ghi này có thể thay đổi trong
khỏang từ 0-255. Mặc định giá trị là 0 (không trả lời).
Thanh ghi S1: chỉ có tác dụng khi thanh ghi S0 khác 0, dùng để đếm số hồi
chuông thu được.
Thanh ghi S2: xác định giá trị thập phân của các ký tự (mã ASCII) được
dùng làm ký tự thoát. Gía trị mặc định là 43(+).
Thanh ghi S3: xác định ký tự được dùng để kết thúc một dòng lệnh, mặc
nhiên là 13 (tương ứng là Enter).
Thanh ghi S4: xác định ký tự xuống dòng sau ký tự kết thúc, giá trị mặc
nhiên là 10 (line feed).
Thanh ghi S5: xác định phím xóa lui, giá trị mặc nhiên là 8 (backspace).
Thanh ghi S6: xác định thời gian đợi sau khi truy cập đường điện thọai và
trước khi tiến hành quay số đầu tiên trong một lệnh quay số. Đây là thời gian
trì hoãn cho phép dial tone cung cấp từ đường truyền, gía trị mặc nhiên là 2s.
Thanh ghi S7: xác định thời gian mà module đợi tín hiệu sóng mang trước

khi gác máy, giá trị mặc định là 30s.
Thanh ghi S8: xác định thời gian tạm dừng cho mỗi dấu phẩy ‘,’ trong
chuỗi lệnh quay số, giá trị mặc định là 2s.
Thanh ghi S9: xác định thời gian mà tín hiệu sóng mang phải hiện diện để
môđun có thể nhận biết được, giá trị mặc định là 600ms. Giá trị này nếu quá
lớn sẽ gây lỗi trong dữ liệu truyền.
Thanh ghi S10: xác định thời gian cho phép tín hiệu sóng mang có thể biến
mất trong chốc lát nào đó mà không cắt cuộc nối. Ổn định trong khoảng 100
– 25500ms, giá trị mặc nhiên tùy vào khả năng chống nhiễu của từng
module, thường là 700ms.
Thanh ghi S11: xác định tốc độ quay số khi sử dụng phương pháp quay số
tone, giá trị mặc nhiên tùy vào module, thường vào khoảng 70ms.
Thanh ghi S12: xác định thời gian an tòan khi truy nhập vào ký tự thoát (+
++). Nếu giá trị nhỏ quá có thể nhập không kịp, giá trị lớn quá so với tốc độ
nhập cũng không thể thoát được.
3. Vi xử lý 8951
24
GVHD: Th.S Vũ Thị Hồng Nga
3.1 Giới thiệu cấu trúc phần cứng họ MSC-51(8951):

Đặc điểm và chức năng hoạt động của các IC họ MSC-51 hoàn toàn tương
tự như nhau. IC8951 là một họ IC vi điều khiển do hãng Intel của Mỹ sản
xuất. Các đặc điểm của 8951 được tóm tắt như sau:
8KB EPROM bên trong.
128 Byte RAM nội.
4 Port xuất/nhập I/O 8 bit.
Giao tiếp nối tiếp.
64KB vùng nhớ mã ngòai.
64KB vùng nhớ dữ liệu ngòai.
Xử lý Boolean (hoạt động trên bit đơn).

210 vị trí nhớ có thể định vị bit.
4us cho hoạt động nhân hoặc chia.
Sơ đồ khối của 8951:
Hình 1.15 : Sơ đồ khối 8951.
25

×