STB và SRE
Byte đăng ký trạng thái và thông tin dịch vụ yêu cầu cho phép đăng ký được giới thiệu trong bảng sau:
-
Bit
|
Mô tả
|
Bit giá trị
|
7
|
Không sử dụng (N.U.)
|
0
|
6
|
Tóm tắt trạng thái chủ (MSS)/ Dịch vụ yêu cầu (RQS)
|
64
|
5
|
Bit tóm tắt sự kiện (ESB)
|
32
|
4
|
Bản tin sẵn có (MAW)
|
16
|
3
|
Không sử dụng (N.U.)
|
0
|
2
|
Lỗi sẵn có (EAV)
|
4
|
1
|
Không sử dụng (N.U)
|
0
|
0
|
Không sử dụng (N.U)
|
0
|
Bảng dưới đây giới thiệu tóm tắt các vị trí vận hành trên các thanh đăng ký STB và SRE
Đăng ký
|
Đọc
|
Viết
|
Xoá
|
STB
| -
Dùng *STB?
-
Dùng serial poll (bus GPIB kế tiếp mà cho phép ngăn giá trị mà không làm gián đoạn xử lý hiện tại)
|
Có thể ghi, nội dung đăng ký chỉ được mô tả khi các sự kiện đăng ký hoặc xếp hàng được mô tả
|
Dùng *CLS trước khi gửi một xếp hàng (để xoá các bộ đăng ký sự kiện và các xếp hàng và token xoá STB cùng loại)
|
SRE
|
Dùng *SRE?
|
Dùng *SRE với một giá trị bằng 0 để không cho phép dăng ký hoặc với một giá trị bằng 1 tới giá trị cho phép của nó
| -
Dùng *SRE với một giá tị ngang bằng 0
-
Tại lúc khởi động thì đăng ký được thiết lập là 0
|
|
|
|
|
Sơ đồ được hiển thị trên trang bên là sự trợ giúp hữu ích trogn việc hiểu các lệnh chung và cách yêu cầu một dịch vụ (SRQ) được tạo ra.
Sử dụng một yêu cầu dịch vụ, một thiết bị thông báo bộ điều khiển mà một sự kiện yêu cầu sự chú ý đặc biệt xảy ra. Bộ điều khiển sau đó tìm một thiết bị đã tạo ra một SRQ và nguyên nhân của nó
Cấu trúc lệnh SCPI
Thông tin được giới thiệu trong mục này cung cấp một cái nhìn về việc lập trình GPIB. Nếu người dùng cần thông tin chi tiết xin hãy tham khảo:
-
Viện nghiên cứu điện – điện tử quốc tế: tiêu chuẩn IEEE 488.2-1992, tiêu chuẩn mã IEEE, dạng, giao thức và các lệnh chung để sử dụng với tiêu chủan ANSI/IEEE 488.1-1987, new york 1992.
-
Các lệnh chuẩn cho các dụng cụ có thể lập trình được (SCPI) quyển 1: Syntax and Style Vers 1999.0 May USA 1999
Các lệnh được cung cấp theo dòng hướng dẫn quyết định bởi các lệnh chuẩn cho các dụng cụ có thể lập trình được SCPI. Một bản tin lập trình bao gồm một hoặc nhiều lệnh với các thông số tương ứng của nó
Ví dụ một bản tin lập trình có thể chứa một lệnh được sử dụng để kích hoạt hoặc không kích hoạt một nguồn. Có pháp lệnh tương ứng sẽ là:
Khi gửi một bản tin chưa lệnh trước thì người dùng phải gõ là: Sour:Pow On
Bảng sau cho thấy các thành phần được sử dụng chung trong các lệnh hoặc các cú pháp yêu cầu
Mục
|
Ý nghĩa
|
[]
|
Bao gồm các tuỳ chọn số và ký tự, các thông số. Không bao gồm các dấu ngoặc vuông trong bản tin lập trình
|
[1,...,n]
|
Chỉ dẫn dụng cụ cung cấp nhiều khả năng và người dùng phải xác định khả năng muốn dùng. Nếu người dùng để trống giá trị này thì lệnh sẽ có hiệu lực trên khả năng đầu tiên
Nhiều khả năng có thể được tìm thấy tại nhánh bất kỳ của cây lệnh (gốc, các node nhánh hoặc các node kết cuối)
Ví dụ: Nếu lệnh là SENSE [1..n]:CORRection:COLLect:ZERO và người dùng muốn thực hiện nó ngay trên SENSe (sensor) thứ hai của dụng cụ thì người dùng gửi lệnh:
:SENSe2:CORRection:COLLect:ZERO
Không bao gồm các dấu ngoặc vuông trong bản tin lập trình, đơn giản vào số
|
|
Chỉ dẫn một dấu cách được yêu cầu.
Phù hợp với các mã ký tự ASCII (0 đến 9 và 11 tới 32 trong hệ thập phân).
Không bao gồm “” trong bản tin lập trình, đơn giản gõ dấu cách
|
|
Thành phần được sử dụng trong việc xây dựng các kiểu dữ liệu số khác nhau. Có thể đặt giá trị bất kỳ giữa 0 và 9 (tương ứng với các mã ký tự ASCII từ 48 đển 57 trong hệ thập phân)
|
|
Thành phần được sử dụng trong cấu trúc của các kiểu dữ liệu và các bản tin lập trình chính
Trong sơ đồ trên
-
“” tương ứng với các mã ký tự ASCII (65 đến 90 và 97 đến 122 trong hệ thập phân)
-
“_” tương ứng với một ký tự dưới lõi (mã 95 trong hệ thập phân)
|
< >
|
Văn bản xuất hiện giữa các dấu ngoặc xác định thông số lệnh được gửi hoặc đáp ứng người dùng nhận được từ dụng cụ
Không bao gồm các dấu ngoặc trong bản tin lập trình
|
|
|
Chỉ dẫn một và chỉ một giá trị được chọn từ các sự lựa chọn sẵn có
Ví dụ: Nếu danh sách là 0|1 thì người dùng chỉ có thể chọn 0 hoặc 1
Không bao gồm ký tự | trong bản tin lập trình
|
{ }
|
Chỉ dẫn các thông số ở bên trong có thể xuất hiện 0 đến n lần khi lệnh được sử dụng
Không bao gồm dấu ngoặc trong bản tin lập trình
|
:
|
Dùng để tách riêng các từ. Có thể là trống tại lúc bắt đầu bản tin lập trình. Ví dụ người dùng có thể sử dụng :SYST:ERR hoặc SYST:ERR
|
;
| -
Dùng để tách các lệnh khác nhau của một bản tin lập trình khi nhiều hơn một lệnh được gửi tại một thời điểm. Trong trường hợp này nó được gọi là
.
-
Cũng được sử dụng để phân tách các đáp ứng khi nhiều yêu cầu được gửi trong một bản tin lập trình. Trong trường hợp này nó được gọi là
|
,
| -
Dùng để tách các thông số trong một lệnh hoặc một yêu cầu. Trong trường hợp này nó được gọi là
-
Cũng được dùng để tách các đáp ứng khác nhau từ một yêu cầu. Trong trường hợp này nó được gọi là .
|
Cũng có nhiều quy tắc cú pháp lệnh:
-
Đánh vần lỗi sẽ huỷ lệnh hoặc yêu cầu
-
Các lệnh và các yêu cầu không phải là trường hợp nhạy cảm. Người dùng có thể gõ các bản tin lập trình bằng cách sử dụng các chữ thường hoặc các chữ hoa
-
Các lệnh hoặc các yêu cầu có thể được viết bằng cách chỉ ra 3 hoặc 4 chữ viết tắt, chỉ đủ từ hoặc kết hợp cả hai phương pháp trên
Chia sẻ với bạn bè của bạn: |