điều khiển máy khoan bằng máy tính điện tử, chương 4 docx

8 259 0
điều khiển máy khoan bằng máy tính điện tử, chương 4 docx

Đang tải... (xem toàn văn)

Thông tin tài liệu

Chương 4: Quá trình phát nối tiếp Để phát một byte trên đường dây kết nối nối tiếp, cổng được giả đònh là đã được khởi sự với tốc độ baud và các phần chọn khung (Frame) nối tiếp thích hợp. Chúng ta cũng giả đònh rằng các byte sẽ được phát đi trên cổng nối tiếp số 1 (COM1). 1. Trước tiên, xác đònh đòa chỉ cơ sở cổng I/O bằng cách đọc một từ (Word) từ vùng dữ lệu BIOS tại 40:OH đối với cổng nối tiếp COM1. Nếu trò = 0: Không có cổng nối tiếp hoạt động nào được gắn ở đây và dó nhiên không có dữ liệu nào được gửi đi. 2. Hai đường điều khiển MODEM là DTR (DATA Terminal Ready) và RTS (Request to Send) được xác lập lên mức cao (DTR = 1, RTS = 1). - DTR thông báo cho thiết bò kết nối biết rằng máy tính đang hoạt động và sẵn sàng để liên lạc. - RTS báo cho thiết bò kết nối biết rằng máy tính muốn gửi dữ liệu. - Hai đường này được kích khởi bằng cách ghi trò 3 thanh ghi MCR (MODEM control Regester) của UART. 3. Kế đó, kiểm tra hai đường trạng thái CTS (Clear To Send). Những đường này nằm trong các bit 4 và 5 của thanh ghi MSR (MODEM Status Regester). - DSR báo cho máy tính biết thiết bò kết nối đã được bật lên và sẵn sàng. - CTS báo cho máy tính biết rằng thiết bò kết nối đã sẵn sàng đối với dữ liệu. - Các đường trạng thái này nên được kiểm tra trong 2ms hay cho đến khi cả hai đều chuyển sang mức cao. Khi cả hai đường này đều ở mức cao, thiết bò được kết nối với cổng nối tiếp đã báo hiệu cho biết nó đã sẵn sàng cho một byte. Một lỗi đáo hạn (timeout error) được báo hiệu bởi phần mềm nếu một trong hai đường dẫn còn ở mức thấp lâu hơn khoảng 2ms. 4. Đến đây thiết bò kết nối đã sẵn sàng tiếp nhận một byte, UART phải được kiểm tra xem liệu thanh ghi chứa dữ liệu phát THR (Transmit Holding Regester) đã sẵn sàng có một byte chưa. Thanh ghi LSR (Line Status Regester), bit 5, được xác lập lên mức cao khi thanh ghi chứa dữ liệu này trống rỗng và sẵn sàng cho một byte. Một lần nữa, giống ở bước 3 nếu thanh ghi THR không thể trở nên hữu dụng trong 2ms, thì phần mềm sẽ báo một lỗi đáo hạn, và bỏ qua việc phát đi. 5. Nếu cho đến bây giờ chưa xảy ra việc đáo hạn, byte có thể được gửi đến thanh ghi chứa dữ liệu phát của UART. 6. Sau đó, UART phát byte từ thanh ghi chứa dữ liệu phát vào thanh ghi dòch TSR (từ đây các bit dữ liệu được dòch ra và gửi đi), và tạo dạng khung nối tiếp.  Quá trình nhạân nối tiếp. Để nhận 1 byte từ đường dây kết nối nối tiếp, cổng được giả đònh như trên (cho cổng COM3): 1. Trước tiên, xác đònh đòa chỉ cơ sở cổng I/O bằng cách đọc một từ (Word) từ vùng dữ liệu BIOS tại 40:4H đối với cổng nối tiếp COM3. Nếu trò = 0: Không có cổng nối tiếp hoạt động nào được gắn ở đây và dó nhiên không có dữ liệu nào được gửi đi. 2. Hai đường điều khiển MODEM là DTR (DATA Terminal Ready) và RTS (Request to Send) được xác lập lên mức cao (DTR = 1, RTS = 1). - Điều này thông báo cho thiết bò kết nối biết rằng máy tính đang hoạt động và sẵn sàng liên lạc. Điều này được thực hiện bằng cách ghi trò 1 các thanh ghi MMC của UART. 3. Kế đó kiểm tra tín hiệu trên đường trạng thái DSR. Tín hiệu này xuất hiện trong bit 5 của thanh ghi MSR. DSR báo cho máy tính biết rằng thiết bò kết nối đã được bật lên và sẵn sàng. DSR sẽ được kiểm tra cho đến khi nó lên mức cao hay cho đến khi hết 2ms trước khi một lỗi đáo hạn được báo hiệu. 4. Kế đó, vùng đêïm nhận được kiểm tra để xem dữ liệu đã nhận được dữ liệu nào chưa. Bit 0 của thanh ghi LSR chứa một cờ hiệu báo dữ liệu đã sẵn sàng. Nó được xét lên 1 khi vùng đệm có dữ liệu. Nếu cờ báo dữ liệu sẵn sàng không được xét sau 2ms, thì phần mềm sẽ khai báo một lỗi đáo hạn, và tác vụ bò bỏ qua. 5. Nếu cho đến bây giờ chưa xảy ra việc đáo hạn, byte có thể được đọc từ vùng đệm nhận của UART. - Trong chế độ bất đồng bộ, 8251 A dòch số liệu trên dây RxD từ bit một. Sau mỗi bit, thanh ghi thu được so sánh với thanh ghi chứa ký tự SYN. Nếu hai thanh ghi chưa bằng nhau thì 8251 A dòch bit khác và tiếp tục so sánh cho đến khi hai thanh ghi bằng nhau. 8251 A kết thúc chế độ bất đồng bộ và đưa tín hiệu SYNDET (Synch Detect) để báo đồng bộ đã hoàn tất. - Nếu USART được nạp từ điều khiển để làm việc với hai ký tự SYNC, quá trình bất đồng bộ cũng như trên. Nhưng hai ký tự kế tiếp nhau sẽ được so sánh với hai ký tự SYNC trước khi đạt được sự đồng bộ. Ở chế độ bất đồng bộ bit chẵn/lẻ sẽ không phải kiểm tra. USART ở chế độ đuổi bắt đồng bộ với hai điều kiện: - USART được khởi động ở chế độ đồng bộ. - USART đã nhận lệnh ở chế độ bất đồng bộ.  Khối phát Khối này nhận số liệu song song từ đơn vò trung tâm, chèn thêm các thông tin rồi chuyển sang nối tiếp và gửi ra thân TxD (Transmiter DATA). - Ở chế độ bất đồng bộ, khối phát chèn thêm bit START, bit kiểm tra chẵn lẻ paraty và một hay hai bit STOP. - Trong chế độ đồng bộ, khối phát chèn thêm các ký tự SYNC. Những ký tự đồng bộ này phải được phát trước khi bản tin bắt đầu. Nếu trong khi phát có khoảng trống giữa hai ký tự thì USART tự động chèn các ký tự đồng bộ vào. - Trong cả hai chế độ đồng bộ và bất đồng bộ, quá trình phát chỉ được cho phép khi tín hiệu TxE (Transmiter Enable) và tín hiệu CTS, ở trạng thái tích cực. Nếu USART được đặt ở chế độ đồng bộ từ ngoài, chân SYNDET sẽ là cửa vào và nhận tín hiệu để đồng bộ khi thu. - Khối phát có thể gửi tín hiệu cắt (BREAK). Đó là một chu kỳ liên tục các bit SPACE trên đường dây liên tục và đưọc dùng ở chế độ truyền song công để cắt quá trình gửi thông tin ở đầu cuối. - USART sẽ gửi tín hiệu cắt liên tục nếu bit D 3 của byte lệnh được thiết lập  Khối điều khiển Modem Khối này tạo và nhận tín hiệu RTS (Request to Send).  Ngoài ra, còn có các tín hiệu ra DTR (Data Terminel Ready) và tín hiệu vào DSR (Data Set Ready). Đó là những tín hiệu vạn năng.  Tín hiệu DTR điều khiển bởi bit D 2 bởi byte lệnh.  Tín hiệu DSR thể hiện ở bit D 7 của thanh ghi trạng thái.  USART không đònh nghóa các tín hiệu này một cách cứng ngắc. Thông thường: - Tín hiệu DTR qua Modem để chỉ rằng thiết bò đầu cuối sẵn sàng truyền. - DSR là tín hiệu từ Modem để chỉ trạng thái sẵn sàng liên lạc.  Khối điều khiển vào/ra Logic điều khiển đọc/ghi giải mã các tín hiệu điều khiển từ Bus điều khiển của đơn vò trung tâm thành những tín hiệu đều khiển các cổng dẫn số liệu đến Bus nội của USART. Bảng sau cho biết sự liên quan giữ các tín hiệu CE, C/D\ RD\ CE C/D\ RD\ WR\ Ý Nghóa 0 0 0 0 1 0 1 0 1 x 0 0 1 1 x 1 1 0 0 x CPU đọc số liệu từ USART CPU đọc trạng thái từ USART CPU ghi số liệu vào USART CPU ghi lệnh vào USART Bus của USART ở trạng thái trở kháng cao  Khối thu Khối thu nhận dữ liệu nối tiếp ở chân RxD và chuyển thành số liệu song song (P/PC). Trước khi bộ thu làm việc, bit D 2 trong Command world của byte lệnh phải ở trạng thái cho phép. Nếu bit này không được lập, bộ thu sẽ không tạo ra tín hiệu RxRDI. - Trong chế độ bất đồng bộ, 8251 A kiểm tra mức điện áp của đầu vào RxD. Khi có thay đổi mức logic từ 1 xuống 0, 8251 A khởi động bộ đếm thời gian trong khối thu khi đặt thời gian ½ bit, 8251 A kích mẫu đầu vào RxD. Tại thời điểm này có 2 trường hợp xảy ra: - Nếu đầu vào RxD có mức logic cao thì sự thay đổi từ 1 xuống 0 ở RxD trước lúc kích mẫu là do nhiễu hay khối thu đã khởi động bộ đếm trong khi nhận bit số liệu. Như vậy có sai 8251 bỏ lệnh đang thực hiện và chuẩn bò ký tự mới. - Nếu đầu vào RxD có mức logic thấp trong thời điểm kích mẫu. 8251 tiếp tục kích mẫu để nhận giá trò của các bit số liệu, bit kiểm tra chẵn lẻ và các bit dừng. Sau đó, 8251 tách các bit khung và chuyển số liệu qua Bus trong đến thanh ghi đệm số liệu thu. Tín hiệu RxRDI được tạo ra để báo cho trung tâm biết số liệu thu đã sẵn sàng. - Trong chế độ đồng bộ, khối thu kích mẫu các bit số liệu của ký tự rồi đưa đến đệm số liệu thu và lập cờ RxRDI. Vì bộ thu nhóm một số bit thành ký tự nên được xác đònh bit số liệu đầu tiên là cần thiết. Để đồng bộ giữa bộ thu và bộ phát, nếu có trống trong dãy ký tự thì 8251 tự động chèn ký tự SYNC vào. Quá trình đồng bộ được thực hiện trong quá trình bất đồng bộ.  Khối đệm vào ra - Khối đệm vào ra chứa: Thanh ghi trạng thái, thanh ghi số liệu thu (thanh ghi đệm số liệu thu), thanh ghi số liệu phát và lệnh (thanh ghi đệm số liệu phát và lệnh). - Như vậy, chỉ có một thanh ghi chứa thông tin chuyển từ đơn vò trung tâm vào USART. Thông tin này bao gồm số liệu và lệnh, do vậy phải có sự phân chia thời gian giữa lệnh và số liệu. Lệnh phải được gửi trước số liệu. Trước khi gửi số liệu vào USART. Đơn vò trung tâm phải kiểm tra tín hiệu sẵn sàng phát TxRDI. Nếu gửi thông tin khi TxRDI ở trạng thái chưa sẵn sàng số liệu chuyển đi có thể sai . sẵn sàng liên lạc.  Khối điều khiển vào/ra Logic điều khiển đọc/ghi giải mã các tín hiệu điều khiển từ Bus điều khiển của đơn vò trung tâm thành những tín hiệu đều khiển các cổng dẫn số liệu. Hai đường điều khiển MODEM là DTR (DATA Terminal Ready) và RTS (Request to Send) được xác lập lên mức cao (DTR = 1, RTS = 1). - Điều này thông báo cho thiết bò kết nối biết rằng máy tính đang. đường này nằm trong các bit 4 và 5 của thanh ghi MSR (MODEM Status Regester). - DSR báo cho máy tính biết thiết bò kết nối đã được bật lên và sẵn sàng. - CTS báo cho máy tính biết rằng thiết bò

Ngày đăng: 05/07/2014, 13:21

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan