JP5147286B2 - 通信装置 - Google Patents
通信装置 Download PDFInfo
- Publication number
- JP5147286B2 JP5147286B2 JP2007131235A JP2007131235A JP5147286B2 JP 5147286 B2 JP5147286 B2 JP 5147286B2 JP 2007131235 A JP2007131235 A JP 2007131235A JP 2007131235 A JP2007131235 A JP 2007131235A JP 5147286 B2 JP5147286 B2 JP 5147286B2
- Authority
- JP
- Japan
- Prior art keywords
- processing
- microcontroller
- signal
- information
- unit
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Dc Digital Transmission (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
Description
1)BTFSC GPIO,3 ;クロック信号を調べ、すでにLowであれば次の処理をとばす。
2)GOTO 1) ;まだHighであれば1)に戻る
3)BTFSC Data,x ;送信するべき1バイトデータDataのビットxを調べ、0であれば次の処理をとばす。
4)GOTO 9) ;送信するビットが1であれば9)へジャンプ(2サイクル)
5)BTFSS GPIO,3 ;クロック信号を調べ、すでにHighであれば次の処理をとばす
6)GOTO 5) ;まだLowであれば5)に戻る
7)BCF GPIO,5 ;値0を出力する
8)GOTO 12) ;次のビットの処理プロセスへジャンプする(2サイクル)
9)BTFSS GPIO,3 ;クロック信号を調べ、すでにHighであれば次の処理をとばす
10)GOTO 9) ;まだLowであれば9)に戻る
11)BSF GPIO,5 ;1を出力する
12)BTFSC GPIO,3 ;次のビットの処理
実際のプログラムにおいては、送信したビット数やバイト数の監視などのプロセスが加わることになるが、それらは方法によらず共通であるからここでは簡単化のために省略してある。また、このマイクロコントローラにおいて、GOTO命令でジャンプする場合は2サイクルを要し、BTFSSあるいはBTFSCの判定の結果で直後の命令を飛び越す場合もやはり2サイクルを要する。したがって、このプログラムにおいては、クロック信号の判定やり直しのたびに3サイクルを費やすことになる。判定のやり直しなしに処理が進むとすれば1ビットあたりの最短の処理回数は9サイクルとなるが、実際には同期信号の変化Low→HighおよびHigh→Lowのすくなくともどちらかでタイミングの調整による3サイクルが発生する。信号の周波数とマイクロコントローラの処理周波数の関係によっては、両方の段階でタイミングのずれを調整することが生ずるから合計6サイクルが必要となる。したがって1ビット期間に少なくとも12〜15サイクルの処理が可能なように処理周波数を設定する必要がある。パルスの周期を10マイクロ秒(周波数として100kHz)とすれば、すくなくとも1.2MHz〜1.5MHzが必要になる。
1)MOVF GPIO,f ;ポート情報の最新化
2)BCF INTCON,0 ;ポート変化によるスリープからの復帰を可能にする
3)SLEEP ;スリープモードに入る
4)BTFSC Data,x ;スリープモードから復帰し送信するビットを調べる
5)GOTO 8) ;送信ビットが1であるとき8)へジャンプ
6)BCF GPIO,0 ;0を出力
7)GOTO 9) ;次のビット処理プロセスへジャンプ
8)BSF GPIO,5 ;1を出力
9)MOVF GPIO,f ;次のビットの処理
この例では1ビットあたりの処理は8サイクルである。しかしながら、上記した従来の通信装置では、スリープモードからの復帰に一般的に5〜10マイクロ秒の時間を要するので処理時間はプログラムの記述に比べて長くなり、パルス信号の周期が10マイクロ秒以下のような場合には適用できない。(公知・公用の従来技術に基づき発明したため、出願人は本発明に関連する先行技術文献を知らない)。
1)BTFSC GPIO,3 ;クロック信号を調べ、すでにLow(データ信号がHigh)であれば次を飛び越す
2)GOTO $+1 ;2サイクルの遅れを挿入する
3)BTFSC Data,x ;送信するビットの値を調べ、0なら次をとびこす
4)GOTO 7) ;7)へジャンプ
5)BCF GPIO,5 ;値0を出力
6)GOTO 8) ;次のビットの処理プロセスにジャンプ
7)BSF GPIO,5 ;値1を出力
8)BTFSC GPIO,3 ;次のビットの処理
上記のプログラムにおいて1) BTFSC GPIO,3の判定によって次の2) GOTO $+1という命令を飛び越して3) BTFSC Data,xの実行に移る場合には2サイクルが費やされ、一方飛び越さない場合には次の2) GOTO $+1への移行することに伴う1サイクルと、この命令そのものが費やす2サイクルで合計3サイクルを必要とする。3) BTFSC Data,xの時点で、後者の場合は1サイクルを余分に費やしているから、これにより1サイクルの調節が可能となる。このプログラムにおいて1ビットを送信するための処理は最短7サイクル、長い場合でも8サイクルとなる。
GPIO,3でクロック信号がまだHigh(データ信号がLow)であれば、マイクロコントローラ4の処理のタイミングが先行していると判定され、上記プログラムの 2) GOTO $+1 が実行され、2サイクルの遅れが挿入されることになる。逆にクロック信号がすでにLowとなっているならば処理のタイミングが遅れていると判定され 2) GOTO $+1 を飛び越すことにより1サイクルのみが挿入される。このようにマイクロコントローラ4の処理が先行していれば余分の1サイクルが調整のために挿入され、1サイクル分の修正が可能となる。マイクロコントローラ4の処理周波数は1ビットの時間内で7サイクルを上回るように設定されているから1ビットの処理を行うたびに親機からの同期信号に対して位相の進みが蓄積されるが、その結果処理が先行していると判定されればただちに1サイクルが挿入されるが、それにより1サイクル以上の遅れが生ずることはない。一方で8サイクルを処理する周波数よりは低い設定でもあるから1ビットの処理で位相の進みがマイクロコントローラ4の処理の1サイクル分を超えることはない。したがって、上記のようなプログラムとこのような処理周波数の設定を組み合わせれば1ビット毎にタイミングの調整を行う同期送信が可能となる。
1)NOP ;なにもしない空のサイクル
2)BCF GPIO,0 ;1ビット目としてビット値0を出力
3)NOP ;
なにもしない空のサイクル
4)BTFSC GPIO,5 ;タイミングを判定
5)GOTO $+1 ;タイミング調整サイクル
6)BSF GPIO,0 ;2ビット目としてビット値1を出力
7)INCF FSR,f ;次のジャンプ先アドレスを読むため次のRAMアドレスを指定
8)BTFSC GPIO,5 ;タイミングを判定
9)GOTO $+1 ;タイミング調整サイクル
10)BSF ;3ビット目として値1を出力
11)MOVF INDF,w ;次のRAMアドレスの値(次のジャンプ先アドレス)を読み込む
12)BTFSC GPIO,5 ;タイミングを判定
13)GOTO $+1 ;タイミング調整サイクル
14)BCF GPIO,0 ;4ビット目として値0を出力
15)MOVWF PCL ;次の送信パターンのプログラムアドレスへジャンプ(2サイクル)
上記プログラムにおいて、最初の1ビットの処理はタイミング判定なしの3サイクルでおこなわれている。これは単位情報の最後のビットを送信後、次の単位情報の送信に移行するための
15) MOVWF PCL という命令では2サイクルが必要であり、各単位情報の処理の先頭ビットは1サイクルだけ処理が遅れるのでその補償のためタイミング判定を省略し、それによる2サイクルの減少の代わりに空の1サイクルが挿入してあることによる。この例では4ビットに1回タイミング調整が省略されるが、先に述べたように、マイクロコントローラ4の処理周波数を下側限界周波数近くに設定しておけば発生しうる同期ずれの程度は僅かであり実用的には問題とならない。
下側限界周波数 =100kHz * 4 = 0.4MHz
上側限界周波数 =100kHz * 5 = 0.5MHz
となり、マイクロコントローラ4の処理周波数を0.4MHzと0.5MHzの中間に設定することになる。
2 子機
3 整流回路
4 マイクロコントローラ
5 受送信部
Claims (2)
- 親機からパルス信号を受け取り、該パルス信号を駆動電力として利用しながら該パルス信号を振幅変調して返信を行う通信装置において、
該通信装置のコントロールをマイクロコントローラが行い、返信のための送信に際して、該マイクロコントローラで1ビットの情報を処理するために必要な最低処理サイクル数である第1サイクル数と、該第1サイクル数よりも1サイクル多い第2サイクル数とを定めると共に、前記マイクロコントローラの処理周波数を前記第1サイクル数及び前記第2サイクル数に応じてそれぞれ定まる下側限界周波数及び上側限界周波数の間に設定し、1パルス毎に処理の一定のタイミングで親機から受け取る同期信号の高低を調べて処理のタイミングを判定し、該同期信号に対して該マイクロコントローラの処理が先行していると判定した場合は1サイクルの余分のサイクルを挿入し、先行していないと判定した場合は余分のサイクルを挿入しないことによって同期をとるように構成したことを特徴とする通信装置。 - 単位量の情報をその数値に対応した処理パターンで送信するプロセスをあらかじめマイクロコントローラのプログラム中に設けておき、送信に先立って、送信する情報を該単位量の情報に区切ってそれぞれの情報単位の数値に対応する処理パターンのプログラムの開始アドレスを順にメモリに格納しておき、送信時には該メモリから読み出したプログラムアドレスにジャンプして単位の情報の送信を実行したのち処理パターンの一部として設けられたプロセスによって次のメモリアドレスに格納されたプログラムアドレスを読み出してジャンプすることを繰り返して情報を送信するように構成した請求項1に記載の通信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007131235A JP5147286B2 (ja) | 2007-05-17 | 2007-05-17 | 通信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007131235A JP5147286B2 (ja) | 2007-05-17 | 2007-05-17 | 通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008288827A JP2008288827A (ja) | 2008-11-27 |
JP5147286B2 true JP5147286B2 (ja) | 2013-02-20 |
Family
ID=40148151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007131235A Expired - Fee Related JP5147286B2 (ja) | 2007-05-17 | 2007-05-17 | 通信装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5147286B2 (ja) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3302878B2 (ja) * | 1996-03-29 | 2002-07-15 | 東芝テック株式会社 | プリンタ |
JP2005172934A (ja) * | 2003-12-08 | 2005-06-30 | World Network Kk | 交換可能なカートリッジ用の記憶素子 |
JP2005244836A (ja) * | 2004-02-27 | 2005-09-08 | Mitsumi Electric Co Ltd | 通信システム及び通信装置 |
JP2006163143A (ja) * | 2004-12-09 | 2006-06-22 | Canon Inc | 接触型送受信装置 |
-
2007
- 2007-05-17 JP JP2007131235A patent/JP5147286B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008288827A (ja) | 2008-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180196777A1 (en) | Methods to send extra information in-band on inter-integrated circuit (i2c) bus | |
JP4931912B2 (ja) | 信号伝送方法、送受信装置及び通信システム | |
US20140219388A1 (en) | Method and device for sending and receiving data | |
US9001950B2 (en) | Information processing apparatus, serial communication system, method of initialization of communication therefor, and serial communication apparatus | |
CN104679708A (zh) | 通用串行总线装置及所应用的频率校正方法 | |
JP5365132B2 (ja) | 直列信号の受信装置、直列伝送システム、直列伝送方法、直列信号の送信装置 | |
CN112051889A (zh) | I2c总线的时钟频率自适应调整方法、主设备及设备系统 | |
US10476504B1 (en) | Signal interface system and data transmission method thereof | |
JP5147286B2 (ja) | 通信装置 | |
CN105354157A (zh) | 配置iic器件的方法、装置和系统 | |
US9094911B2 (en) | Data communication system, method of optimizing preamble length, and communication apparatus | |
JP2007295021A (ja) | 受信装置及び受信方法 | |
JP2006079621A (ja) | ベースバンドプロセッサと無線周波数集積モジュールとの間のデジタルプログラミングインターフェース | |
EP4207643A1 (en) | Communication method, device, and system, and computer readable storage medium | |
US7039133B2 (en) | Data carrier having means for synchronization with a received data stream | |
US20070104486A1 (en) | Optical network system and device, and method for controlling optical network and device | |
CN112667551B (zh) | 一种基于相位自适应的qspi传输数据的方法及系统 | |
US11018677B1 (en) | Transmission enable signal generation circuit and integrated circuit | |
US20030002589A1 (en) | Serial communication circuit and serial transmitting and receiving system | |
KR100622943B1 (ko) | 자동적으로 타이밍 스펙 제어가 가능한 컨트롤러 및 그타이밍 스펙 제어방법 | |
CN216774748U (zh) | 同步通讯电路及电子设备 | |
CN111077941B (zh) | 一种时钟同步设置方法、设备及存储介质 | |
JP5390428B2 (ja) | 受信機 | |
JP2018191113A (ja) | 通信装置、交換ユニット及び画像形成装置 | |
KR101384334B1 (ko) | 메모리 테스터에서 데이터 및 클록 동기화장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110502 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110913 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111004 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120619 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120813 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121127 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151207 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |