CHƯƠNG 1 DẪN NHẬP1.1 ĐẶT VẤN ĐỀ Với những nhu cầu về khoa học kỹ thuật và nhu cầu của con người ngày càngcao đòi hỏi ngày càng nhiều những ứng dụng trong lĩnh vực điện tử , điện tử viễn
Trang 1PHẦN A GIỚI THIỆU TỔNG QUAN VỀ
ĐỒ ÁN TỐT NGHIỆP
Trang 2TÓM TẮT ĐỒ ÁN TỐT NGHIỆP
Đồ án tốt nghiệp bao gồm 3 phần:
PHẦN A: GIỚI THIỆU TỔNG QUAN VỀ ĐỒ ÁN TỐT NGHIỆP
Chương 6: Thi công
Chương 7: Tóm tắt, kết luận và phương hướng phát triển
PHẦN C: PHỤ LỤC VÀ TÀI LIỆU THAM KHẢO.
Trang 3MỤC LỤC
Trang
Nhận xét của giáo viên hướng dẫn
Nhận xét của giáo viên phản biện II Nhận xét của Hội đồng chấm đồ án III Lời cảm ơn IV PHẦN A : GIỚI THIỆU TỔNG QUAN VỀ ĐỒ ÁN
Tóm tắt đồ án tốt nghiệp
Mục lục
PHẦN B : NỘI DUNG
Chương 1: DẪN NHẬP
1.1 Đặt vấn đề
1.2 Tầm quan trọng của đề tài
1.3 Giới hạn đề tài
1.4 Hướng phát triển của đề tài
1.5 Phương pháp thực hiện
1.6 Phương tiện thực hiện 10
Chương 2: GIỚI THIỆU SƠ LƯỢC AT 89S52 VÀ MỘT SỐ IC 10
2.1 Giới thiệu vi điều khiển 89S52 11
2.1.1 Cấu trúc phần cứng họ MSC - 51 11
2.1.2 Khảo sát cấu trúc bên trong vi điều khiển AT89C51 12
2.1.3 Cấu trúc bộ nhớ vi điều khiền 18
2.1.4 Hoạt động truyền nhận dữ liệu nối tiếp 19
2.1.5 Hoạt động ngắt 22
Trang 42.2 IC mã hoá PT2262 25
2.2.1 Giới thiệu 25
2.2.2 Mô tả chức năng 28
2.2.3 Các mạch điện ứng dụng 32
2.3 IC mã hoá PT2272 34
2.3.1 Giới thiệu 34
2.3.2 Mô tả chức năng 36
2.4 IC ULN2003 41
2.4.1 Giới thiệu 41
2.4.2 Thông số của ULN2003 41
2.5 Cặp IC thu phát chuyên dụng 42
2.5.1 IC TWS-315 RF Transmitter 42
2.5.2 IC RWS-315 42
2.6 IC MAX232 43
2.7 IC ổn áp KA7805 44
2.7.1 Chức năng chung 44
2.7.2 Hình dạng và kích thước 44
2.7.3 Thông số làm việc 44
Chương 3: GIAO TIẾP MÁY TÍNH 45
3.1 Phân tích cơ sở giao tiếp máy tính 45
3.1.1 Giao tiếp qua rãnh cắm (Slot) 45
3.1.2 Giao tiếp qua cổng song song (LPT) 45
31.3 Giao tiếp qua cổng nối tiếp (COM) 48
3.2 Chọn phương án thiết kế 49
3.3 Giới thiệu chuẩn giao tiếp RS-232 49
Trang 5Chương 4: THIẾT KẾ PHẦN CỨNG 52
4.1 Sơ đồ toàn bộ hệ thống 52
4.2 Thiết kế và tính toán 52
4.2.1 Khối phát RF và giao tiếp PC 52
4.2.2 Thiết kế và tính toán từng khối 53
4.3 Khối thu RF 58
4.3.1 Sơ đồ khối 58
4.3.2 Sơ đồ mạch điện khối thu RF 58
4.4 Nguyên lý hoạt động 59
Chương 5: THIẾT KẾ PHẦN MỀM 60
5.1 Thiết kế giao diện cho hệ thống điều khiển Robot từ xa 60
5.1.1 Giới thiệu các ngôn ngữ lập trình 60
5.1.2 Các ngôn ngữ lập trình thông dụng 60
5.1.3 Lựa chọn ngôn ngữ lập trình 61
5.1.3 Xây dựng giao diện chương trình 61
5.2 Thiết kế phần mềm cho vi điều khiển AT98S52 74
5.2.1 Lựa chọn ngôn ngữ lập trình 74
5.2.2 Thiết kế phần mềm cho mạch phát RF và giao tiếp PC 74
Chương 6: THI CÔNG 77
6.1 Khái quát quá trình thi công 77
6.1.1 Thử nghiệm phần cứng 77
6.1.2 Thử nghiệm phần mềm 77
6.1.3 Thi công mạch in 78
6.1.4 Kiểm tra mạch in 78
6.1.5 Lắp ráp linh kiện 78
Trang 66.2 Thi công mạch phát sóng RF và giao tiếp PC 79
6.2.1 Sơ đồ nguyên lý mạch 79
6.2.2 Sơ đồ mạch in 79
6.3 Thi công mạch thu RF 80
6.2.1 Sơ đồ nguyên lý mạch 80
6.2.2 Sơ đồ mạch in 80
Chương 7: TÓM TẮT –KẾT LUẬN 81
7.1 Tóm tắt 81
7.2 Kết luận 81
PHẦN C : TÀI LIỆU THAM KHẢO VÀ PHỤ LỤC 83
Phụ lục A: 83
Phụ lục B: 87
Tài liệu tham khảo 91
Trang 7PHẦN B
NỘI DUNG ĐỀ TÀI
Trang 8CHƯƠNG 1 DẪN NHẬP
1.1 ĐẶT VẤN ĐỀ
Với những nhu cầu về khoa học kỹ thuật và nhu cầu của con người ngày càngcao đòi hỏi ngày càng nhiều những ứng dụng trong lĩnh vực điện tử , điện tử viễnthông…vào thực tế cuộc sống , đồng thời giúp cuộc sống con người ngày càng hoànthiện hơn.Trong đó , sự phát triển của việc truyền sóng , truyền dữ liệu ngày càngđược ứng dụng nhiều và rộng rãi hơn Đặc biệt với những ứng dụng của truyềnsóng RF trong điều khiển , truyền dữ liệu… đã mang lại nhiều hiệu quả và ích lợitrong khoa học và cuộc sống ngày nay…
Truyền dữ liệu không chỉ là l một mảng lớn trong điện tử thông tin, dữ liệuđược truyền đi có thể là tương tự cũng có thể là số Trong truyền dữ liệu không dây,hiệu quả nhất vẫn l truyền bằng sóng điện từ hay sóng RF, bởi những ưu điểm làtruyền ở khoảng cách xa, đa hướng, tần số hoạt động cao
Hiện nay, truyền dữ liệu số được ứng dụng rất rộng rãi, nhất là trong lĩnh vựcđiều khiển, thông tin số Nhiều vi mạch hỗ trợ xử lý tín hiệu không dây được sửdụng như PT2248, PT2249, PT2262, PT2272, PT9148, PT9149, HT12D… Vấn đềđặt ra là các vi mạch này truyền dữ liệu chỉ dành cho mục đích riêng l điều khiểnthiết bị, thông tin được truyền đi đã được mã hóa sẵn, số bit dữ liệu truyền đi thấp,không phù hợp với nhu cầu truyền dữ liệu hàng loạt và liên tục.Giải quyết vấn đềnày, em tận dụng khả năng của vi điều khiển về truyền nhận dữ liệu nối tiếp nhờvào bộ UART trong vi xử lý Vi điều khiển có khả năng thực hiện truyền thông đa
xử lý rất thích hợp cho việc truyền dữ liệu trong một hệ thống mạng không dây gồmnhiều bộ xử lý
Đề tài xây dựng một hệ thống đơn giản gồm một board phát dữ liệu và mộtboard thu dữ liệu Dữ liệu bên phát được thiết lập bởi các công tắt đơn và được mãhóa bằng vi điều khiển Một module phát sẽ được nối với vi điều khiển thực hiệnđiều chế ASK và phát dữ liệu tới bên thu Bên thu thu nhận tín hiệu RF bằng mộtmạch thu siêu tái sinh, dữ liệu thu được sẽ được vi điều khiển mã hóa và được hiểnthị ra để điều khiển robot
Trang 91.2 TẦM QUAN TRỌNG CỦA ĐỀ TÀI
Đây là một đề tài nghiên cứu mang tính thực tiễn trong việc vận dụng các kiếnthức đã được học dưới mái trường vào trong thực tế
Về mặt khoa học, đề tài sẽ giúp cho nhóm sinh viên thực hiện hiểu rõ thêm vềTruyền dữ liệu điều khiển và Cách điều khiển mạch điện thông qua máy tính
Về mặt thực tiễn, đề tài này có thể áp dụng vào thực tế để điều khiển một sốthiết bị cần nhiệt độ ổn định
1.3 GIỚI HẠN CỦA ĐỀ TÀI
Với sự cố gắng, nỗ lực chúng em đã hoàn thành được việc tìm hiểu nghiên cứu
và tạo ra được sản phẩm là hệ thống điều khiển Robot từ xa bằng sóng RF
Tuy nhiên, trong giới hạn về thời gian và trình độ, khó khăn trong việc tìmkiếm linh kiện thi công, nên khoảng cách điều khiển bị giới hạn trong khả năng thuphát cao tần do độ chính xác chưa cao của mạch Đồng thời, thi công sản phẩmbằng các thiết bị đơn giản và thiếu thốn nên chưa đạt yêu cầu về tính thẩm mỹ
1.4 HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI
Về khả năng ứng dụng: Đề tài truyền dữ liệu không dây là tiền đề cho các ứngdụng sâu hơn như : truyền dữ liệu báo động cháy nổ, truyền thông tin nhiệt độ từ xa,điều khiển thiết bị từ xa, âm thanh kỹ thuật số…
Về đặc tính kỹ thuật: truyền dữ liệu với kỹ thuật điều chế ASK tuy dễ thựchiện, song tính ổn định không cao do nhiễu ảnh hưởng trực tiếp đến biên độ tínhiệu Có nhiều giải pháp thay thế cho kiểu điều chế này.Phổ biến là kỹ thuật điềuchế FSK, PSK, MSK, GMSK…Đây là những phương pháp điều chế rất phổ biếntrong thông tin di động hiện đại hiện nay Những phương pháp này đã được tích hợphoá nhờ những vi mạch chuyên dụng, làm nâng cao độ tin cậy của hệ thống
1.5 PHƯƠNG PHÁP THỰC HIỆN
Trong quá trình nghiên cứu, nhóm sinh viên thực hiện chủ yếu dựa vào haiphương pháp chính:
Kỹ thuật vi xử lý, Giao tiếp máy tính, Truyền số liệu, Kỹ thuật mạch điện tử, Thiết
kế mạch điện tử Sau đó, nhóm sinh viên vận dụng các kiến thức hiện có để tổng
Trang 10hợp các tài liệu, sau cùng thiết kế ra mạch điện phù hợp với các yêu cầu mà ban đầunhóm đã đề ra.
toán lý thuyết, nhóm sinh viên thực hiện đã thi công mạch thực tế theo đúng sơ đồnguyên lý đã vạch ra Do không có các thiết bị đo chuyên dụng thích hợp, nhómsinh viên thực hiện đã cân chỉnh thủ công từng khối, đo điện áp và dòng điện ngõ racủa chúng Sau đó, nhóm đã sử dụng kết quả cân chỉnh này để điều chỉnh lại lýthuyết một cách hợp lý
1.6 PHƯƠNG TIỆN THỰC HIỆN
Trang 11CHƯƠNG 2
GIỚI THIỆU
HỌ 8051 VÀ CÁC IC SỬ DỤNG TRONG MẠCH
2.1 GIỚI THIỆU HỌ VI ĐIỀU KHIỂN 8051
Họ vi điều khiển MSC-51 được chế tạo theo công nghệ CMOS có hiệu xuấtcao và nguồn tiêu thụ thấp do hãng INTEL thiết kế và hãng ATMEL sản xuất ChipAT89C51 được chế tạo theo công nghệ này và hoàn toàn tương thích với tập lệnh vàcác chân của chuẩn công nghiệp MSC51 Bên trong chip được tích hợp bộ nhớFlash Rom có thể nạp xoá bằng điện, nên rất thuận lợi trong việc lập trình ứngdụng
2.1.1 Cấu trúc phần cứng họ MSC - 51
Các chip thuộc họ MSC-51 có cấu trúc cơ bản về phần mềm giống nhau.Nhưng cấu trúc phần cứng thì khác nhau Các vi điều khiển thế hệ sau thì kế thừatất cả các chức năng của thế hệ trước và thêm các tính năng khác mới hơn Sau đây
là cấu trúc cơ bản về phần cứng :
Trang 122.1.2 Khảo sát cấu trúc bên trong vi điều khiển AT89C51
2.1.2.1 Sơ đồ khối vi điều khiển AT89C51
Hình 2.1 Sơ đồ khối vi điều khiển AT89C51
Trang 13 Khối ALU
Khối xử lý dữ liệu, làm thay đổi dữ liệu nhưng không lưu trữ dữ liệu Có thểthực hiện các phép toán and, or, … trong xử lý chương trình
Các thanh ghi
Thanh ghi bộ đếm chương trình
Là thanh ghi 16 bit có truy xuất từng ô nhớ bắt đầu từ ô nhớ 0 đến ô nhớ
65535 Trước khi thực hiện chương trình thì PC phải được nạp địa chỉ của ô nhớchứa lệnh đầu tiên của chương trình Trong quá trình thực hiện thì nội dung của PC
sẽ tăng lên tương ứng với số byte của lệnh đang thực hiện Trước khi thực hiện lệnhthì PC sẽ được nạp địa chỉ của ô nhớ chứa lệnh tiếp theo
Thanh ghi trạng thái (status register)
Là thanh ghi cờ, dùng để lưu trữ kết quả của một số lệnh kiểm tra Khi ngườilập trình thực hiện việc rẽ nhánh, thì chương trình bắt đầu tại một vị trí mới Nếu rẽnhánh có điều kiện thì chương trình sẽ thực hiện khi điều kiện đúng Thanh ghitrạng thái sẽ lưu kết quả kiểm tra này
Thanh ghi con trỏ ngăn xếp (stack pointer SP)
Là thanh ghi 16 bit dùng quản lý bộ nhớ ngăn xếp khi muốn lưu trữ tạm thời
dữ liệu vào bộ nhớ ngăn xếp Trong khi xử lý chương trình thanh ghi SP sẽ tự độngtăng lên ô nhớ kế Để không làm mất dữ liêu trong quá trình thực hiện, thì cần phảikhởi tạo con trỏ ngăn xếp, để chỉ đến một ô nhớ do người lập trình thiết lập
Thanh ghi lệnh (instruction register)
Dùng chứa lệnh vi điều khiển đang thực hiện Thanh ghi lệnh do vi điều khiển
tự động xử dụng, người lập trình không thể can thiệp
Khối điều khiển logic (control logic)
Nhận lệnh hay tín hiệu từ bộ giải mã lệnh, sau đó đi thực hiện lệnh
Khối giải mã lệnh (Instruction decoder)
Nhận mã lệnh từ thanh ghi lệnh, sau đó giải mã gửi lệnh điều khiển đến khốiđiều khiển logic
Trang 142.1.2.2 Sơ đồ chân IC AT89C51
Hình 2.2 : Sơ đồ chân IC AT89C51
Chức năng các chân
Vi điều khiển AT89C51 có 40 chân Trong đó có 24 chân có tác dụng kép(P0,P2, và P3), mỗi chân có thể hoạt động như một đường xuất nhập hoặc nhưđường điều khiển hoặc là thành phần của các bus dữ liệu và bus địa chỉ
Các Port
Port 0 là port có 2 chức năng bao gồm từ chân 32 đến chân 39 Trong các hệthống thiết kế nhỏ không dùng bộ nhớ mở rộng bên ngoài nó có chức năng như các
Trang 15đường xuất nhập (I/O) Đối với các thiết kế lớn có sử dụng bộ nhớ mở rộng bênngoài, nó được xử dụng như bus địa chỉ và bus dữ liệu
Port 1 là port chỉ có khả năng như đường xuất nhập dữ liêu (I/O), có vị trí từchân 1 đến chân 8 Ngoài ra không còn chức năng nào khác,vì vậy chúng chỉ đượcdùng cho giao tiếp với các thiết bị ngoại vi bên ngoài
Port 2 là 1 port có tác dụng kép, có vị trí từ chân 21 đến chân 28 Chúng đượcdùng như các đường xuất nhập đối với các ứng dụng xử dụng bộ nhớ bên trong màkhông dùng bộ nhớ ngoài, hoặc là byte cao của bus địa chỉ khi sử dụng bộ nhớngoài
Port 3 có tác dụng kép, có vị trí từ chân 10 đến chân 17 Các chân P3.0, P3.1,P3.2, P3.3, P3.4, P3.5, P3.6, P3.7 có nhiều chức năng, mỗi chức năng phụ thuộc vàocác thiết kế riêng được quy định ở bảng sau:
INT1\
T0T1WR\
RD\
Ngõ vào nhập dữ liệu nối tiếpNgõ xuất dữ liệu nối tiếpNgõ vào ngắt cứng thứ 0Ngõ vào ngắt cứng thứ 1Ngõ vào của timer/counter thứ 0Ngõ vào của timer/counter thứ 1Tín hiệu điều khiển ghi dữ liệu lên bộ nhớ ngoàiTín hiệu điều khiển đọc dữ liệu từ bộ nhớ ngoài
Trang 16 Các đường tín hiệu điều khiển:
Đường tín hiệu PSEN (Program store enable)
Tín hiệu PSEN ra ở chân 29 chúc năng của nó là cho phép đọc bộ nhớ chươngtrình mở rộng bên ngoài, thường được nối đến chân OE\ (output enable) của Epromcho phép đọc các byte mã lệnh Chân này ở mức thấp trong thời gian vi điều khiểnlây mã lệnh Các mã lệnh của chương trình được đọc từ Eprom qua bus dữ liệu vàđược chốt vào thanh ghi lệnh bên trong 8951 để giải mã lệnh Khi AT89C51 thựchiện chương trình trong EPROM nội thì PSEN sẽ ở mức logic 1
Đường tín hiệu ALE (Address Latch Enable)
Tín hiệu ALE ra ở chân 30 Khi AT89C51 truy xuất bộ nhớ bên ngoài, port 0
có chức năng là bus địa chỉ và bus dữ liệu do đó phải tách các đường dữ liệu và địachỉ Tín hiệu ra ở chân ALE dùng làm tín hiệu điều khiển để giải đa hợp các đườngđịa chỉ và dữ liệu khi kết nối chúng với IC chốt
Tín hiệu ra ở chân ALE là một xung trong khoảng thời gian port 0 đóng vai trò
là địa chỉ thấp nên chốt địa chỉ hoàn toàn tự động
Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên chip và cóthể được dùng làm tín hiệu clock cho các phần khác của hệ thống Chân ALE đượcdùng làm ngõ vào xung lập trình cho EPROM trong AT89C51
Đường tín hiệu EA\ (External Access)
Tín hiệu EA\ ra ở chân 31 thường được mắc lên mức 1 hoặc mức 0 KhiAT89C51 thực hiện chương trình từ EPROM nội trong khoảng địa chỉ thấp 4 Kbyte,thì chân EA\ được nối lên mức 1 Khi AT89C51 thực hiện chương trình từ bộ nhớ
mở rộng, thì chân EA\ được nối xuống mức 0 Chân EA\ được nối lên nguồn 12Vkhi lập trình cho Eprom trong AT89C51
Đường tín hiệu RST (Reset)
Tín hiệu RST ra ở chân 9 là ngõ vào Reset của AT89C51 Khi ngõ vào tín hiệunày đưa lên cao ít nhất là 2 chu kỳ máy, các thanh ghi bên trong được nạp những giátrị thích hợp để khởi động hệ thống Khi cấp điện mạch tự động Reset
Trang 17Bảng 2.1 : Bảng trạng thái của các thanh ghi khi reset hệ thống
Bộ đếm chương trình PC Thanh ghi tích lũy A Thanh ghi B
Thanh ghi trạng thái PSW Thanh ghi con trỏ SP Thanh Ghi DPTR Port 0 đến port 3 Thanh ghi IP Thanh ghi IE Các thanh ghi định thời Thanh ghi SCON SBUF Thanh ghi PCON (HMOD) Thanh ghi PCON (CMOS)
0000H 00H 00H 00H 07H 0000H FFH XXX00000B 0X0X0000B 00H 00H 00H 0XXXXXXXH
Các ngõ vào bộ dao động X1,X2
Bộ dao động được được tích hợp bên trong 89C51, khi sử dụng AT89C51 người thiết kế chỉ cần kết nối thêm thạch anh và các tụ như hình vẽ trong sơ đồ Tần số thạch anh thường sử dụng cho 89C51 là 12Mhz Chân 40 (Vcc) được nối lên nguồn 5V
Hình 2.3 : Sơ đồ kết nối động của bộ dao
Trang 182.1.3 Cấu trúc bộ nhớ vi điều khiền
2.1.3.1 Cấu trúc bộ nhớ
Hình 2.4 : Tóm tắt các vùng nhớ AT89C51
Bộ nhớ bên trong vi điều khiển AT89C51 bao gồm vùng nhớ ROM và vùngnhớ RAM Trong đó có 128 byte RAM (dùng lưu trữ dữ liệu) và 4 Kbyte FlashROM (dùng lưu trữ chương trình) Ngoài bộ nhớ RAM và EPROM nội, AT89C51cũng có thể giao tiếp được với 4Kbyte RAM ngoại và 4Kbyte EPROM bên ngoài.Trong bộ nhớ của AT89C51 được chia ra nhiều thành phần: vùng lưu trữ đa dụng,vùng truy xuất từng bit, các bank thanh ghi và các thanh ghi có chức năng đặc biệt
Cấu trúc RAM bên trong vi điều khiển AT89C51
- Các bank thanh ghi có địa chỉ từ 00H đến 1FH
- Vùng nhớ RAM đa dụng có địa chỉ từ 30H đến 7FH
- Các thanh ghi có chức năng đặc biệt có địa chỉ từ 80H đến FFH
Vùng Ram có thể truy xuất từng bit: có 210 bit có thể truy xuất từng bit, trong đó có
128 bit nằm ở các byte có địa chỉ từ 20H đến 2FH và các bit còn lại nằm trongnhóm các thanh ghi có chức năng đặc biệt
Các bank thanh ghi: 32 byte thấp của Ram nội được dành cho các bank thanh ghi.Bao gồm cả các thanh ghi có tên R0, R1, R7, theo mặc định khi reset hệ thống thìcác thanh ghi R0 đến R7 được gán cho 8 ô nhớ có địa chỉ từ 00H đến 07H
Trang 192.1.3.2 Các thanh ghi có chức năng đặc biệt
AT89C51 có 21 thanh ghi có chức năng đặc biệt, nằm trên RAM nội có địa chỉ
từ 80H đến FFH
port này có thể truy xuất từng bit khi dùng các đường điều khiển I/O(input/output)
ngăn xếp Bộ nhớ ngăn xếp có dung lượng lớn nhất là 128 byte Ram nội củaAT89C51, nó dùng để lưu trữ tam thời các dữ liệu trong quá trình thực hiệnchương trình
có thể sử dụng độc lập hoặc có thể hợp lại tạo thành thanh ghi DPTR 16 bit
timer/counter
đếm cho timer/counter T0 Thanh ghi TH1 và TL1 hợp lại tạo thành thanhghi 16 bit lưu trữ xung đếm cho timer/counter T1
dùng diều khiển trong việc tuyền dữ liệu nối tiếp, thanh ghi sbuf dùng đệmtruyền dữ liệu nối tiếp
cho phép hoặc không cho phép ngắt, thanh ghi IP ưu tiên ngắt
2.1.4 Hoạt động truyền nhận dữ liệu nối tiếp
Trong vi điều khiển AT89C51 có một port nối tiếp dùng cho việc truyền vànhận dữ liệu nối tiếp Hoạt động của port này là chuyển dữ liệu nối tiếp nhận đượcthành dữ liệu song song và chuyển dữ liệu song song thành dữ liệu nối tiếp đểtruyền đi
Việc truyền dữ liệu của port nối tiếp thông qua chân TxD (P3.1) và nhận dữliệu nối tiếp thông qua chân RxD (P3.0) Hoạt động của port truyền dữ liệu nối tiếp
là hoạt động song công, có thể nhận và truyền dữ liệu cùng một lúc
Hai thanh ghi có chức năng đặc biệt phục vụ cho truyền dữ liệu là thanh ghiđệm SBUF và thanh ghi điều khiển SCON
Trang 20Bộ đệm của port nối tiếp SBUF có địa chỉ là 99H Khi dữ liệu được ghi lên SBUFthì dữ liệu sẽ được truyền đi và việc đọc dữ liệu trong SBUF là truy xuất dữ liệunhận được
Thanh ghi điều khiển port nối tiếp là thanh ghi SCON có địa chỉ 98H, là thanhghi có thể truy xuất từng bit, thanh ghi này chứa các trạng thái và các bit điều khiển.Các bit điều khiển sẽ thiết lập chế độ hoạt động của port nối tiếp còn các bit trạngthái để báo cho biết đã kết thúc việc nhận và truyền 1 ký tự Các bit trạng thái đượckiểm tra bởi phần mềm để sinh ra ngắt
Tần số hoạt động của port nối tiếp (tốc độ baud) có thể cố định hoặc thay đổi.Khi tốc độ baud thay đổi thì bộ Timer sẽ cung cấp xung clock
Bảng 2.2 : Tóm tắt hoạt động của thanh ghi SCON
hiệu
Địachỉ
Mô tả hoạt động
truyền kết nối nhiều vi xử lý ở mode 2 và
3 ;RI sẽ không tích cực nếu bit thứ 9 đãthu vào là 0
song một ký tự và được set bởi phầnmềm
một ký tự và xóa bởi phần mềm
Cho Phép Thu
Trang 21Bit cho phép thu (REN=Receiver Enable) Phải được set lên 1 (REN=1) bằngphần mềm để cho phép thu dữ liệu.Thông thường thực hiện việc này ở đầu chươngtrình khi khởi động PORT nối tiếp Có thể thực hiện việc này theo hai cách
Cách 1:
Cách 2:
SCON khi cần (X : phải là 0 hoặc 1 tùy vào chế độ làm việc)
Bit dữ liệu thứ 9
Bit dữ liệu thứ 9 cần phát trong các mode 2 và mode 3 phải được nạp vàotrong TB8 bằng phần mềm(có nghĩa là người lập trình phải thực hiện việc này trướckhi truyền dữ liệu đi) Bit dữ liệu thứ 9 thu được đặt ở RB8 Phần mềm có thể cầnhoặ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ốitiếp sử dụng (bit dữ liệu thứ 9 cũng đóng vai trò quan trọng trong truyền thông đa
xử lý )
Thêm 1 bit parity
Thường sử dụng bit thứ 9 để thêm bit parity vào trong chuỗi truyền Bit P trongthanh ghi trạng thái PSW, thường được dùng để kiểm tra bit chẵn lẻ
Các cờ ngắt
Hai cờ ngắt thu và phát (RI và TI) trong SCON đóng một vai trò quan trọngtrong truyền nối tiếp dùng AT89C51 Cả hai bit được set bằng phần cứng, nhưngphải được xoá bằng phần mềm
Tốc độ baud port nối tiếp
Tốc độ baud cố định ở các mode 0 và mode 2 Trong mode 0 thì tốc độ baudbằng tần số dao động trên chip được chia cho 12 Thông thường thạch anh ấn địnhtần số dao động trên chip nhưng cũng có thể sử dụng nguồn xung nhịp khác
Các nguồn tạo xung nhịp cho port nối tiếp
Khi reset hệ thống, tốc độ baud mode 2 là tần số bộ dao động chia cho 64, tốc
độ baud cũng bị ảnh hưởng bởi 1 bit trong thanh ghi điều khiển nguồn cung cấp
Trang 22(PCON) bit 7 của PCON là bit SMOD Set bit SMOD lên 1 làm tăng gấp đôi tốc độbaud trong các mode 1, 2 và 3 Trong mode 2, tốc độ baud có thể tăng gấp đôi từ giátrị mặc nhiên của 1/64 tần số dao động trên chip (SMOD=0) lên đến 1/32 tần số daođộng (SMOD=1)
Vì PCON không được định địa chỉ theo bit, nên để set bit SMOD lên 1 cần phảitheo các lệnh sau:
Các tốc độ baud trong các mode 1 và mode 3 của 89C51 được xác định bằngtốc độ tràn của timer 1 Vì timer hoạt động ở tần số tương đối cao, nên phải đượcchia thêm cho 32 (hoặc 16 nếu SMOD =1 ) trước khi cung cấp xung clock để thiếtlập tốc độ Baud cho port nối tiếp.Tốc độ Baud ở mode 1và mode3 của 89C51 đượcxác định bởi tốc độ tràn của Timer1 hoặc Timer2,hoặc cả 2
2.1.5 Hoạt động ngắt (Interrupt)
Trong nhiều trường hợp ta cần phải thực hiện một chương trình ngay lập tức,nếu xử dụng timer thì cần mất thời gian chờ đợi do đó không đáp ứng được Ngắt làhoạt động khi đang thực hiện chương trình chính, khi có tác động của phần cứnghoặc phần mềm làm cho vi diều khiển ngưng làm việc chương trình chính mà đithực hiện một chương trình khác, sau khi thực hiện xong chương trình này thì quay
về thực hiện lại chương trình chính Quá trình làm gián đoạn chương trình chính gọi
là hoạt động ngắt
2.1.5.1 Tổ chức ngắt trong 89C51
Vi Điều Khiển 89C51 có 5 nguồn ngắt: 2 nguồn ngắt ngoài, 2 ngắt do timer và
1 ngắt do Port nối tiếp, sau khi reset hệ thống thì tất cả các nguồn ngắt đều khôngcòn tác dụng và được cho phép bởi phần mềm
2.1.5.2 Cho phép và không cho phép ngắt
Trang 23Mỗi một nguồn ngắt được cho phép hoặc không cho phép thông qua thanh ghichức năng đặc biệt có các bit được địa chỉ hóa IE (Interrupt Enable) tại địa chỉ0A8H
Hoạt động của từng bit trong thanh ghi IE sẽ quy định nguồn ngắt nào đượccho phép hay không cho phép ngắt Bảng tóm tắt như sau:
Bảng 2.3 : Bảng tóm tắt các chế độ ngắt của hoạt động ngắt
BIT Kí hiệu
Địa chỉ bit
Chức năng (ENABLE=1, DISABLE=0)
IE.7IE.6IE.5IE.4IE.3IE.2IE.1IE.0
EA
- ET2
ES ET1 EX1 ET0 EX0
AFH AEH ADH ACH ABH AAH A9H A8H
Cho phép toàn bộ hoặc cấm toàn
bộ Chưa sử dụng đến Cho phép ngắt timer 2 (8052) Cho phép ngắt do port nối tiếp Cho phép ngắt timer 1
Cho phép ngắt ngoài External 1 Cho phép ngắt Timer 0
Cho phép ngắt ngoài External 0
2.1.5.3 Véctơ ngắt
Khi ngắt được chấp nhận, thì giá trị được nạp vào PC (Program Counter) gọi
là vector ngắt (Interrupt Vector)
Bảng 2.4 : Bảng địa chỉ của các vectơ ngắt
Trang 24INTERRUPT FLAG VECTOR ADDRESS
System Reset External 0 Timer 0 External 1 Timer 1 Serial Port Timer 2
RST IE0 TF0 IE1 TF1
RI or TI
TF 2or EXF2
0000 H
0003 H 000B H
0013 H 001B H
0023 H 002B H
2.1.5.4 Xử lý ngắt
Khi tín hiệu yêu cầu ngắt xuất hiện và được chấp nhận bởi CPU thì CPU thực hiện các việc như sau:
của lệnh tiếp theo trong chương trình chính)
chương trình PC
Chú ý: chương trình con phục vụ ngắt không làm mất hoặc làm sai địa chỉ của PC đã lưu trong ngăn xếp
2.1.5.5 Ngắt Port nối tiếp
Ngắt do Port nối tiếp xảy ra khi cờ ngắt truyền (TI) hoặc cờ ngắt nhận(RI) được đặt Ngắt truyền xảy ra khi bit cuối cùng trong SBUF truyền xongtức là lúc này thanh ghi SBUF rỗng Ngắt nhận xảy ra khi SBUF đã hoànthành việc nhận và đang đợi để đọc tức là lúc này thanh ghi SBUF đầy Cả hai
cờ ngắt này được đăt bởi phần cứng và xóa bằng phần mềm Cụ thể là TI sẽđược set lên mức 1 khi phát xong một ký tự, còn RI sẽ được set lên mức 1 khinhận xong một ký tự Khi TI và RI được set lên mức 1 thì sẽ sinh ra ngắt choport nối tiếp
Trang 25chỉ Do đó có nhiều sự lựa chọn mã và không bị trùng nhau về mã hóa trong lập trình quét.
Các điểm đặc trưng
Trang 26 Tầm điện áp hoạt động rộng: Vcc = 4 ~15 volts
Các ứng dụng
Cấu trúc chân IC PT2262
Hình 2.6 Cấu trúc chân IC PT2262
Trang 27Bảng 2.5 Mô tả chức năng các chân PT2262
Loại 18 chân
Loại 20 chân
Sáu chân 3 trạng thái này được đọc bởi PT2262 để xác định dạng sóng mã hóa bit 0 ~ bit 5 Mỗi chân có thể được thiết lập ở mức ‘0’ ,’1’, hoặc ‘f’( thả nổi)
Khi các chân này được sử dụng như là chân địa chỉ, chúng có thể được thiết lập
thứ nhất
Một điện trở sẽ được nối giữa hai chân này
để xác định tần số dao động cở bản của PT2262
thứ hai
Dạng sóng mã hóa nối tiếp được đưa ra
ở chân này Khi PT 2262 không phát, ngõ ra DOUT ở mức thâp (Vss)
Trang 28Vcc - Nguồn cung cấp chân dương 18 20
2.2.2 Mô tả chức năng
PT2262 mã hóa địa chỉ và dữ liệu được thiết lập ở các chân A0 ~ A5 và A6/D5
~ A11/D0 ra một dạng sóng đặc biệt và đưa nó ra chân DOUT khi chân TE\ xuống mức thấp.Dạng sóng này sẽ được đưa đến mạch điều chế RF hoặc mạch điều chế IR
để phát đi Sóng RF hoặc chùm tia hồng ngoại được thu bởi mạch giải điều chế RF hoặc mạch thu IR và phục hồi lại dạng sóng đặc biệt đó Sau đó PT2272 sẽ được sử dụng để giải mã dạng sóng này và thiết lập các ngõ ra tương ứng Do vậy hoàn tất chức năng điều khiển từ xa mã hóa và giải mã
Hình 2.7 Giản đồ thời gian của bit AD
Ở đây: α là chu kỳ dao động cơ bản
- Dạng sóng của bit SYNC(synchronous)
Trang 29Bit đồng bộ có chiều dài là 4 bit với độ rộng xung là 1/8 bit Giản đồ thời gian của bit đồng bộ:
PT2262/PT2272 có tối đa 12 bit địa chỉ bao gồm sáu bit địa chỉ/dữ liệu Sơ đồ sau
sẽ chỉ ra 1 từ mã tương ứng với các chân này:
Hình 2.9 Giản đồ 1 từ mã
Trang 30Các bit mã từ A0 ~ A5 và A6/D5 ~ A11/D0 được xác định bởi trạng thái của các chân A0 ~ A5 và A6/D5 ~ A11/D0 Lấy ví dụ, khi chân A0 (chân số 1) được thiết lập ở mức “1” (Vcc), từ mã A0 sẽ được tổng hợp như là bit “1” Cũng với cáchnhư vậy, khi nó được thiết lập ở mức “0” (Vss) hoặc thả nổi, từ mã A0 sẽ được tổng hợp như là bit “0” hoặc bit “f” riêng biệt.
Một khung mã bao gồm 4 từ mã liên tiếp Khi PT2262 dò thấy mức “0” trên chân TE/ ( nghĩa là chân TE/ tích cực mức thấp), nó sẽ xuất một từ mã ra chân DOUT Nếu chân TE/ vẫn tiếp tục tích cực sau khi đã truyền hết một khung mã, PT2262 sẽ xuất ra tiếp một khung mã khác Nó nên được hiểu là khung mã được tổng hợp trong thời gian phát
Mạch dao động dùng điện trở đơn
Mạch dao động được tích hợp bên trong PT2262 cho phép một dao động chínhxác được xây dựng bằng cách kết nối một điện trở ngoài giữa hai chân OSC1 và OSC2 Để PT2272 giải mã chính xác sóng thu được, tần số dao động của PT2272 phải bằng 2.5 ~ 8 lần tần số dao động của PT2262 Tần số dao động ứng với các giátrị điện trở của PT2262 và PT2272 cho bởi đồ thị dưới:
Trang 31PT2262 PT2272Hình 2.10 : Đồ thị tần số dao động theo giá trị điện trở dùng cho PT2262 và PT2272
Giá trị điện trở dao động đề nghị được cho bởi bảng sau:
Bảng 2.6 Giá trị điện trở dao động
Chú ý: * Hoạt động khi điện áp cung cấp của PT2272 bằng 5V đến 15V
** Hoạt động khi điện áp cung cấp của PT2272 bằng 3V đến 15V
Điều này có nghĩa là nếu điện áp cung cấp cho PT2272 thấp hơn 5V, bạn cần sử dụng 1 giá trị điện trở dao động thấp hơn cho cả PT2262 và PT2272
2.2.3 Các mạch điện ứng dụng
Trang 32Hình 2.11: Mạch phát RF 4 bit dữ liệu băng tần UHFdùng PT2262.
Hình 2.12: Mạch phát RF chỉ có địa chỉ (không bit dữ liệu) băng tần UHF
Bảng 2.7 Giá trị tối đa cho phép PT2262
Trang 33Vcc Điện áp cung cấp -0.3 ~ 16.0 Volt
Trang 34năng quét mã khi không biết mã nguồn Trong vài trường hợp PT2272 có thể được tùy chọn cho phù hợp với từng ứng dụng cụ thể như: số chân dữ liệu ngõ ra tùy biến, loại ngõ ra chốt hay tức thời.
Do PT2272 đi cùng cặp với PT2262 nên để đảm bảo tính tương tính và phù hợp cao với PT2262 mọi thông số kỹ thuật về IC này cũng tương tự như PT2262 đã được trình bày khá kỹ ở trên nên dưới đây ta không nhắc lại những gì đã có mà chỉ trình bày những đặc điểm khác mà thôi
Trang 35Sơ đồ khối IC PT2272
Hình 2.13: Sơ đồ khối bên trong của PT2272
Cấu trúc chân PT2272
Hình 2.14: Sơ đồ chân IC PT2272
Trang 36Bảng 2.9 Mô tả chức năng các chân PT2272
Loại 18chân
Loại 20chân
Dạng sóng mã hóa nối tiếp thu được sẽ được đưa vào PT2272 ở chân này
thứ nhất
Một điện trở sẽ được nối giữa hai chân này
để xác định tần số dao động cở bản của PT2262
thứ hai
Tích cực mức cao VT ở mức cao báo hiệu rằng PT2272 đã thu được 1 sóng phát hợp lệ
2.3.2 Mô tả chức năng
PT2272 giải mã tín hiệu thu được từ chân DIN Tín hiệu được giải mã ra thành
từ mã bao gồm các bit địa chỉ, dữ liệu và bit đồng bộ Bit địa chỉ sau khi được giải
mã sẽ được đem so sánh với địa chỉ đã được thiết lập ở các chân ngõ vào địa chỉ Nếu cả hai lần các địa chỉ phù hợp nhau liên tiếp hai từ mã, PT2272 sẽ thực hiện – (1) các chân ngõ ra dữ liệu tương ứng với các bit dữ liệu sẽ được giải mã ra bit “1”,
và (2) ngõ ra VT – điện áp lên mức cao
Trang 37 Hoạt động RF và hoạt động IR tương tự như PT2262
Khi PT2272 nhận một từ mã phát, đầu tiên nó kiểm tra tín hiệu phát có hợp lệ hay không Đối với tín hiệu hợp lệ, (1) nó phải là một từ mã hoàn chỉnh, và (2) các bit địa chỉ phải phù hợp với các địa chỉ được thiết lập tại các chân địa chỉ Sau hai tín hiệu phát hợp lệ liên tiếp, PT2272 sẽ thay đổi các chân dữ liệu dựa theo các bit
dữ liệu thu được, và đưa VT lên mức cao Sau đây là giản đồ thời gian của quá trình trên:
Hình 2.15: Giản đồ thời gian ở các chân VT và dữ liệu (tức thời) sau khi thu
liên tiếp hai từ mã hợp lệ
PT2272 sử dụng hoặc ngõ ra dữ liệu chốt hoặc tức thời tùy thuộc vào phiên bản PT2272 được sử dụng Loại chốt (PT2272-LX) tích cực ngõ ra dữ liệu trong suốt quá trình phát và dữ liệu này được duy trì trong bộ nhớ mãi đến khi dữ liệu khác được nhập vào Loại tức thời (PT2272-MX), nói cách khác, chỉ tích cực ngõ ratrong quá trình phát Trong loại tức thời dữ liệu không tồn tại trong bộ nhớ sau khi phát đã hoàn tất Hãy xem sơ đồ bên dưới:
Trang 38Hình 2.16: Giản đồ thời gian ở các chân dữ liệu loại chốt và tức thời ứng
với từ mã thu được ở chân Din
Bảng 2.10 Bảng giá trị tối đa của IC PT2272
Trang 39Bảng 2.11 Bảng thông số điện áp tĩnh (DC) PT2272
Tốithiểu
Trungbình
Trang 40PT 2272 – X – XXX
Ví dụ loại gói hàng 18 chân:
Hai chữ đầu của tên hãng sản xuất PTC
Loại gói hàng: P = PDIP, 18 chân(có thể bị loại bỏ sau này)
S18 = loại IC dán, 18 chân S20 = loại IC dán, 20 chân