跳至內容

海斯命令集

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書
refer to caption
海斯300波特智慧型數據機

海斯命令集(也稱為AT命令集)是一套專門的命令語言,最初由Dale Heatherington和Dennis Hayes[1][2]於1981年為海斯智慧型數據機開發。

這套命令集由一系列短文字字串組成,這些字串可以組合使用,用於撥號、掛機以及更改連接參數等操作。絕大多數撥號數據機都採用了各種版本的海斯命令集。

最初的命令集僅覆蓋了早期300 bit/s數據機支援的操作功能。隨著高速數據機需要新的命令來控制更多功能,各大廠商紛紛推出了自己的一次性標準。這些標準仍然保持著基本的命令結構和語法,但都添加了許多使用特定字首字元的新命令——比如Hayes和USRobotics用「&」,而Microcom則用「\」。在SupraFAXModem 14400推出並引發市場整合後,這些命令中的大多數又重新統一到了Hayes擴充標準上。

「相容海斯標準」(Hayes compatible)這一說法在業內一直很重要[3][1],直到2018年仍然如此。[4]

歷史

[編輯]

1977年剛開始使用海斯命令通訊時,是數據機使用已存在的資料腳位而沒有做修改,取而代之的是使數據機可以自己切換在兩個模式之間

  1. 資料模式:用於傳送資料到遠端的數據機
  2. 命令模式:使本地端的數據機接收命令並執行

命令描述

[編輯]

下面的文字列出了一部分海斯命令集的命令,也叫AT命令,其中「AT」代表「注意(Attention)」。每個命令都以「AT」開頭,後面可以附加不定數量的命令。

海斯指令可以被區分為四組:

  1. 基本指令集:一個大寫字元跟著一個數值,例如:M1。
  2. 延伸指令集:一個"&"以及一個大寫字元跟著一個數值,這是基本指令集的延伸,例如:&M1。要注意的是,M1&M1是不同的命令。
  3. 私有指令集:通常用一個倒斜線("\")或一個百分比符號("%");這些命令在不同廠家之間有著很大的差別。
  4. 暫存器指令集:Sr=n,其中 r 代表要修改的暫存器的編號,n代表是要指定給暫存器的數值。一個暫存器代表主記憶體中的一個特定的物理區域。暫存器指令集用於向一個特定的暫存器(即主記憶體中的位置)輸入資料。舉例來說,S7=60會指示數據機執行「將7號暫存器的值設為60」這個操作。暫存器通常可以控制數據機的執行細節(如傳輸強度、調製參數等),並且不同型號之間通常不能通用。

儘管海斯命令集的語法以字母和數字的組合來定義大多數的命令(L0、L1等),但是數字0在命令中不是必須的。舉例來說,L0L是相同的命令。在閱讀後續的表格時要記住這一點。

在數據機處於資料模式時,使用跳脫序列可以將數據機轉為命令模式。普遍來說會使用三個加號(+++)作為跳脫序列,同時為了將它與資料區分開,在輸入它之前與之後必須有一次暫停,並且加號之間不允許有暫停。預設來說,一個暫停就是一秒鐘,更短的間隔則代表「沒有暫停」。

語法定義

[編輯]
  • <CR> Enter字元,用於當做命令或返回值的結尾,它的值以ASCII格式定義於S3暫存器,預設值為13。
  • <LF> 換行字元,它的值以ASCII格式定義於暫存器S4,預設值為10。在開啟了詳細返回模式時(使用了V1選項),換行字元會在Enter字元之後輸出;如果設定使用數字格式的返回碼(使用了V0選項),那麼它將不會在返回碼中出現。
  • <...> 用角括號括起來的名稱是一個語法元素。它們不會出現在命令列中。
  • [...] 可選的子參數或可選的AT命令回應會被方括號括起來。

數據機初始化

[編輯]

一個字串可以包含多個海斯命令,以便讓數據機為撥號或應答做最佳的準備,如AT&F&D2&C1S0=0X4。大多數數據機軟體都支援由使用者提供一個由數個AT命令組成的長字串,稱為初始化字串,它將在數據機開始工作時被傳送過去。V.250標準要求所有DCE頁面存檔備份,存於網際網路檔案館)都能接收至少40字元的命令體(AT之後的部分)。

一些重要的字元用於數據機初始化:

  • AT - "Attention":告知數據機後面跟著是數據機指令,每一行以AT為起始
  • Z - 重新設定(reset)數據機回到初始狀態
  • ,(a comma) - 使軟體暫停一秒鐘,若有多個逗點則代表暫停許多秒
  • ^M - 傳送一個結束字元(Carriage Return)給數據機,這是一個控制字元(當傳送此字元其實是傳送一個位元組,內容為ASCII的CR)

外部連結

[編輯]
  1. ^ 1.0 1.1 Victoria Shannon. The Rise and Fall of the Modem King. The New York Times. January 7, 1999. with a partner 
  2. ^ Georgi Dalakov. The Modem of Dennis Hayes and Dale Heatherington. January 4, 2021 [January 8, 2015]. 
  3. ^ Hayes compatible. Computerworld. March 30, 1987: 61. 
  4. ^ How to Set Up a Hayes Compatible Modem. IBM. June 17, 2018.