JPS59165125A - Keyboard interface system - Google Patents

Keyboard interface system

Info

Publication number
JPS59165125A
JPS59165125A JP58039326A JP3932683A JPS59165125A JP S59165125 A JPS59165125 A JP S59165125A JP 58039326 A JP58039326 A JP 58039326A JP 3932683 A JP3932683 A JP 3932683A JP S59165125 A JPS59165125 A JP S59165125A
Authority
JP
Japan
Prior art keywords
data
clock
keyboard
line
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP58039326A
Other languages
Japanese (ja)
Other versions
JPH0312728B2 (en
Inventor
鈴木 壽夫
柳 勉
健信 米持
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP58039326A priority Critical patent/JPS59165125A/en
Priority to KR1019830005319A priority patent/KR870000170B1/en
Priority to DE8383112634T priority patent/DE3380042D1/en
Priority to EP19830112634 priority patent/EP0114998B1/en
Priority to CA000448059A priority patent/CA1205206A/en
Priority to BR8401004A priority patent/BR8401004A/en
Priority to AU25274/84A priority patent/AU556911B2/en
Publication of JPS59165125A publication Critical patent/JPS59165125A/en
Priority to SG1590A priority patent/SG1590G/en
Priority to HK18690A priority patent/HK18690A/en
Publication of JPH0312728B2 publication Critical patent/JPH0312728B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 〔技術分野〕 本発明はキーボード・インタフェースに関し、更に詳細
にいえば、ノイズによるキーボード・データの誤伝送を
防止できるようにした直列キーボード・インクフェース
・システムに関する。
TECHNICAL FIELD The present invention relates to keyboard interfaces, and more particularly to a serial keyboard inkface system that prevents erroneous transmission of keyboard data due to noise.

〔背景技術〕[Background technology]

キーボードとデータ処理ユニットの間に1本のデータ線
と1本のクロック線を設け、データ線を介してキーボー
ド出力コードをピント直列に伝送しクロック線を介して
キーボード出力クロック信号き伝送するようにしたキー
ボード・システムが既に提案されている。キーボード出
カコードは先頭のスタート・ビット及びこれに後続する
キー位置を示す8・ピントの直列走査コードよシなる9
ビツト・フレームで伝送される。データ処理ユニットの
側には、データ線及びクロック線に接続された9段の直
列−並列シフト・レジスタが設けられ、受信されたフレ
ームのビットはクロック信号の制御の下に直列−並列シ
フト・レジスタの最下M段から順次にロードされ、最上
位段にスタート・ビットが現われたとき9ビツト・フレ
ームの受信が完了したこと°が示される。直列−並列シ
フト・レジスタの最上位段からのスタート・ピントは割
込み要求金主じ、データ処理ユニットに直列−並列シフ
ト・レジスフ内の走査コードの敗込み処理を要求すると
ともに、取込み処理が終了するまではキーホード・デー
タを伝送できないことをキーボードに合図する。
One data line and one clock line are provided between the keyboard and the data processing unit, and the keyboard output code is transmitted serially through the data line, and the keyboard output clock signal is transmitted through the clock line. Keyboard systems have already been proposed. The keyboard output code is the first start bit, followed by an 8 indicating the key position that follows, and a 9 which is the serial scan code of the focus.
Transmitted in bit frames. On the side of the data processing unit, a nine-stage serial-parallel shift register connected to the data line and the clock line is provided, and the bits of the received frame are transferred to the serial-parallel shift register under the control of the clock signal. The bits are sequentially loaded from the lowest M stages of the 9-bit frame, and when the start bit appears at the most significant stage, it is indicated that the reception of the 9-bit frame is complete. The start focus from the top stage of the serial-parallel shift register causes an interrupt request to request the data processing unit to process the scan code in the serial-parallel shift register, and the acquisition process ends. Signals the keyboard that it cannot transmit keyboard data until then.

このキーボード・システムは1本のデータ線及び1本の
クロック線を用いてキーボード・データを送出できるた
め非常に簡単であシ、また、キーボードはデータ処理ユ
ニットのクロックから独立して自己のクロックのペース
で動作できる利点がある。
This keyboard system is very simple as it can send out keyboard data using one data line and one clock line, and the keyboard has its own clock independent of the data processing unit's clock. It has the advantage of being able to work at a pace.

シカしながらこのキーボード・システムテハ、経済的効
果を上げるために、キーボードとデータ処理ユニットを
接続するケーブルとしてシールドを持たない低コストの
ストレッチ・ケーブルを用いたとき、ノイズによって誤
動作が生じることが判明した。外的擾乱典型的には静電
放電はケーブルニノイズ書パルスに誘起する。ノイズ・
パルスはデータ線及びクロック線の両方に生じうる。し
かしクロック信号の遷移に応答してデータ信号をサンプ
ルする時点と一狭幅のノイズ・パルスとが時間的に一致
する確率は無視し得る程度であシ、実用上問題を生じな
い。
However, in order to improve the economic efficiency of this keyboard system, it was discovered that when a low-cost unshielded stretch cable was used to connect the keyboard and data processing unit, noise caused malfunctions. did. External disturbances typically induce electrostatic discharges into the cable and the noise pulses. noise·
Pulses can occur on both data lines and clock lines. However, the probability that the time point at which the data signal is sampled in response to the transition of the clock signal coincides with the narrow noise pulse is negligible and does not pose any practical problem.

これに対して、クロック線にノイズ・パルスが現われた
場合は、正規のクロック信号の遷移とノイズ・パルスに
よる遷移で・同一データ・ビットが2度サンプルされる
。従ってこの場合は、実際にはキーボードからの1フレ
ームの9ピントの伝送が完了しないうちに直列−並列シ
フト・レジスタに9ピントが受信されたことになシ、キ
ーボードからの9番目のピントが欠落することになる。
On the other hand, when a noise pulse appears on the clock line, the same data bit is sampled twice: one by the normal clock signal and one by the noise pulse. Therefore, in this case, the 9th pint from the keyboard was actually received in the serial-parallel shift register before the transmission of 9 pints of one frame from the keyboard was completed, and the 9th pint from the keyboard was missing. I will do it.

欠落する最後のビットが2進0で、ノイズ・パルスによ
って2度サンプルされるデータ・ピントが2進0の場合
及び最後のビットが2進1で、2度サンプルされるデー
タ・ピントが2進1の場合は2進1の数が変らないため
、パリティ・チェックではこのデータ・エラーを検出で
きない。
If the last bit missing is a binary 0 and the data focus sampled twice by the noise pulse is a binary 0 and if the last bit is a binary 1 and the data focus is sampled twice In the case of 1, the number of binary 1s does not change, so the parity check cannot detect this data error.

このようなノイズ・パルスによるデータ・エラーはシー
ルド付きのケーブルの使用によって回避しつるが、この
ようなケーブルは非常に高価であシ、シールドなしのケ
ーブルでデータ・エラーを回避できるのか望ましい。本
発明はクロック線に現われるノイズ・パルスによって生
じる誤伝送の問題の解決を意図するものである。
Data errors caused by such noise pulses can be avoided by using shielded cables, but such cables are very expensive and it is desirable to avoid data errors with unshielded cables. The present invention is intended to solve the problem of erroneous transmissions caused by noise pulses appearing on the clock line.

〔発明の概要〕[Summary of the invention]

従って本発明の目的は、キーボードとデータ処理ユニッ
トとの間に1本のデータ線と1本のクロック線を設けて
データ線を介してキーホード・データを直列に伝送する
形式のデータ処理計量において、クロック線に生じるノ
イズ・パルスによるキーボード・データの誤伝送を解決
することができるようにした直列キーボード・インタフ
ェース・システムを提供することである。
SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a data processing metrology system in which one data line and one clock line are provided between a keyboard and a data processing unit, and keyboard data is transmitted serially via the data line. An object of the present invention is to provide a serial keyboard interface system capable of solving erroneous transmission of keyboard data due to noise pulses occurring on a clock line.

本発明のキーボード・インタフェース・システムによれ
ば、キーボード・データがデータ処EIユニットの側へ
正しく送信1されたか否かがキーボードとデータ処理ユ
ニットの間で確認される。データ処理ユニットの側では
、クロック信号に応答して受信ピント数をカウントし、
1フレームの予定されたビット数に等しい数だけカウン
トした時、1フレームのキーボード°デーク・ピントの
受信を合図するステータス信号をキーボードに返送する
。ステータス信号はデータ線を介して送られる。
According to the keyboard interface system of the present invention, it is confirmed between the keyboard and the data processing unit whether the keyboard data has been correctly transmitted 1 to the side of the data processing EI unit. On the data processing unit side, the number of received focuses is counted in response to the clock signal,
When it has counted a number equal to the scheduled number of bits for one frame, it sends a status signal back to the keyboard signaling receipt of the keyboard defocus for one frame. Status signals are sent via data lines.

キーボードの側では、1フレームのデータ・ピントの送
信が完了した後にステータス信号が返送されたか否かを
判定し、1フレームのデータ・ピントの送信完了前にス
テータス信号を受取つ;2ときはデータ処理ユニットの
側へ否定応答信号を送信し、送信完了後にステータス信
号を受取ったときは肯定応答信号を送信する。これらの
応答信号はクロック線を介して伝送される。否定応答の
場合、データ処理ユニットの側では前に受信したデータ
に破棄し、キーボードは同一キーボード・データを再伝
送する。本発明はマイクロプロセッサによって好適に実
施される。
The keyboard side determines whether a status signal has been returned after the transmission of one frame of data/focus is completed, and receives the status signal before the transmission of one frame of data/focus is completed; A negative acknowledgment signal is transmitted to the processing unit side, and an acknowledgment signal is transmitted when a status signal is received after the transmission is completed. These response signals are transmitted via clock lines. In case of a negative response, the data processing unit discards the previously received data and the keyboard retransmits the same keyboard data. The invention is preferably implemented by a microprocessor.

次に図面を参照して本発明の良好な実施例について説明
する。第1図は本発明の構成を示したブロック図である
。破線のブロック6はキーボードを示し、破線のブロッ
ク8はデータ処理ユニットを示している。キーボード6
とデータ処理ユニット8は1本のデータ線2及び1本の
クロック線4で接続される。キー走査コード送出手段1
0は押下げられたキーを示す走査コードを含むフレーム
の形で走査出力コードをビット直列にデータ線2へ送出
する。例えば、1つのフレームは先頭のスタート・ビッ
ト及びこれに後続する、キー位置を示す走査コード・ビ
ットよシなる。クロック手段12は直列フレーム・ピン
トの送出と同期して各ビット毎に1つのクロック・パル
スをクロック線4に送出する。カウント手段14はクロ
ック線4に送出されるクロック・パルスをカウントする
Next, preferred embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing the configuration of the present invention. A dashed block 6 represents a keyboard, and a dashed block 8 represents a data processing unit. keyboard 6
and data processing unit 8 are connected by one data line 2 and one clock line 4. Key scanning code sending means 1
0 sends a scan output code bit serially to data line 2 in the form of a frame containing the scan code indicating the pressed key. For example, one frame consists of an initial start bit followed by a scan code bit indicating a key position. Clock means 12 sends out one clock pulse for each bit on clock line 4 synchronously with the sending of the serial frame pins. Counting means 14 count the clock pulses sent on clock line 4.

従って、カウント手段14は送出される直列ピントの数
をカウントする。カウント手段14は1フレームの予定
ビット数に等しい数だけカウントしたときステータス判
定手段16へ送信カウント満了信号TCPを発生する。
Therefore, the counting means 14 counts the number of serial pinpoints sent out. The counting means 14 generates a transmission count expiration signal TCP to the status determining means 16 when it has counted a number equal to the scheduled number of bits of one frame.

一方、キーボード6から送出てれた直列ピント及びクロ
ック・パルスはデータ処理ユニット8の受信部20に与
えられ、受信部20の受信ピントカウント手段22はク
ロック線4の各クロック・パルスに応答して受信ピント
数をカウントし、1フレームの予定ピント数に等しい数
だけカウントしたとき線60によシスデータス送出手段
24へ受信カウント満了信号RCFを発生する。ステー
タス送出手段24は線60の信号RCFに応答し、1フ
レームの直列ピントの受信完了を合図するステータス信
号を線62を介してデータ線2へ印加する。
On the other hand, the serial focus and clock pulses sent from the keyboard 6 are given to the receiving section 20 of the data processing unit 8, and the receiving focus counting means 22 of the receiving section 20 responds to each clock pulse on the clock line 4. The number of received focus points is counted, and when a number equal to the expected number of focus points for one frame is counted, a reception count completion signal RCF is generated to the system data sending means 24 through a line 60. Status sending means 24 is responsive to signal RCF on line 60 and applies a status signal to data line 2 via line 62 signaling completion of reception of one frame of serial focus.

キーボード乙のステータス判定手段16は、1フレーム
の全ピントを送信した後にデータ処理ユニット側かやデ
ータ線2にステータス信号が送られた刀ム否71)、即
ち、カウント手段14かも送信カウント満了信号TCP
を受取った後にステータス信号を受信した刀)、を判定
する。1フレームの送信が完了した後にステータス信号
が来たときステータス判定手段16は線17に介してク
ロック線4に肯定口答信号を発生する。
The status determining means 16 of the keyboard 1 determines whether a status signal is sent to the data line 2 on the data processing unit side after transmitting all the focus of one frame (71), that is, the counting means 14 also receives a transmission count expiration signal. TCP
(the sword that received the status signal after receiving the status signal). When the status signal arrives after the transmission of one frame is completed, the status determining means 16 generates an affirmative answer signal on the clock line 4 via the line 17.

データ処理ユニットのキーボード心答判定手段26は線
33を介してクロック線4を調べ、キーボードからの応
答が肯定応答であるか否定応答である刀為を判定する。
The keyboard response determination means 26 of the data processing unit examines the clock line 4 via line 33 and determines whether the response from the keyboard is an affirmative response or a negative response.

キーボード応答判定手段26は肯定応答を検出したとき
線64によりゲート手段28を付勢し、受信データ・ピ
ントをデータ処理ユニット8の他の処理部(図示せず)
へ取込ませる。
When the keyboard response determination means 26 detects an affirmative response, it energizes the gate means 28 through a line 64 and transfers the received data/focus to another processing section (not shown) of the data processing unit 8.
to be taken into.

キーボード6たもデータ処理ユニット8へのキーボード
・データの伝送期間にクロック線4にノイズ・パルスが
生じたとき受信ピント・カウント手段22は1クロック
期間に2ピント分をカウントし、1フレームの全ピント
の受信完了前に受信カウント満了信号RcFff:発生
する。このときステータス判定手段16はステータス信
号受信時にまだ送信カウント満了信号TCPを受取って
おらず、従って線17を介してクロック線4に否定応答
信号を供給するとともに、線18を介し、てキー走査コ
ード送出手段10及びクロック手段12へ制御信号を供
給し、同じ走査コードを再伝送するように指令する。キ
ーボード応答判定手段26は否定応答を検出したとき線
66にxD受信部20へ信号音発生し、受信デーダと廃
棄して再伝送に備える。
When a noise pulse occurs on the clock line 4 during the transmission period of keyboard data to the keyboard data processing unit 8, the reception focus counting means 22 counts two focus points in one clock period, and counts all the points in one frame. A reception count expiration signal RcFff is generated before the reception of the focus is completed. At this time, the status determining means 16 has not yet received the transmission count expiration signal TCP at the time of receiving the status signal, and therefore supplies a negative acknowledgment signal to the clock line 4 via the line 17, and also sends the key scanning code via the line 18. A control signal is provided to the delivery means 10 and the clock means 12 instructing them to retransmit the same scan code. When the keyboard response determining means 26 detects a negative response, it generates a signal sound on the line 66 to the xD receiving unit 20, discards the received data, and prepares for retransmission.

次に、第2図−第4図を参照して本発明の具体例につい
て説明する。第2図はキーボード6及びデータ処理ユニ
ット8の各々にマイクロプロセッサを用いた具体例を示
している。キーボード6はキー◆マトリクス40、マイ
クロプロセソv(MPU)42、オープン・コレクタ・
ゲート44、46を含み、データ処理ユニット8はオー
プン・コレクタ・ゲート48、D型エンジ・トリガ・ラ
ッチ50、シフト・1/ジスク52、マイクロプロセッ
サ(MPU)541含む。データ線2及びクロック線4
は夫々抵抗を介して+5■電源に接続されている。
Next, specific examples of the present invention will be described with reference to FIGS. 2 to 4. FIG. 2 shows a specific example in which the keyboard 6 and the data processing unit 8 each use a microprocessor. The keyboard 6 has keys ◆matrix 40, microprocessor v (MPU) 42, open collector
Including gates 44 and 46, data processing unit 8 includes an open collector gate 48, a D-type engine trigger latch 50, a shift 1/disk 52, and a microprocessor (MPU) 541. Data line 2 and clock line 4
are connected to the +5■ power supply via resistors, respectively.

MPU42は例えばインテル社の8048マイクロプロ
セツサであシ、キー・マトリクス40との組合せでプロ
グラム可能な自己走査直列キーボードを構成する。MP
U54は例えばインテル社の8086マイクロプロセツ
サである。オープン・コレクタ・ゲー)44.46.4
8は入力が高レベルのとき出力を高レベルにし、入力が
低レベルのとき出力を低レベル(典型的にはアース・レ
ベル)に落″jように働く。オープン・コレクタ・ゲー
トは例えばTexas  Inatruments社発
行の” The TTL Data Book  ”、
第2版、1976年に5N7407として示されている
MPU 42 may be, for example, an Intel 8048 microprocessor, and in combination with key matrix 40 constitutes a programmable self-scanning serial keyboard. M.P.
U54 is, for example, Intel's 8086 microprocessor. Open collector game) 44.46.4
8 acts to make the output high when the input is high, and to drop the output to a low level (typically ground) when the input is low.An open collector gate is used, for example, by Texas Instruments. “The TTL Data Book” published by
Second edition, 1976, designated as 5N7407.

MPtJ42Uオープン・コレクタ・ゲート44を介し
てデータ線を駆動するとともにオープン・コレクタ・ゲ
ート46を介してクロックa4を駆動する。データ線2
をサンプルするために、データ線2はMPU42の入力
端子にも接続されている。
MPtJ42U drives the data line through the open collector gate 44 and drives the clock a4 through the open collector gate 46. data line 2
The data line 2 is also connected to the input terminal of the MPU 42 in order to sample the data.

データ線2及びクロック線4はシフトレジスタ52に接
続される。シフトレジスタ52はクロック・パルスの豆
下シ縁でデータ信号をサンプルし、最下位段から順次シ
フトしなから1フレームのビンiQR込む。この例では
1フレームは先頭のスタート・ビットSB及び後続する
キー位置を示す8ビツト走査コードニジなる。シフトレ
ジスタ52の最下位段はラッチ50のD入力に接続され
る。
Data line 2 and clock line 4 are connected to shift register 52 . The shift register 52 samples the data signal at the bottom edge of the clock pulse and sequentially shifts it from the lowest stage to the bin iQR of one frame. In this example, one frame consists of a start bit SB at the beginning and an 8-bit scan code N indicative of the subsequent key position. The lowest stage of shift register 52 is connected to the D input of latch 50.

ランチ50のクロックC入力はクロック線4に接続され
る。
The clock C input of launch 50 is connected to clock line 4.

シフトレジスタ52の最上[ff段刀為らスタート・ビ
ットが現われたときクロック・パルスの立下9縁でラン
チ50がセットされ、ζ出力を高レベルに、ζ出力と低
レベルにする。ζ出力の低レベルはオープン・コレクタ
・ゲート48の出力−k(氏レベル(アース・レベルノ
に駆動し、従ってデータ線2全低レベルにする。このデ
ータ線低しヘルは1フレームの受信完了を示すステータ
ス信号となるーラツチ50がセットされている間はデー
タ線2はアース・レベルにクランプされる力)ら、キー
ボードはもはやデータ信号全送出できない。
When the start bit appears at the top of the shift register 52, the launch 50 is set at the falling edge of the clock pulse, causing the ζ output to go high and the ζ output to go low. The low level of the ζ output drives the output of the open collector gate 48 to the -k level (ground), thus making data line 2 all low. Since the data line 2 is clamped to ground level while the latch 50 is set, the keyboard can no longer send out the full data signal.

ラッチ50のζ出力の高レベルはMP U 54に割込
み要求音用し、ステータス信号に対するキーボードし答
の判定などの必要な処理をするためのプログラム・ステ
ップを呼出す。ステータス信号に対するキーボード応答
として、MPU427>−らクロック線4に高レベル肯
定し各信号が返されたとき、MPU54はシフトレジス
タの8ビット走査コードA−Hi取込み、ラッチ50及
びシフトレジスタ52をクリア即ちリセットし、割込み
前のプログラム処理に戻る。
The high level of the ζ output of latch 50 signals an interrupt request to MPU 54, invoking a program step to perform the necessary processing, such as determining the keyboard response to the status signal. As a keyboard response to the status signal, the MPU 427>- asserts a high level on the clock line 4, and when each signal is returned, the MPU 54 takes in the 8-bit scan code A-Hi of the shift register, and clears the latch 50 and shift register 52. Reset and return to program processing before the interrupt.

ラッチ50がクリアされるとζ出力が高レベルになり、
オープン・コレクタ・ゲート48はデータ線2を高レベ
ル(+5V)に保つ。データ線高レベル状態はMPU4
2によって検出され、これはキーボードから新たなフレ
ーム・データを送イ言可能であることを表わす。
When latch 50 is cleared, the ζ output goes to high level,
Open collector gate 48 keeps data line 2 high (+5V). Data line high level state is MPU4
2, which indicates that new frame data can be sent from the keyboard.

MPU/112からクロック線4に低レベル否定し各信
号が来たときMPU5.!lはシフトレジスタ52のブ
ータラ取込むことなくランチ50及び7フトレジスタ5
2をクリアし、割込み前のプログラム処理に戻る。
When a low level signal is received from the MPU/112 to the clock line 4, the MPU5. ! l is the launch 50 and 7-ft register 5 without taking in the booter of the shift register 52.
Clear 2 and return to program processing before the interrupt.

第3A図及び第3B図は夫々正常なキーボード・データ
伝送の場合及び誤伝送の場合の動作波形を例示している
。第3A図及び第3B図において、波形(a)はクロッ
ク線4に送出されるクロック・ノくルス全示し、波形(
b)はデータ線2に送出されるデータ信号、波形(C)
はラッチ50のζ出力力)らオープン・コレクタ・ゲー
ト4Bを介してデータ酸に与えられる信号、波形(d)
はMPU42力;データ線2をサンプルするサンプル・
タイミング、波形(e)は割込み後MPU5dがクロッ
ク線4をサンフ“ルするサンプル・タイミング?示して
いる。
FIGS. 3A and 3B illustrate operational waveforms for normal keyboard data transmission and erroneous keyboard data transmission, respectively. In Figures 3A and 3B, waveform (a) shows all the clock pulses sent to clock line 4;
b) is the data signal sent to data line 2, waveform (C)
is the ζ output power of the latch 50) and the signal given to the data acid via the open collector gate 4B, waveform (d)
is the MPU42 power; the sample that samples data line 2;
The timing waveform (e) shows the sample timing when the MPU 5d samples the clock line 4 after the interrupt.

第5A図において、MPU54がキーボード“・データ
を受入れ可能状態になったときMPU54はラッチ50
をクリア即ちりセントし、波形(C)の61に示すよう
にデータ線2t−高レベルにする。
In FIG. 5A, when the MPU 54 is ready to accept keyboard data, the MPU 54 latches the latch 50.
is cleared, or set to a high level as shown at 61 in waveform (C).

MPU42はデータ線2をサンプルし、高レベルにある
かを調べる(第4図のプログラム・フローチャートのス
テップ78)。データ線2が高レベルにあることを確認
すると、データ送信動作に入る。
MPU 42 samples data line 2 to see if it is at a high level (step 78 of the program flowchart of FIG. 4). After confirming that the data line 2 is at a high level, data transmission operation begins.

MPU42は(先頭のスタート・ビットSB)プラス(
後続する8ビツト走査コード)よシなるフレーム・ビッ
ト全ビット直列にデータ線2に送出する。クロック・パ
ルス(a)の高レベル期間及び低レベル期間の好ましい
圃は夫々50μS〜100μs及び25μS〜50μs
であるが、この例では夫々50μS にされている。し
かし高レベル期間及び低レベル期間の1直は重要ではな
い。
MPU42 is (first start bit SB) plus (
The subsequent 8-bit scan code) sends all the frame bits serially to data line 2. The preferred high level period and low level period of clock pulse (a) are 50 μS to 100 μs and 25 μS to 50 μs, respectively.
However, in this example, each time is set to 50 μS. However, one shift of the high level period and the low level period is not important.

データ信号(b)//iシフトレジスタ52においてク
ロック・パルス(a)の立下り縁でサンプルされ取込ま
れる。従ってデータ信jt (b)は少なくともクロ、
ツク・パルス(a)の立下シ縁の時点で有意データ・レ
ベルを持つ必要がある。この例では各ビットはクロック
・パルスの立上り縁の前及び立下シ縁の後に夫々2.5
μsの有意データ・レベル期間を持つようにされている
が、立下り縁でサンプルする場合に重要なことはクロッ
ク・パルスの立下シ縁で有意データ・レベルを持つこと
である。
Data signal (b) //i is sampled and captured in shift register 52 on the falling edge of clock pulse (a). Therefore, the data signal jt (b) is at least black,
It is necessary to have a significant data level at the falling edge of pulse (a). In this example, each bit has 2.5 digits before the rising edge and 2.5 digits after the falling edge of the clock pulse.
When sampling on the falling edge, it is important to have a significant data level on the falling edge of the clock pulse.

また、データ処理ユニットからのステータス信号を検出
するためには、MPU12は少なくともデータ線サンプ
ル時点においてデータ線を高レベルにする必要がある。
Furthermore, in order to detect the status signal from the data processing unit, the MPU 12 needs to set the data line to a high level at least at the data line sample time.

もしMPU42がサンプル時点でデータ@2を低レベル
(アース・レベル)に駆動していると、データ線2はフ
ラングされ、ラッチ50のQ出力の状態を正しく検出で
きないことになる。そのため、MPUは波形(b)の6
0に示すように、送信されるビットがII 1 $1で
あるか“0#であるかに関係なく、名クロック周期の後
半に所定期間だけデータ@2を高レベルにし、この高レ
ベル期間にMPU42はデータ線2をサンプルする。こ
のρむでは各クロック・パルスの立下り縁から2.5μ
s 経過した陵高レベルにされる。
If MPU 42 were to drive data@2 to a low level (ground level) at the sample time, data line 2 would be flagged and the state of the Q output of latch 50 would not be detected correctly. Therefore, the MPU is 6 in waveform (b).
As shown in Figure 0, regardless of whether the bit to be transmitted is II 1 $1 or “0#,” data @2 is set high for a predetermined period in the second half of the clock period, and during this high level period, MPU 42 samples data line 2, which is 2.5μ from the falling edge of each clock pulse.
s It is set to the elapsed level of Ryodaka.

なお、図では便宜上データ信号(b)及びラッチ50の
Q出力(e)は別々に示されているが、データ@2には
波形(b)及び波形(C)の高レベルの論理ANDが現
われる。
Note that in the figure, the data signal (b) and the Q output (e) of the latch 50 are shown separately for convenience, but a high-level logical AND of the waveform (b) and waveform (C) appears in data @2. .

従ってMPU42は、プログラム・ステップにおいては
、第4図のステップ78でデータ線高レベル全確認する
と、データ線2に1ビツト(最初はスタート・ビットS
B)′fr:F:n加しく第4図のステップ80L2.
5μsの後クロック線4を高レベル期間しくステップ8
2)、クロック線A k 低レベルにしくステップ84
)、2.5μsの後にデータ線2を高レベルにする(ス
テップ86)。MPU42は各クロック・サイクル毎に
データ@2をサンプルしくステップ88)、データ処理
ユニットからステータス信号が送られたかヲ調べる(ス
テップ90)。ステータス信号が検出されなかったとき
はステップ80に戻り、ビット送信動作を繰返す。
Therefore, in the program step, when the MPU 42 confirms that all the data lines are at high level in step 78 of FIG.
B)'fr:F:n In addition, step 80L2. of FIG.
After 5 μs, set the clock line 4 to high level for a period of 8 seconds.
2) Set the clock line A k to low level step 84
), 2.5 μs later, data line 2 is brought high (step 86). MPU 42 samples data @2 every clock cycle (step 88) and checks to see if a status signal has been sent from the data processing unit (step 90). If no status signal is detected, the process returns to step 80 and the bit transmission operation is repeated.

1フレームの9ビツトがシフトレジスタ52に取込まれ
、スタート・ビットSBがシフトし/ラスタ52の最上
位段に現われると、クロック・サイクル9のクロック・
パルスの立下り縁でランチ50がセントサれてQ出力が
低レベルになシ、データ線2に低レベル・ステータス信
号を送出する(波形(c)の62)。受信ビット・カウ
ント動作及びステータス信号送出動作は夫々シフトレジ
スタ52及びランチ50によってハードウェアで行なわ
れるため、第4図ではこれらの動作は破線のブロック1
02及び106で区別して示されている。
When the 9 bits of one frame are loaded into the shift register 52 and the start bit SB is shifted/appears at the top of the raster 52, the clock signal of clock cycle 9 is
At the falling edge of the pulse, the launch 50 is sent out and the Q output goes low, sending out a low level status signal to the data line 2 (62 in waveform (c)). Since the receive bit counting operation and the status signal sending operation are performed in hardware by the shift register 52 and the launch 50, respectively, these operations are performed by the broken line block 1 in FIG.
02 and 106 are shown separately.

MPtJ12はクロック・サイクル9のサンプル ・で
ステータス信号を検出する。この場合MPU42は送信
カウント−9の状態−0ち1フレームの送信完了後にス
テータス信号全検出するから、これは正しい伝送を表わ
し、MPU12は波形(a)の64のようにクロック・
サイクル9に続いてクロック線4′t−高レベルにする
(第4図のステップ94)。
MPtJ12 detects the status signal at sample 9 of clock cycle 9. In this case, since the MPU 42 detects all the status signals after the transmission count is -9 and the transmission of one frame is completed, this indicates correct transmission, and the MPU 12 receives the clock signal as shown in waveform (a) 64.
Following cycle 9, clock line 4't- is brought high (step 94 in FIG. 4).

これは肯定応答を表わす。This represents an acknowledgment.

ラッチ50がセットされたときQ出力はMP[J54に
割込みを要求しく第4図のステップ104)、MPU5
.41はこれに応答して、ステータス信号に対するキー
ボード応答41べるために波形(、)の如く割込みから
所定時間の陵にクロック線4をプンプルしく第4図のス
テップ108 )、高レベルかどうかを判定する(ステ
ップ110)。この場合は高レベルが検出はれ、MPU
54はシフトレジスタ52の走査コードA−H?l−取
込み(ステップ112)、Lかる後ラッチ50及びシフ
トレジスタ52をクリアして(ステップ114)Q出力
分高レベルにし、キーボードにキーボード・データ送信
可能状態を通知する〜そして、MP U 54はリター
ン動作により割込み前のプログラムに戻る(ステップ1
16)。
When the latch 50 is set, the Q output requests an interrupt to the MP[J54 (step 104 in FIG. 4), and the MPU5
.. In response to this, the keyboard response 41 to the status signal is output by pulsing the clock line 4 at a predetermined time period from the interrupt as shown in the waveform (,) (step 108 in FIG. 4) and determining whether the level is high. A determination is made (step 110). In this case, a high level is detected and the MPU
54 is the scanning code A-H? of the shift register 52. After L is taken in (step 112), the latch 50 and shift register 52 are cleared (step 114), and the Q output is set to a high level, and the keyboard is notified that the keyboard data can be sent. Return operation returns to the program before the interrupt (Step 1
16).

第3B図はクロック・サイクル5の期間にクロック・パ
ルス(a)にノイズ・パルス66が現われた場合を例示
している。静電放電によるノイズ・パルスは正負両極性
で生じつるが、クロック低の期間はクロック線4はアー
ス・レベルにクランプされるため、クロック低の期間の
正ノイズ・パルスは吸収され実際上はとんど問題を生じ
ない。問題なのはクロック高の期間の負ノイズ・パルス
である。
FIG. 3B illustrates the case where a noise pulse 66 appears on clock pulse (a) during clock cycle 5. Noise pulses due to electrostatic discharge can occur in both positive and negative polarities, but since clock line 4 is clamped to ground level during the clock low period, positive noise pulses during the clock low period are absorbed and are effectively ignored. It doesn't cause any problems. The problem is the negative noise pulse during the clock high period.

この場合シフトレジスタ52は1つのクロック期間に2
つの立下シ縁で2度データをサンプルする。従ってスタ
ート・ビットSB[クロック・サイクル8でシフトレジ
スタ52の最上位段に現われ、クロック・サイクル8で
低レベル・ステータス信号をキーボードに返す(波形(
c)の70)。このステータス信号はクロック・サイク
ル8でMPU42によってサンプルされる。このとき送
信カウントN9であって、送信未完了であるから、MP
、U42は波形(a)の68のようにクロック・サイク
ル8に続いてクロック線2を低レベルにする(第4図の
ステップ98)nこれは否足旧答を表わす。割込みから
所足時間後MPU54はクロック線4をサンプルしてこ
の低レベルを検出する。MPU54はシフトレジスタ5
2のデータを取込むことなくラッテ50及びシフトレジ
スタ52をクリアしくステップ118)、リターン・ス
テップに、ful1割込み前のプログラム処理に戻り(
ステップ12n)、再伝送によって再び割込みかがけら
れるまで別の処理を続ける。MPU42は再伝送の準備
をしくステップ100)、ステップ78でデータ線高レ
ベルを確認した後同じ走査コードを再伝送する。
In this case, the shift register 52 has two shifts in one clock period.
Sample the data twice on each falling edge. Therefore, the start bit SB [appears at the top of shift register 52 in clock cycle 8 and returns a low level status signal to the keyboard in clock cycle 8 (waveform (
c) 70). This status signal is sampled by MPU 42 on clock cycle 8. At this time, the transmission count is N9 and the transmission is not completed, so MP
, U42 drives clock line 2 low following clock cycle 8 (step 98 in FIG. 4) as shown at 68 in waveform (a), which represents a no answer. A sufficient time after the interrupt, MPU 54 samples clock line 4 to detect this low level. MPU54 is shift register 5
Clear the latte 50 and shift register 52 without taking in the data of step 2 (step 118), and return to the program processing before the ful1 interrupt in the return step (step 118).
Step 12n) continues another process until interrupted again by a retransmission. The MPU 42 prepares for retransmission (step 100), and after confirming the data line high level in step 78, retransmits the same scan code.

静電放電によるノイズ・パルスの持続時間は1O−10
0ns 程度であシ、また経験によると少なくとも10
m5  以上の間隔で生じる。この間隔に(1フレーム
の伝送時間)プラス(ステータス検出/応答/再伝送)
に要する時間よシも相当長く、再伝送によって再び誤伝
送が検出されることはほとんど生じない。
The duration of the noise pulse due to electrostatic discharge is 1O-10
It should be about 0 ns, and according to experience it should be at least 10 ns.
Occurs at intervals of m5 or more. This interval plus (1 frame transmission time) plus (status detection/response/retransmission)
The time required for this is quite long, and it is almost impossible for an erroneous transmission to be detected again due to retransmission.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の構成を示すブロック図、第2図は本発
明の実施列を示す図、第6A図及び第3B図は夫々正常
な伝送の場合及び誤伝送の場合の動作を例示する波形図
、第4図は第2図の実施レリにおけるプログラム・フロ
ーチャートである。 出願人インターナンタナノL/−ヒ榔ス・マシーンズ・
コーオし−シ田ン第1図 第3A図
FIG. 1 is a block diagram showing the configuration of the present invention, FIG. 2 is a diagram showing an implementation sequence of the present invention, and FIGS. 6A and 3B illustrate operations in the case of normal transmission and in the case of erroneous transmission, respectively. The waveform diagram and FIG. 4 are program flowcharts in the implementation of FIG. 2. Applicant Internanta Nano L/-Hisaku Machines
Figure 1 Figure 3A

Claims (1)

【特許請求の範囲】 キーボードとデータ処理ユニットとを、・キーボード・
クロック信号を伝送するクロック線とキーを表わすキー
走査コードを含む直列フレーム・ビラトラ前記クロック
信号と同期して直列に伝送するデータ線とを介して接続
したデータ処理装置のためのキーボード・インタフェー
ス・システムにして、 前記データ処理ユニットと関連して設けられ、 ゛前記
クロック信号に応答して受信ビット数をカウントするカ
ウント手段と、前記データ処理ユニットと関連して設け
られ、前記カウント手段が1フレームの予定ビット数に
等しい数だけカウントしたことに応答して、1フレーム
のビットの受信を示すステータス信号を前記データ線に
印加する手段と、前記キーボードと関連して設けられ、
1フレームの鍵が完了する前に前記ステータ・ス信号を
受は取ったとき前記クロック線に否定応答信号を印加す
る手段と、前記キーボードと関連して設けられ、前記否
定応答信号に応答して同一フレームのキー走査コードを
再伝送する手段とを有する直列キーボード・インクフェ
ース・システム。
[Claims] A keyboard and a data processing unit,
A keyboard interface system for a data processing device connected via a clock line transmitting a clock signal and a data line transmitting serially in synchronization with said clock signal, a serial frame viratra containing a key scanning code representing a key. and, provided in association with the data processing unit, a counting means for counting the number of received bits in response to the clock signal; means for applying a status signal to the data line indicative of receipt of a frame of bits in response to counting a number equal to a predetermined number of bits;
means for applying a negative acknowledgment signal to the clock line when the status signal is received before one frame of keys is completed; and means associated with the keyboard and responsive to the negative acknowledgment signal; and means for retransmitting key scan codes of the same frame.
JP58039326A 1982-12-28 1983-03-11 Keyboard interface system Granted JPS59165125A (en)

Priority Applications (9)

Application Number Priority Date Filing Date Title
JP58039326A JPS59165125A (en) 1983-03-11 1983-03-11 Keyboard interface system
KR1019830005319A KR870000170B1 (en) 1983-03-11 1983-11-09 Keyboard interface system
DE8383112634T DE3380042D1 (en) 1982-12-28 1983-12-15 Serial keyboard interface system
EP19830112634 EP0114998B1 (en) 1982-12-28 1983-12-15 Serial keyboard interface system
CA000448059A CA1205206A (en) 1983-03-11 1984-02-22 Keyboard interface system
BR8401004A BR8401004A (en) 1983-03-11 1984-03-01 KEYBOARD INTERFACE DEVICE
AU25274/84A AU556911B2 (en) 1983-03-11 1984-03-05 Keyboard
SG1590A SG1590G (en) 1982-12-28 1990-01-10 Serial keyboard interface system
HK18690A HK18690A (en) 1982-12-28 1990-03-08 Serial keyboard interface system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58039326A JPS59165125A (en) 1983-03-11 1983-03-11 Keyboard interface system

Publications (2)

Publication Number Publication Date
JPS59165125A true JPS59165125A (en) 1984-09-18
JPH0312728B2 JPH0312728B2 (en) 1991-02-20

Family

ID=12549968

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58039326A Granted JPS59165125A (en) 1982-12-28 1983-03-11 Keyboard interface system

Country Status (5)

Country Link
JP (1) JPS59165125A (en)
KR (1) KR870000170B1 (en)
AU (1) AU556911B2 (en)
BR (1) BR8401004A (en)
CA (1) CA1205206A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ214078A (en) * 1984-11-10 1988-08-30 Int Computers Ltd Keyboard subset powered by standby source during mains failure

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5831431A (en) * 1981-08-12 1983-02-24 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Interface circuit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5831431A (en) * 1981-08-12 1983-02-24 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Interface circuit

Also Published As

Publication number Publication date
BR8401004A (en) 1984-10-16
CA1205206A (en) 1986-05-27
KR870000170B1 (en) 1987-02-13
JPH0312728B2 (en) 1991-02-20
AU556911B2 (en) 1986-11-27
AU2527484A (en) 1984-09-13
KR840008188A (en) 1984-12-13

Similar Documents

Publication Publication Date Title
DE69020150T2 (en) ERROR CORRECTION FOR INFRARED DATA TRANSMISSION.
US6275526B1 (en) Serial data communication between integrated circuits
US4539677A (en) Multiple access data communication system
JP2641999B2 (en) Data format detection circuit
US4644497A (en) Serial keyboard interface system with frame retransmission after non-timely acknowledgements from data processor
JPH0686093A (en) Apparatus for detection of odd-numbered/ even-numbered field of image signal
US4454601A (en) Method and apparatus for communication of information and error checking
JPS59165125A (en) Keyboard interface system
US4675545A (en) Wave shaping apparatus for eliminating pulse width distortion
EP0114998B1 (en) Serial keyboard interface system
JPH0530115A (en) Polling system
JPH06204989A (en) Data communication equipment
JP2533228B2 (en) Operation unit control device
JPS5853249A (en) Data transmitter and receiver
JPS6318837A (en) Transmission data confirming device
JPH06243052A (en) Serial communication error processing method
JPS588783B2 (en) Data check method
JPH04267631A (en) Parity bit addition system
SU1525722A1 (en) Device for monitoring ttransmission of radio-telegraph operator
JPS5869147A (en) Data transmission system
JPS59176812A (en) Serial data input device
JPS6342534A (en) Communication system
JPH01149546A (en) System for correcting data transferring error
JPS6025351A (en) Automatic baud rate generating system of serial input/output interface
JPS63287131A (en) Method and equipment for arq communication by majority decision decoding method