Điều khiển thiết bị qua PC - pdf 18

Download miễn phí Đề tài Điều khiển thiết bị qua PC



LỜI MỞ ĐẦU .1
MỤC LỤC .2
CHƯƠNG 1: DẪN NHẬ P .6
1.1 LÝ DO CHỌN ĐỀ TÀI .6
1.3 ĐỐI TƯ ỢNG NGHIÊN CỨU VÀ PHẠM VI NGHIÊN CỨU .6
1.3.1 Đối tƯợng nghiê n cứu. .6
1.3.2 Phạm vi nghiên cứu. .6
CHƯƠNG 2: TÌM HIỂU VI ĐIỀU KHIỂN AT89 S8252 .7
2.1 MÔ TẢ .7
2.2 CẤU TRÚC VDK AT89 S8252, CHỨC NĂNG TỪNG CHÂN .7
2.3 TỔ CHỨC BỘ NHỚ . 11
2.3.1 RAM mục đích c hung . 12
2.3.2 RAM định vị. . 12
2.3.3 Các băng thanh ghi (Register Banks). . 12
2.3.4 Các thanh ghi chức năng đặc biệt (Special Function Register). . 13
2.3.4.1 Từ tr ạng thái chƯơng trình (PSW: Program Status Word): . 14
2.3.4.2 Thanh ghi B: . 16
2.3.4.3 Con trỏ Stack SP (Stac k Pointer): . 16
2.3.4.4 Hai con trỏ dữ liệu DP TR (Data Pointer) . 16
2.3.4.5 Các thanh ghi Port (Port Register): . 16
2.3.4.6 Các thanh ghi Timer (Timer Re gister):. 16
2.3.4.7 Các thanh ghi Port nối tiếp (Serial Port Register): . 17
2.3.4.8 Các thanh ghi ngắt (Interrupt Re gister): . 17
2.3.4.9 Thanh ghi điều khiển nguồ n PCON (Po wer Co ntrol Register): . 18
2.3.4.10 Thanh ghi điều khiển bộ nhớ và kiểm so át giờ (WMCON) . 19
2.3.4.11 Thanh ghi giao tiếp nối tiếp bên ngoài SPI (Serial Peripheral
Interface) . 20
2.4 TÓM TẮT TẬP LỆNH CỦA AT89 S8252 . 21
2.4.1 Các c hế độ định v ị ( addressing mo de ) . 21
2.4.1.1 Sự đị nh v ị thanh ghi ( Re gister Addressing) . 21
2.4.1.2 Sự đị nh địa chỉ trực tiếp ( Direct Addressing ) . 22
2.4.1.3 Sự đị nh v ị đị a chỉ gián tiếp ( Indirect Addressing) . 22
Điều khiể n thiết bị qua PC Mục lục
Trang 3
2.4.1.4 Sự đị nh v ị đị a chỉ t ức thời (Immediate Addressing) . 23
2.4.1.5 Sự đị nh v ị đị a chỉ tƯơng đ ối . 23
2.4.1.6 Sự đị nh địa chỉ tuyệt đ ối ( Absolute Addressing) . 24
2.4.1.7 Sự đị nh v ị đị a chỉ dài ( Long Addressing ) . 24
2.4.1.8 Sự đị nh địa chỉ phụ lục (Inde x Addressing ) . 24
2.4.2 Các kiểu lệ nh (instruction types) . 25
2.4.2.1 Các lệnh số học (Arithmetic Instrustion): . 25
2.4.2.2 Các hoạt đ ộ ng logic (Logic Operation): . 26
2.4.2.3 Các lệnh rẽ nhánh . 27
2.4.2.4 Các lệnh dịch chuyể n dữ liệu. . 29
2.4.2.5 Các lệnh luận lý (Boolean Instruction) . 30
2.5 HOẠT ĐỘNG CỦA PORT NỐI TIẾP AT89 S8252. . 31
2.5.1 Giới thiệu . 31
2.5.2 Thanh ghi điều khiển port nối tiếp SCON (Serial Port Co ntrol Register) 32
2.5.3 Các mode hoạt đ ộng (Mode Of Operation) . 33
2.5.4 Sự khởi đ ộng, truy xuất các thanh ghi port nối tiếp . 34
2.5.4.1 Sự c ho phép bộ thu (Recive Enable) . 34
2.5.4.2 Bit data thứ 9 ( the 9
th
data bit) . 34
2.5.4.3 Sự thêm vào bit kiểm tra chẳn lẻ Parity . 34
2.5.4.4 Cờ ngắt . 35
2.5.5 Sự truyề n của bộ xử lý đ a kênh . 35
2.5.6 T ốc độ baud của port nối tiếp . 36
2.6 HOẠT ĐỘNG TIMER CỦA AT89S8252 . 39
2.6.1 Giới thiệu . 39
2.6.2 Timer 0 và Timer 1 . 39
2.6.2.1 Thanh ghi điều khiển Timer TCON (Timer Co ntrol Register) . 41
2.6.2.2 Các Mode và cờ tràn (Timer Mo des And Overflo w). . 41
2.6.2.2.1 Mode Timer 13 bit (MODE 0) . 41
2.6.2.2.2 Mode Timer 16 bit (MODE 1) . 42
2.6.2.2.3 Mode tự động nạp 8 bit (MODE 2) . 42
2.6.2.2.4 Mode Timer tách ra (MODE 3). 43
2.6.2.3 Các nguồ n xung clock (Clock Sources) . 43
2.6.2.3.1 Sự bấm giờ bê n trong (Interval Timing) . 43
2.6.2.3.2 Sự đếm các sự kiện (Eve nt Counting) . 44
Điều khiể n thiết bị qua PC Mục lục
Trang 4
2.6.2.4 Sự bắt đ ầu, kết thúc và s ự điều khiển các Timer (Starting, Stoping And
Controlling The Timer) . 44
2.6.2.5 Sự khởi đ ộng và truy suất c ác thanh ghi Timer. . 44
2.6.2.6 Sự đọc thanh ghi timer trên tuyến. . 45
2.6.3 Timer 2. 45
2.6.3.1 Thanh ghi T2 CON (Timer/Counter 2 Control Re gister) . 46
2.6.3.2 Thanh ghi T2 MOD – Timer 2 Mo de Co ntrol Register. 47
2.6.3.3 Chế độ Capture . 47
2.6.3.4 Chế độ Auto-Reload. 48
2.6.3.5 Chế độ Baud Rate Generator. 49
CHƯƠNG 3: TÌM HIỂU CÁC CỔNG GIAO TIẾP. 51
3.1 GIAO TIẾP CỔNG SONG SONG (CỔNG MÁY IN) . 51
3.1.1 Tê n gọi . 51
3.1.2 Mức điện áp cổng . 51
3.1.3 Kho ảng c ách ghép nối . 51
3.1.4 T ốc độ truyền dữ liệu . 51
3.1.5 Cấu trúc cổng song song. 51
3.1.6 Các thanh ghi ở cổng song song. . 53
3.2 GIAO TIẾP CỔNG NỐI TIẾP (RS232) . 53
3.2.1 Cấu trúc cổng nối tiếp. . 53
3.2.2 Truyền thông nối tiếp giữa 2 nút. . 56
3.3 TÌM HIỂU VỀ USB . 57
3.3.1 Khái niệm . 57
3.3.2 Kết nối qua USB . 58
3.3.3 Mở rộng cổng USB . 58
3.3.4 Các đ ặt tính c ủa USB . 59
3.3.5 USB 2.0 . 60
3.3.6 USB 3.0 . 60
CHƯƠNG 4: CHUẨN TRUYỀN THÔNG NỐI TIẾP RS232 . 62
4.1 ĐẶT VẤN ĐỀ. . 62
4.2 ƯU ĐIỂM CỦA GIAO DIỆN NỐI TIẾP RS232. . 62
4.3 NHỮNG ĐẶC ĐIỂM CẦN LƯU Ý TRONG CHUẨN RS232. . 62
4.4 CÁC MỨC ĐIỆN ÁP ĐƯỜNG TRUYỀN. . 62
4.5 CỔNG RS232 TRÊN PC. 63
4.6 QUÁ TRÌNH DỮ LIỆU. . 6



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

đồ khối của Port nối tiếp nhƣ sau:
Hình 2.5: Sơ đồ khối Port nối tiếp
Thanh ghi điều khiển Port nối tiếp SCON (98H) là thanh ghi đƣợc định vị bit
bao gồm các trạng thái và các bit điều khiển. Các bit điều khiển set mode của Port nối
tiếp, còn các bit trạng thái cho biết sự kết thúc việc thu phát 1 ký tự. Các bit trạng thái
có thể đƣợc kiểm tra trong phần mềm hay có thể lập trình để sinh ra sự ngắt.
Tần số hoạt động của Port nối tiếp hay tốc độ BAUD có thể đƣợc lấy từ dao
động trên Chip AT89S8252 hay thay đổi. Nếu 1 tốc độ Baud thay đổi đƣợc dùng, thì
Timer cung cấp 1 tốc độ Baud ghi giờ và phải đƣợc lập trình 1 ccah1 phủ hợp.
2.5.2 Thanh ghi điều khiển port nối tiếp SCON (Serial Port Control
Register)
Mode hoạt động của Port nối tiếp AT89S8252 đƣợc set bởi việc ghi lên thanh
ghi mode của Port nối tiếp SCON ở địa chỉ 99H. Bảng tóm tắt thanh ghi điều khiển
Port nối tiếp SCON nhƣ sau:
Điều khiển thiết bị qua PC Chƣơng 2: Tìm hiểu VDK AT89S8252
Trang 33
Bảng 2.9: Tóm tắt thanh ghi SCON
Bit Ký kiệu Địa chỉ Mô tả hoạt động
SCON.7 SM0 9FH Bit 0 của mode Port nối tiếp
SCON.6 SM1 9EH Bit 1 của mode Port nối tiếp
SCON.5 SM2 9DH
Bit 2 của mode Port nối tiếp. Cho phép sự
truyền của bộ xử lý đa kênh ở mode 2, 3.
RI sẽ không tích cực nếu bit thứ 9 đã thu
vào là 0.
SCON.4 REN 9CH REN = 1 sẽ cho thu kí tự
SCON.3 TB8 9BH
Phát bit 8. Bit 9 phát trong mode 2 và 3,
nó đƣợc sét hay xóa bởi phần mềm.
SCON.2 RB8 9AH Thu bit 8, bit 9 thu.
SCON.1 TI 99H
Cờ ngắt phát. Đƣợc set khi kết thúc sự
truyền kí tự và đƣợc xóa bởi phần mềm.
SCON.0 RI 98H
Cờ ngắt thu. Đƣợc set khi kết thúc sự thu
và đƣợc xóa bởi phần mềm
SCON Register Sumary
2.5.3 Các mode hoạt động (Mode Of Operation)
Bảng 2.10: Bảng MODE hoạt động của Port nối tiếp.
SM0 SM1 Mode Mô tả Tốc độ Baud
0 0 0 Thanh ghi dịch
Cố định (tần số dao động
FOSC/12).
0 1
1
URAT 8 bit Thay đổi (đƣợc đặt bởi Timer).
1 0 2 URAT 9 bit
Cố định (tần số dao động FOSC/64
hay FOSC/32.
1 1
3
URAT 9 bit Thay đổi (đƣợc đặt bởi Timer).
SCON Register Sumary
Điều khiển thiết bị qua PC Chƣơng 2: Tìm hiểu VDK AT89S8252
Trang 34
Trƣớc khi dùng Port nối tiếp, SCON phải đƣợc gán đúng mode. Ví dụ để khởi
gán Port nối tiếp MODE 1 (SM0/SM1 = 0/1), cho phép thu ( REN = 1), và set cờ ngắt
của việc phát sẵn sàng hoạt động (TI =1 ), ta dùng lệnh sau:
MOV SCON, # 01010010H.
Port nối tiếp của AT89S8252 có 4 mode hoạt động tùy thuộc theo 4 trạng thái
của SM0/SM1.
Ba trong 4 mode cho phép truyền sự đồng bộ với mỗi ký tự thu hay phát sẽ
đƣợc bố trí bởi bit Start hay bit Stop.
2.5.4 Sự khởi động, truy xuất các thanh ghi port nối tiếp
2.5.4.1 Sự cho phép bộ thu (Recive Enable)
Bit cho phép thu REN trong thanh ghi SCON phải đƣợc set bởi phần mềm để
cho phép sự thu các ký tự. Điều này thƣờng đƣợc làm ở đầu chƣơng trình khi các Port
nối tiếp và các Timer… đƣợc khởi động.
Ta có thể khởi động bằng lệnh :
SETB REN hay MOV CON, #XXX1XXXXB
2.5.4.2 Bit data thứ 9 ( the 9
th
data bit)
Bit data thứ 9 đƣợc phát trong mode 2 và mode 3 phải đƣợc LOAD vào TB8
bởi phần mềm, còn bit data thứ 9 đƣợc thu thì đặt trong RB8.
Phần mềm có thể ( hay không ) đòi hỏi 1 bit data thứ 9 tham gia vào những chi
tiết kỹ thuật của thiết bị nối tiếp với điều kiện mà sự truyền data đƣợc thành lập.
2.5.4.3 Sự thêm vào bit kiểm tra chẳn lẻ Parity
Cách tổng quát dùng chung bit data thứ 9 là cộng bit Parity vào 1 ký tự.
Bit P (Parity) trong từ trạng thái chƣơng trình PSW sẽ đƣợc set hay xóa với
mọi chu kỳ máy để thành lập bit Parity chẳn với 8 bit trong thanh ghi tích lũy A.
Ví dụ nếu sự truyền yêu cầu 8 bit data cộng thêm 1 bit Parity chẵn, thì các lệnh
sau đây có thể đƣợc dùng để phát 8 bit vào thanh ghi A với Parity chẵn đƣợc cộng vào
bit thứ 9.
MOV C, P
MOV TB8, C
MOV SBUF, A
Nếu Parity lẻ đƣợc yêu cầu thì các lệnh trên đƣợc sửa lại là:
MOV C, P
CPL C
MOV TB8, C
MOV SBUF, A
Việc dùng bit Parity không bị giới hạn trong mode 2 hay mode 3.8 bit data
đƣợc phát trong mode 1 có thể bao gồm 7 bit data, và 1 bit Parity. Để phát 1 mã ASCII
7 bit với 1 bit Parity chẵn vào 8 bit, các lệnh sau đây đƣợc dùng :
CLR ACC, 7 : xóa bit MSB trong A đảm bảo Parity chẵn
MOV C, P : đƣa Parity chẵn vào C
Điều khiển thiết bị qua PC Chƣơng 2: Tìm hiểu VDK AT89S8252
Trang 35
MOV ACC.7, C :đƣa Parity chẵn vào bit SB của A
MOV SBUF, A :gửi bit data cùng bit Parity chẵn
2.5.4.4 Cờ ngắt
Cờ ngắt thu RI và phát TI trong thanh ghi SCON vận hành 1 rơle quan trọng
trong sự truyền nối tiếp AT89S8252. Cả 2 bit đều đƣợc set bởi phần cứng nhƣng phải
xóa bởi phần mềm.
Điển hình là RI đƣợc set ở cuối sự thu ký tự và cho biết : thanh ghi đệm thu đã
đầy. Điều kiện này có thể kiểm tra trong phần mềm hay có thể đƣợc lập trình để sinh
ra sự ngắt. Nếu phần mềm muốn nhập 1 ký tự từ 1 thiết bị đã đƣợc kết nối đến Port nối
tiếp, thì nó phải chờ đến khi RI đƣợc set, sau khi xóa RI và đọc ký tự từ SBUF. Điều
này đƣợc lập trình nhƣ sau :
WAIT :
JNB RI, WAIT : kiểm tra RI có set chƣa
CLR RI :xóa cờ ngắt thu RI
MOV A, SBUF : CPU đọc ký tự
TI đƣợc set ở cuối sự phát ký tự và cho biết “ thanh ghi đệm của sự phát đã
rỗng”. Nếu phần mềm muốn gửi 1 ký tự đến 1 thiết bị đã đƣợc kết nối đến Port nối
tiếp, trƣớc tiên nó phải kiểm tra xem Port nối tiếp đã sẵn sàng chƣa. Nếu ký tự trƣớc
đã đƣợc gửi đi, thì nó phải chờ cho đến khi sự phát đi hoàn thành. Các lệnh sau đây
dùng để phát 1 ký tự trong thanh ghi A ra :
WAIT :
JNB RI, WAIT : kiểm tra TI có set chƣa
CLR RI :xóa cờ ngắt thu TI
MOV A, SBUF : CPU đọc ký tự
2.5.5 Sự truyền của bộ xử lý đa kênh
Mode 2 và mode 3 có 1 sự cung cấp đặc biệt cho việc truyền đa kênh xử lý. Ở
các mode này, 9 bit data đƣợc thu và bit thứ 9 đi vào RB8. Port có thể lập trình nhƣ
điều mà bit Stop thu đƣợc, sự ngắt của Port chỉ đƣợc tích cực nếu RB8 = 1. Đặc điểm
này cho phép bởi việc set bit MS2 trong thanh ghi SCON. Ứng dụng này là 1 sự cài
đặt mạng đƣợc dùng bởi nhiều AT89S8252 ở sự sắp đặt máy chủ và máy con nhƣ sau
Điều khiển thiết bị qua PC Chƣơng 2: Tìm hiểu VDK AT89S8252
Trang 36
Hình 2.6: Sơ đồ bộ xử lý đa kênh AT89S8252
Khi bộ xử lý chủ muốn phát 1 khối dữ liệu đến bộ xử lý con riêng lẻ, trƣớc tiên
nó gửi ra 1 byte địa chỉ để nhận diện bộ xử lý con mong muốn. Byte địa chỉ đƣợc phân
biệt với byte dữ liệu bởi bit thứ 9 : bit thứ 9 bằng 1 trong bit địa chỉ và bằng 0 trong
byte dữ liệu. Tuy nhiên byte địa chỉ sẽ ngắt toàn bộ các bộ xử lý con, do đó có thể
khám phá byte đã thu để kiểm tra nếu nó đang định địa chỉ. Bộ xử lý con đã đƣợc định
địa chỉ sẽ xóa bit SM2 của nó và chuẩn bị thu các byte dữ liệu theo sau đó. Những bộ
xử lý con không đƣợc định địa chỉ vẫn đƣợc giữ các bit SM2 của nó và set trở về các
bận của chúng đồng thời lờ đi các byte dữ liệu đã thu thập. Chúng sẽ đƣợc ngắt lại khi
byte địa chỉ kế tiếp đƣợc phát bởi bộ xữ lý cũ.
Bit SM2 không có tác dụng trong mode 0 và trong mode 1 nó có thể đƣợc dùng
để kiểm tra sự thích hợp của bit St...
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status