繼電器是用開關量控製的功率開關器件。繼電器分機械觸點的繼電器和無觸點的固態繼電器。繼電器的主要優點是用小電流的線圈控製大電流的觸點。當開關量輸出高電平,光電耦合器導通使繼電器的線圈得電,使常開觸點閉合,點亮燈泡。在繼電器線圈一側,用十幾毫安的電流接通線圈,可使幾百毫安、幾個安培的觸點接通。固態繼電器是用分離的電子元器件、集成電路(或芯片)及混合微電路技術相結合發展起來的一種具有繼電器特性的無觸點式電子開關。它具有壽命長、可靠性高、開關速度快、電磁幹擾小、無噪聲、無火花等特點。固態繼電器有交流和直流兩種。交流型固態繼電器分過零觸發型和隨機導通型。另外,對於大功率低壓直流固態繼電器的輸出開關普遍采用功率場效應管來替代功率三極管,以此來降低輸入功率。
2.數字量輸入輸出接口
根據數據傳輸方式的不同,數字量有並行輸入/輸出和串行輸入/輸出兩種。並行輸入/輸出接口,輸入或輸出的數據都是按一個字或一個字節所包含的全部位數同時並行地傳送。
並行接口數據傳輸的速度快,但使用的數據線多,適用於近距離、高速率傳輸的場合。目前有多種並行輸入/輸出接口集成電路芯片,分為不可編程和可編程兩種類型。
不可編程的並行接口由普通的緩衝器、鎖存器等芯片組成,如74LS373、74LS244/245等,可用作數據輸入鎖存和輸出緩衝等控製。可編程並行接口由可編程接口芯片組成,用戶通過編程選擇接口芯片的工作方式,並設定數據端口控製方式。這種接口具有廣泛的適應性和很高的靈活性。
這類芯片有8255A、8155、8251等。可編程並行輸入/輸出接口的軟件設計主要是可編程芯片的工作方式設定等初始化程序設計。Intel8255A是可編程的並行接口芯片,可以通過軟件來設置芯片的工作方式。利用8255A連接外部設備時,通常不需要附加外部電路,使用起來很方便。
數字量輸入輸出的第二種方式是串行輸入/輸出接口。許多外部設備和計算機之間是按照串行方式進行通信的。也就是說,數據是1位接著1位地進行傳輸。串行通信隻要一根或兩根數據傳輸線就可以實現外部設備與計算機的通信。串行通信傳輸線少,傳輸的距離長,價格低廉,因而得到廣泛的應用,但是串行通信的傳輸速度較慢。
由於計算機輸入和輸出的數據都是以字節或字為單位的並行碼,通過串行口發送數據時需要采用並/串轉換芯片,將並行碼轉換為串行碼。相反,利用串行口接收數據時,要將串行碼轉換為並行碼。在數據的傳輸過程中,串行口還需要具有奇偶檢驗和聯絡信號控製功能。串行接口部件內部有四個主要的寄存器,即控製寄存器、狀態寄存器、數據輸入寄存器和數據輸出寄存器。控製寄存器用來容納CPU送給此接口的各種控製信息,而控製信息決定接口的工作方式。狀態寄存器的各位叫狀態位,每一個狀態位都可以用來指示傳輸過程中的某一種錯誤或者當前傳輸狀態。數據輸入寄存器總是和串行輸入/並行輸出移位寄存器配對使用的。在輸入過程中,數據1位接著1位從外部設備進入接口的移位寄存器,當接收完1個字符以後,數據就從移位寄存器送到數據輸入寄存器,再等待CPU來取走。輸出的情況和輸入過程類似。在輸出過程中,數據輸出寄存器和並行輸入/串行輸出移位寄存器配對使用。當CPU往數據輸出寄存器中輸出1個數據後,數據便傳輸到移位寄存器,然後1位接著1位地通過輸出線送到外設。從原則上說,對這四個寄存器可以通過不同的地址來訪問。但是,控製寄存器和數據輸出寄存器是隻寫的,狀態寄存器和數據輸入寄存器是隻讀的。所以,可以用讀信號和寫信號來區分這兩組寄存器,再用1位地址來區分兩個隻讀寄存器或兩個隻寫寄存器。
串行接口芯片在傳輸數據時,有同步傳輸和異步傳輸兩種方式。采用同步傳輸時,將許多字符組成一個信息組,字符可以一個接一個地傳輸。但是,在每組信息(信息幀)的開始要加上同步字符,在沒有信息要傳輸時,要填上空字符,因為同步傳輸不允許有間隙。采用異步傳輸時,兩個字符之間的傳輸間隔是任意的,所以,每個字符的前後都要用一些數位來作為分隔位。在數據傳輸率相同的情況下,同步傳輸方式下的信息有效率要比異步方式下的高,因為同步方式下的非數據信息比例比較小。但是,從另一方麵看,同步方式下,要求進行信息傳輸的雙方必須用同一個時鍾進行協調,正是這個時鍾確定了同步串行傳輸過程中每1位的位置。這樣一來,如采用同步方式,那麼在傳輸數據的同時,還必須傳輸時鍾信號。而在異步方式下,接收方的時鍾頻率和發送方的時鍾頻率不必完全一樣,隻要比較相近即可。同步傳輸的硬件複雜,而異步傳輸使用靈活、方便,容易實現。因此,異步傳輸方式得到了廣泛的應用。