(57)【要約】【課題】汎用データ入出力部を備えた装置において、この装置に汎用データ入出力部を介して非同期シリアルデータを簡便に入出力することを可能にするとともに、コストを抑える。【解決手段】ＢＳデジタルチューナ１に内蔵されたマイコン２４は、ＢＳデジタルチュ−ナ１及び外部機器４の間の通信速度に基づいて汎用ポート２６の状態をサンプリングすることによって、外部機器４から送信されるデータを１バイトずつ受信してメインＣＵＰ２３に送出する。また、メインＣＰＵ２３から送信対象のデータが入力されると、データの通信速度に基づいて算出した時間の間隔により、汎用ポート２６をＨＩＧＨ又はＬＯＷに設定する。【選択図】　　　図２
2004080328.tif 000002
【特許請求の範囲】
【請求項１】
第１の装置に設けられた汎用データ入出力部を介して入出力されるデータを処理する電子機器において、
前記汎用データ入出力部を介して第２の装置から前記第１の装置に入力される入力データの通信速度を測定し、該通信速度に基づいて前記入力データを１ビットに付き複数回サンプリングするための第１の時間と、前記入力データを１ビットに付き１回サンプリングするための第２の時間とを算出する算出手段と、
前記入力データを前記第１の時間毎にサンプリングすることによりスタートビットを検出する第１の検出手段と、
前記第１の検出手段により検出されたスタートビットに続く実データを前記第２の時間毎にサンプリングして２値データを得る２値データ取得手段と、
前記入力データのうち前記実データに続くデータを前記第１の時間毎にサンプリングすることによりストップビットを検出する第２の検出手段と、
前記第２の検出手段により検出されたストップビットに続くデータの有無を判別する判別手段と、
前記２値データ取得手段により取得された２値データを記憶する記憶手段と、
前記第１の装置から２値化された送信対象データを入力する入力手段と、
前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定した後、前記入力手段に入力された送信対象データのうち、１バイト分のデータについて、その各ビットの２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定する設定手段と、
を備え、
前記第１の検出手段は、更に、前記判別手段により前記ストップビットに続くデータが存在すると判別された場合に、該ストップビットに続くデータを前記第１の時間毎にサンプリングすることによりスタートビットを検出し、
前記第２の検出手段は、更に、前記入力データのうち前記実データに続くデータを前記第２の時間毎にサンプリングしてエラー判定用データを検出するとともに、該エラー判定用データに続くデータを前記第１の時間毎にサンプリングしてストップビットを検出し、
前記算出手段は、更に、前記２値データ取得手段により取得された２値データ及び前記第２の検出手段により検出されたエラー判定用データに基づいて前記２値データにおけるエラーの有無を判定し、該２値データにエラーがないと判別した場合に該２値データを前記記憶手段に記憶させ、
前記判別手段は、更に、前記送信対象データのうち前記１バイト分のデータに続くデータの有無を判別し、
前記設定手段は、更に、前記判別手段により前記１バイト分のデータに続くデータが存在すると判別された場合に、前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定し、次いで前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定し、
前記算出手段は、更に、前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいてエラー判定用の数値を算出し、
前記設定手段は、前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定し、次いで前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記算出手段により算出されたエラー判定用の数値に基づいて前記第２の時間の間ＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定することを特徴とする電子機器。
【請求項２】
第１の装置に設けられた汎用データ入出力部を介して入出力されるデータを処理する電子機器において、
前記汎用データ入出力部を介して第２の装置から前記第１の装置に入力される入力データの通信速度を測定し、該通信速度に基づいて前記入力データを１ビットに付き複数回サンプリングするための第１の時間と、前記入力データを１ビットに付き１回サンプリングするための第２の時間とを算出する算出手段と、
前記入力データを前記第１の時間毎にサンプリングすることによりスタートビットを検出する第１の検出手段と、
前記第１の検出手段により検出されたスタートビットに続く実データを前記第２の時間毎にサンプリングして２値データを得る２値データ取得手段と、
前記入力データのうち前記実データに続くデータを前記第１の時間毎にサンプリングすることによりストップビットを検出する第２の検出手段と、
前記第２の検出手段により検出されたストップビットに続くデータの有無を判別する判別手段と、
前記２値データ取得手段により取得された２値データを記憶する記憶手段と、
を備え、
前記第１の検出手段は、前記判別手段により前記ストップビットに続くデータが存在すると判別された場合に、該ストップビットに続くデータを前記第１の時間毎にサンプリングすることによりスタートビットを検出することを特徴とする電子機器。
【請求項３】
前記第２の検出手段は、前記入力データのうち前記実データに続くデータを前記第２の時間毎にサンプリングしてエラー判定用データを検出するとともに、該エラー判定用データに続くデータを前記第１の時間毎にサンプリングしてストップビットを検出し、
前記算出手段は、前記２値データ取得手段により取得された２値データ及び前記第２の検出手段により検出されたエラー判定用データに基づいて前記２値データにおけるエラーの有無を判定し、該２値データにエラーがないと判別した場合に該２値データを前記記憶手段に記憶させることを特徴とする請求項２記載の電子機器。
【請求項４】
前記第１の装置から２値化された送信対象データを入力する入力手段と、
前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定した後、前記入力手段に入力された送信対象データのうち、１バイト分のデータについて、その各ビットの２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定する設定手段と、
を備え、
前記判別手段は、前記送信対象データのうち前記１バイト分のデータに続くデータの有無を判別し、
前記設定手段は、前記判別手段により前記１バイト分のデータに続くデータが存在すると判別された場合に、前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定し、次いで前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定することを特徴とする請求項２又は３記載の電子機器。
【請求項５】
前記算出手段は、前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいてエラー判定用の数値を算出し、
前記設定手段は、前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定し、次いで前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記算出手段により算出されたエラー判定用の数値に基づいて前記第２の時間の間ＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定することを特徴とする請求項４記載の電子機器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、非同期シリアル通信を行う電子機器に関する。
【０００２】
【従来の技術】
従来、パーソナルコンピュータ等の電子機器には、入出力するデータの種類に応じて、例えば、非同期式シリアル通信用、同期式シリアル通信用、パラレル通信用等の入出力ポートが設けられている。このような電子機器においては、利用頻度を考慮して各ポートの数量が設けられている。このため、例えば非同期式シリアル通信用ポートが一つしか設けられていない場合には、非同期式シリアルデータを送受信する複数の外部機器とは一度に接続することができず、使用する外部機器を変更する際に接続を切り替えなければならず、作業が煩雑であった。また、非同期式シリアル通信用のポートが設けられていない装置においては、非同期シリアルデータの入出力を行うことはできなかった。
【０００３】
そこで、シリアル非同期データ用のポートを持たない装置や、シリアル非同期データ用ポートが他の装置に接続されてふさがっている場合に、シリアル非同期データをパラレルデータに変換してパラレルデータ用ポートから入力する考案として、例えば特開平１１−５５２３１号公報に記載の「シリアルインタフェイス装置」がある。このシリアルインタフェイス装置は、ユーザ端末装置（上記の外部機器に相当）とモデムとの間に介在して、ユーザ端末装置から入力される非同期シリアルデータをＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ　Ａｓｙｎｃｈｒｏｎｏｕｓ　Ｒｅｃｅｉｖｅｒ　Ｔｒａｎｓｍｉｔｔｅｒ）により並列変換し、ＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ　Ｆｉｒｓｔ−Ｏｕｔ）形式で一時蓄積した後、送信速度を調整してモデムに出力する。これにより、ユーザ端末装置から出力された非同期シリアルデータを並列変換してモデムに出力し、モデムを介してシリアル非同期データ用ポートを持たない（又はシリアル非同期データ用ポートが全て他の装置に接続中の）装置のパラレルポートから入力することが可能である。
【０００４】
また、特開平１１−１０２３０８号公報に記載の「デバッガ」は、汎用通信インターフェイスを備えたホスト・システムと専用通信インターフェイスを備えたターゲット・システムとにより構成される。ホスト・システムは、複数組の通信プロトコル及び通信インターフェイス制御ソフトを記憶しており、ターゲット・システム側で設定された専用通信インターフェイス及び通信プロトコルに対応する１組の通信プロトコル及び通信インターフェイスを利用して、ターゲット・システム側との通信処理を確立する。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記の特開平１１−５５２３１号公報によれば、データの送受信を行う装置間に、インターフェイス装置及びモデムを接続しなければならないためこれらの装置の設置コストがかかることや、これらの装置を着脱する手間がかかるという問題があった。
【０００６】
一方、上記の特開平１１−１０２３０８号公報に記載のデバッガによると、複数組の通信プロトコル及び通信インターフェイスを開発するコストが増加するという問題があった。また、ホスト・システムに複数組の通信プロトコル及び通信インターフェイスを格納するため、メモリ容量が増加することや、これに伴って製造コストが増加することが問題であった。
【０００７】
そこで、本発明の課題は、汎用のデータ入出力部を備えた装置において、この装置に汎用のデータ入出力部を介して非同期シリアルデータを簡便に入出力できる低コストな電子機器を提供することである。
【０００８】
【課題を解決するための手段】
以上の課題を解決するために、請求項１記載の発明は、例えば図１及び図２に示すように、第１の装置（例えば、ＢＳデジタルチューナ１）に設けられた汎用データ入出力部（例えば、汎用ポート２６）を介して入出力されるデータを処理する電子機器（例えば、マイコン２４）において、
前記汎用データ入出力部を介して第２の装置（例えば、外部機器４）から前記第１の装置に入力される入力データの通信速度を測定し、該通信速度に基づいて前記入力データを１ビットに付き複数回サンプリングするための第１の時間と、前記入力データを１ビットに付き１回サンプリングするための第２の時間とを算出する算出手段（例えば、ＣＰＵ２４ａ）と、
前記入力データを前記第１の時間毎にサンプリングすることによりスタートビットを検出する第１の検出手段（例えば、ＣＰＵ２４ａ）と、
前記第１の検出手段により検出されたスタートビットに続く実データ（例えば、Ｂｉｔ０〜Ｂｉｔ７）を前記第２の時間毎にサンプリングして２値データ（例えば、シフトレジスタ２４ｂｂ内のデータ）を得る２値データ取得手段（例えば、ＣＰＵ２４ａ）と、
前記入力データのうち前記実データに続くデータを前記第１の時間毎にサンプリングすることによりストップビットを検出する第２の検出手段（例えば、ＣＰＵ２４ａ）と、
前記第２の検出手段により検出されたストップビットに続くデータの有無を判別する判別手段（例えば、ＣＰＵ２４ａ）と、
前記２値データ取得手段により取得された２値データを記憶する記憶手段（例えば、ＲＡＭ２４ｂ）と、
前記第１の装置から２値化された送信対象データを入力する入力手段（例えば、Ｉ／Ｆ２４ｆ）と、
前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定した後、前記入力手段に入力された送信対象データのうち、１バイト分のデータについて、その各ビットの２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定する設定手段（例えば、ＣＰＵ２４ａ）と、
を備え、
前記第１の検出手段は、更に、前記判別手段により前記ストップビットに続くデータが存在すると判別された場合に、該ストップビットに続くデータを前記第１の時間毎にサンプリングすることによりスタートビットを検出し、
前記第２の検出手段は、更に、前記入力データのうち前記実データに続くデータを前記第２の時間毎にサンプリングしてエラー判定用データ（例えば、パリティビット）を検出するとともに、該エラー判定用データに続くデータを前記第１の時間毎にサンプリングしてストップビットを検出し、
前記算出手段は、更に、前記２値データ取得手段により取得された２値データ及び前記第２の検出手段により検出されたエラー判定用データに基づいて前記２値データにおけるエラーの有無を判定し、該２値データにエラーがないと判別した場合に該２値データを前記記憶手段に記憶させ、
前記判別手段は、更に、前記送信対象データのうち前記１バイト分のデータに続くデータの有無を判別し、
前記設定手段は、更に、前記判別手段により前記１バイト分のデータに続くデータが存在すると判別された場合に、前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定し、次いで前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定し、
前記算出手段は、更に、前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいてエラー判定用の数値を算出し、
前記設定手段は、前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定し、次いで前記記憶手段により記憶された送信対象データのうち１ビット分のデータについて、その２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記算出手段により算出されたエラー判定用の数値に基づいて前記第２の時間の間ＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定することを特徴とする。
【０００９】
請求項１記載の発明では、電子機器が、第１の装置の汎用データ入出力部からの入力データをその通信速度に従ってサンプリングして２値化するとともに、送信対象データの２値情報に従って汎用データ入出力部をＨＩＧＨ又はＬＯＷに設定することにより送信対象データを出力するため、第１の装置の汎用データ入出力部を利用して非同期シリアルデータを第１の装置に簡便に入出力することができる。また、エラー判定用データを利用して入力データにおける伝送エラーを検出するとともに、送信対象データにエラー判定用データを付加することができる。更に、第１の装置の構成を変更する必要がないため、コストを抑えることができる。
【００１０】
請求項２記載の発明は、例えば図１及び図２に示すように、第１の装置（例えば、ＢＳデジタルチューナ１）に設けられた汎用データ入出力部（例えば、汎用ポート２６）を介して入出力されるデータを処理する電子機器（例えば、マイコン２４）において、
前記汎用データ入出力部を介して第２の装置（例えば、外部機器４）から前記第１の装置に入力される入力データの通信速度を測定し、該通信速度に基づいて前記入力データを１ビットに付き複数回サンプリングするための第１の時間と、前記入力データを１ビットに付き１回サンプリングするための第２の時間とを算出する算出手段（例えば、ＣＰＵ２４ａ）と、
前記入力データを前記第１の時間毎にサンプリングすることによりスタートビットを検出する第１の検出手段（例えば、ＣＰＵ２４ａ）と、
前記第１の検出手段により検出されたスタートビットに続く実データ（例えば、Ｂｉｔ０〜Ｂｉｔ７）を前記第２の時間毎にサンプリングして２値データ（例えば、シフトレジスタ２４ｂｂ内のデータ）を得る２値データ取得手段（例えば、ＣＰＵ２４ａ）と、
前記入力データのうち前記実データに続くデータを前記第１の時間毎にサンプリングすることによりストップビットを検出する第２の検出手段（例えば、ＣＰＵ２４ａ）と、
前記第２の検出手段により検出されたストップビットに続くデータの有無を判別する判別手段（例えば、ＣＰＵ２４ａ）と、
前記２値データ取得手段により取得された２値データを記憶する記憶手段（例えば、ＲＡＭ２４ｂ）と、
を備え、
前記第１の検出手段は、前記判別手段により前記ストップビットに続くデータが存在すると判別された場合に、該ストップビットに続くデータを前記第１の時間毎にサンプリングすることによりスタートビットを検出することを特徴とする。
【００１１】
請求項２記載の発明では、電子機器が、第１の装置の汎用データ入出力部からの入力データをその通信速度に従ってサンプリングして２値化するため、第１の装置の汎用データ入出力部を利用して非同期シリアルデータを第１の装置に簡便に入出力することができる。また、第１の装置の構成を変更する必要がないため、コストを抑えることができる。
【００１２】
請求項３記載の発明は、請求項２記載の電子機器において、例えば図１に示すように、
前記第２の検出手段は、前記入力データのうち前記実データに続くデータを前記第２の時間毎にサンプリングしてエラー判定用データ（例えば、パリティビット）を検出するとともに、該エラー判定用データに続くデータを前記第１の時間毎にサンプリングしてストップビットを検出し、
前記算出手段は、前記２値データ取得手段により取得された２値データ及び前記第２の検出手段により検出されたエラー判定用データに基づいて前記２値データにおけるエラーの有無を判定し、該２値データにエラーがないと判別した場合に該２値データを前記記憶手段に記憶させることを特徴とする。
【００１３】
請求項３記載の発明では、エラー判定用データを利用することにより、入力データにおける伝送エラーを検出し、伝送エラーが発生していない入力データのみを記憶手段に記憶することができる。
【００１４】
請求項４記載の発明は、請求項２又は３記載の発明において、例えば図２に示すように、
前記第１の装置から２値化された送信対象データを入力する入力手段（例えば、Ｉ／Ｆ２４ｆ）と、
前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定した後、前記入力手段に入力された送信対象データのうち、１バイト分のデータについて、その各ビットの２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定する設定手段（例えば、ＣＰＵ２４ａ）と、
を備え、
前記判別手段は、前記送信対象データのうち前記１ビバイト分のデータに続くデータの有無を判別し、
前記設定手段は、前記判別手段により前記１バイト分のデータに続くデータが存在すると判別された場合に、前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定し、次いで前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定することを特徴とする。
【００１５】
請求項４記載の発明では、送信対象データの２値情報に従って汎用データ入出力部をＨＩＧＨ又はＬＯＷに設定することにより送信対象データを出力するため、第１の装置から汎用データ入出力部を介して非同期シリアルデータを出力することが可能となる。
【００１６】
請求項５記載の発明は、請求項４記載の発明において、
前記算出手段は、前記１バイト分のデータに続く１バイト分のデータについて、その２値情報に基づいてエラー判定用の数値を算出し、
前記設定手段は、前記汎用データ入出力部を前記第２の時間の間ＬＯＷに設定し、次いで前記記憶手段により記憶された送信対象データのうち１ビット分のデータについて、その２値情報に基づいて前記汎用データ入出力部を前記第２の時間毎にＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記算出手段により算出されたエラー判定用の数値に基づいて前記第２の時間の間ＨＩＧＨ又はＬＯＷに設定し、次いで前記汎用データ入出力部を前記第２の時間の間ＨＩＧＨに設定することを特徴とする。
【００１７】
請求項５記載の発明では、エラー判定用データを算出し、このエラー判定用データに基づいて汎用データ入出力部をＨＩＨＧ又はＬＯＷに設定することにより、エラー判定データを送信データに付加することができる。
【００１８】
【発明の実施の形態】
以下に、本発明の具体的な対応について図面を用いて説明する。ただし、発明の範囲を図示例に限定するものではない。なお、以上の請求項及び以下の実施の形態における２値情報とは、２値化されたデータの情報であり、例えば０又は１で示される。
【００１９】
まず、図１を用いて、ＢＳデジタルチューナ１と外部機器４との間で入出力される非同期シリアルデータについて説明する。
図１は、非同期シリアルデータのデータ構成を示す図である。図１に示すように、非同期シリアルデータは、スタートビットと、１バイト分の実データと、パリティビットと、ストップビットとによって構成され、各ビットは２値化されたデータであり、入出力ポートにおいてＨＩＧＨ又はＬＯＷの特性を示す。
【００２０】
スタートビットは、入出力ポートにおいてＬＯＷの特性を示すデータであり、１バイト分の実データの前に配置される。実データはＢｉｔ０〜Ｂｉｔ７の８ビットから成り、各ビットはＨＩＧＨ又はＬＯＷの特性を示す。パリティビットは、実データにおける伝送エラーチェックのためのデータであり、非同期シリアルデータを生成する装置の仕様に応じて任意に付加される。ストップビットは、ＨＩＧＨの特性を示すデータであり、パリティビットがあるときはその後に、ないときは実データの後に付加される。
【００２１】
なお、図１に示すように、非同期シリアルデータの通信速度が９６００ｂｐｓである場合、１ビット幅は１／９６００秒、即ち約１０４μｓｅｃとなる。このため、スタートビット及びストップビットを４０μｓｅｃ毎にサンプリングすることにより、ＬＯＷが２回続けて検出されればスタートビットであり、ＨＩＧＨが２回続けて検出されればストップビットであると判別できる。また、実データ及びパリティビットについては、１００μｓｅｃ間隔でサンプリングすることにより各ビットのＨＩＧＨ／ＬＯＷ特性を検出できる。
【００２２】
次に、本発明を適用した電子機器について説明する。
図２は、本発明を適用した一実施の形態によるＢＳデジタルチューナ１の機能的構成を示す概略ブロック図である。図２に示すように、ＢＳデジタルチューナ１は、テレビアンテナ１１と、チューナ１２と、復調部及びＦＥＣ部１３と、デスクランブラ１４と、デマルチプレクサ１５と、メモリ１６と、番組情報復調部１７、ＯＳＤ処理部１８と、音声デコーダコーダ１９と、映像デコーダ２０と、フレームメモリ２１と、信号変換回路２２と、メインＣＰＵ２３と、マイコン２４と、操作部２５と、汎用ポート２６等を備えて構成される。
【００２３】
テレビアンテナ１１は、デジタル放送の送信局（図示省略）から送信される放送電波を受信する。
【００２４】
チューナ１２は、テレビアンテナ１１により受信された放送電波の中から特定のチャンネルの放送電波を選曲して復調部及びＦＥＣ１３に出力する。
【００２５】
復調部及びＦＥＣ（Ｆｏｒｗａｒｄ　Ｅｒｒｏｒ　Ｃｏｒｒｅｃｔｉｏｎ）部１３は、チューナ１２から入力された放送電波を復調してデジタル放送信号に変換した後、誤り訂正処理を施してデマルチプレクサ１５に出力する。
【００２６】
デスクランブラ１４は、復調及びＦＥＣ部１３により復調されてデマルチプレクサ１５から入力されたデジタル放送信号が視聴契約を要する有料チャンネルの信号であり、不正視聴防止用のスクランブル信号が付加されている場合に、メインＣＰＵ２３からの指示に従ってスクランブル信号を解除し、復号化したデジタル放送信号をデマルチプレクサ１５に出力する。
【００２７】
デマルチプレクサ１５は、デスクランブラ１４から入力される復号化されたデジタル放送信号に含まれる音声映像信号と番組情報とを抽出し、更に音声映像信号からデジタル映像信号及びデジタル音声信号を分離抽出する。次いで、抽出した番組情報を番組情報復調部１７に出力し、デジタル音声信号を音声デコーダ１９に出力し、デジタル映像信号を映像デコーダ２０に出力する。
【００２８】
音声デコーダ１９は、デマルチプレクサ１５から圧縮されたデジタル音声信号が入力されると、アナログ音声信号にデコードしてスピーカ２に出力する。
【００２９】
映像デコーダ２０は、デマルチプレクサ１５から圧縮されたデジタル映像信号が入力されると、このデジタル映像信号をＲＧＢ信号にデコードしてフレームメモリ２１に出力する。
【００３０】
フレームメモリ２１は、映像デコーダ２０から入力されるＲＧＢ信号を１フレーム分格納して、信号変換回路２２に出力する。
【００３１】
信号変換回路２２は、フレームメモリ２１から入力されるＲＧＢ信号を、ビデオ信号にダウンコンバートしてモニタ３に出力する。また、信号変換回路２２は、ＯＳＤ処理部２２から入力される番組案内表データをビデオ信号にダウンコンバートしてモニタ３に出力する。
【００３２】
番組情報復調部１７は、デマルチプレクサ１５から入力される番組情報（ＳＩ；Ｓｅｒｖｉｃｅ　Ｉｎｆｏｒｍａｔｉｏｎ）を復調して、メモリ１６に出力する。
【００３３】
メモリ１６は、不揮発性の半導体メモリにより構成される。メモリ１６には、システムプログラム、当該システムに対応する各種処理プログラム及び各種処理プログラムで処理されたデータ等が記憶されている。具体的には、メモリ１６は、有料チャンネルの視聴契約に関する視聴契約情報、番組情報復調部１７により復調され入力される番組情報、マイコン２４からＣＰＵ２３に入力されてＣＰＵ２３によりパラレル変換されたデータ等を記憶する。
【００３４】
ＯＳＤ（Ｏｎ　Ｓｃｒｅｅｎ　Ｄｉｓｐｌａｙ）処理部１８は、番組情報復調部１７から入力される復調された番組情報をもとに、モニタ３に表示させる番組案内表データを作成して信号変換回路２２に出力する。
【００３５】
メインＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）２３は、メモリ１６に記憶されているシステムプログラムや制御プログラムに従って、ＢＳデジタルチューナ１の各部を集中制御する。また、メインＣＰＵ２３は、操作部２５から入力される指示データに基づく処理を実行するとともに、各種処理の処理結果をメモリ１６内の所定の保存先に保存させる。更に、メインＣＰＵ２３は、外部機器４から受信されてマイコン２４により処理されたシリアルデータが入力されると、パラレルデータに変換後、メモリ１６に出力して記憶させる。
【００３６】
マイコン２４は、汎用ポート２６を介して外部機器４から受信した非同期シリアルデータを１バイトずつ受信してメインＣＰＵ２３に出力する。また、マイコン２４は、メインＣＰＵ２３によって送信対象のデータが入力されると、汎用ポート２６を介して１バイトずつ外部機器４に送信する。
【００３７】
操作部２５は、操作パネルやリモコン（図示省略）等の入力素子を備えている。ユーザがこれらの入力素子を用いてカーソル操作、アイコン指定、数字入力といった操作を行うことによって、番組の再生、停止、録画、予約等の各種処理の実行を指示する指示データが入力され、操作部２５は、入力された指示データをメインＣＰＵ２３に出力する。
【００３８】
汎用ポート２６は、ＢＳデジタルチューナ１とこれに接続される他の装置との間でシリアルデータの送受信を行うための汎用のデータ入出力部であり、ＢＳデジタルチューナ１が外部機器４と接続された場合に、これらの装置間において同期又は非同期のシリアルデータを９６００ｂｐｓの通信速度で送受信する。
【００３９】
ここで、図２のマイコン２４についてより詳細に説明する。
図２に示すように、マイコン２４はＣＰＵ２４ａ、ＲＡＭ２４ｂ、ＲＯＭ２４ｃ、タイマー２４ｄ、カウンタ２４ｅ、Ｉ／Ｆ２４ｆにより構成され、各部は相互にデータの送受信が可能なようにバス２４ｇによって接続されている。
【００４０】
ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）２４ａは、算出手段、第１及び第２の検出手段、２値データ取得手段、判別手段、入力手段及び設定手段であり、ＲＯＭ２４ｃに記憶されているシステムプログラムや各種処理プログラムに従って、ＢＳデジタルチューナ１の各部をマイコン２４を集中制御する。具体的には、ＣＰＵ２４ａは、ＲＯＭ２４ｃから受信処理プログラム、スタートビット検出処理プログラム、１バイトデータ受信処理プログラム、ストップデータ検出プログラム、送信処理プログラム、１バイトデータ送信処理プログラムを読み出して、後述する受信処理ルーチン（スタートビット検出処理、１バイトデータ受信処理、ストップデータ検出処理を含む）及び送信処理ルーチン（１バイトデータ送信処理を含む）を実行して、その処理結果をＲＯＭ２４ｃ内の所定の領域に格納する。
【００４１】
ＣＰＵ２４ａは、受信処理ルーチンにおいて、汎用ポート２６を介して外部機器４から非同期シリアルデータが入力されると、スタートビット検出処理、１バイトデータ受信処理、及びストップデータ検出処理を実行する。
【００４２】
ＣＰＵ２４ａは、スタートビット検出処理において、タイマー２４ｄに４０μｓｅｃをセットし、汎用ポート２６から入力される非同期シリアルデータを４０μｓｅ間隔でサンプリングして、ＬＯＷを２回続けて検出すると、スタートビットを検出したものと判断する。その後、タイマー２４ｄに１００μｓｅｃをセットし、カウンタ２４ｅに８をセットして１バイトデータ受信処理に移行する。
【００４３】
ＣＰＵ２４ａは、１バイトデータ受信処理において、外部機器４からの非同期シリアルデータ入力時における汎用ポート２６の状態（ＬＯＷ又はＨＩＧＨ）を１００μｓｅｃ間隔でサンプリングして検出し、１回のサンプリング結果を１ビットデータとしてシフトレジスタ２４ａに格納し、カウンタ２４ｅに保持された数値を１減算する。カウンタ２４ｅには、予め８がセットされているため、ユーザＩ／Ｆ用ＣＰＵ１４は汎用ポート２６の状態を８回検出して１バイト分のデータを得る。
【００４４】
また、１バイトデータ受信処理において、ユーザＩ／Ｆ用ＣＰＵ１４は、パリティビットの有無を検出し、検出した１バイト分のデータにパリティビットが付加されていれば、１バイト分のデータから算出したパリティとパリティビットが示すパリティとを照合して伝送エラーの有無を検出し、伝送エラーがない場合に、検出した１バイト分のデータをメインＣＰＵ２３に出力することによりメモリ１６に保存する。そして、タイマー２４ｄに４０μｓｅｃをセットしてストップビット検出処理に移行する。
【００４５】
ＣＰＵ２４ａは、ストップビット検出処理において、汎用ポート２６の状態を４０μｓｅｃ間隔でサンプリングして、２回連続してＨＩＧＨ状態を検出すると、ストップビットを検出したものと判断する。
【００４６】
一方、ＣＰＵ２４ａは、ＢＳデジタルチューナ１から外部機器４に非同期シリアルデータを送信する送信処理ルーチンにおいて、送信対象のデータを１バイトずつ送信する１バイトデータ送信処理を実行し、送信対象の全データの送信を完了するまで送信処理を繰り返す。
【００４７】
１バイトデータ送信処理において、ＣＰＵ２４ａは、カウンタ２４ｅに８をセットし、汎用ポート２６を１００μｓｅｃの間ＬＯＷに設定することでスタートビットを送出する。次いで、送信対象のデータに応じて１００μｓｅｃ間隔で汎用ポート２６をＨＩＧＨ又はＬＯＷに設定し、１ビット設定する毎にカウンタ２４ｅの数値を一つ減算する。送信対象の１バイト分のデータの送信を終了してカウンタ２４ｅの数値が０になると、パリティビットを付加する場合には、送信した１バイト分のデータのパリティを算出し、算出結果に応じて汎用ポート２６をＨＩＧＨ又はＬＯＷに設定する。
【００４８】
ＲＡＭ２４ｂは、記憶手段であり、ＣＰＵ２４により実行制御される各種処理において、ＲＯＭ２４ｃから読み出されたプログラム、入力または出力データ及びパラメータ等の一時的な格納領域を形成する。ＲＡＭ２４ｂは、８個のフリップフロップ回路を直列に並べたシフトレジスタ２４ｂｂを格納する。シフトレジスタ２４ｂｂは、ＢＳデジタルチューナ１及び外部機器４の間で送受信される非同期シリアルデータのうち１バイト分の実データを構成する各ビットの２値情報を一時的に記憶する。
【００４９】
ＲＯＭ２４ｃは、不揮発性の半導体メモリによって構成される。ＲＯＭ２４ｃは、システムプログラム、当該システムに対応する各種処理プログラム、及び各種処理プログラムで処理されたデータなどを記憶する。上記各種プログラムは、コンピュータが読み取り可能な形態で格納され、ＣＰＵ２４ａは、当該プログラムコードに従った動作を逐次実行する。なお、具体的には、ＲＯＭ２４ｃは、受信処理プログラム、スタートビット検出処理プログラム、１バイトデータ受信処理プログラム、ストップデータ検出プログラム、送信処理プログラム、１バイトデータ送信処理プログラム等を記憶する。
【００５０】
タイマー２４ｄは、ＣＰＵ２４ａにより設定された時刻を計時する。また、カウンタ２４ｅは、ＣＰＵ２４ａにより設定されたパルス数をカウントする。
【００５１】
Ｉ／Ｆ２４ｆは、入力手段であり、マイコン２４がＣＰＵ２３及び汎用ポート２６とデータの送受信を行うためのインターフェイスである。Ｉ／Ｆ２４ｆは、ＣＰＵ２４ａの指示に従って、シフトレジスタ２４ｂｂに記憶された１バイト分のシリアルデータをメインＣＰＵ２３に出力するとともに、メインＣＰＵ２３から送出される送信対象データをマイコン２４に入力する。一方、汎用ポート２６から非同期シリアルデータを入力し、送信対象データを汎用ポート２６に出力する。
【００５２】
次に、本実施の形態におけるＢＳデジタルチューナ１のＣＰＵ２４ａの動作を説明する。
【００５３】
図３は、図２のＣＰＵ２４ａによる受信処理ルーチンを示すフローチャートである。図３に示すように、ＣＰＵ２４ａは、受信処理ルーチンにおいて、スタートビット検出処理を実行し（ステップＳ１）、次いで１バイトデータ受信処理を実行し（ステップＳ２）、次いでストップデータ検出処理を実行する（ステップＳ３）。続いて、ＢＳデジタルチューナ１が外部機器４から受信した全データの受信処理が完了したか否かを判別し（ステップＳ４）、終了していなければ（ステップＳ４；ＮＯ）、ステップＳ１に戻り、終了していれば（ステップＳ４；ＹＥＳ）、受信処理ルーチンを終了する。
【００５４】
図４は、図３のスタートビット検出処理を示すフローチャートである。図４に示すように、ＣＰＵ２４ａは、タイマー２４ｄに４０μｓｅｃをセットして、４０μｓｅｃ毎のタイマールーチンでスタートビット検出処理を実行する。
【００５５】
スタートビット検出処理において、ＣＰＵ２４ａは、汎用ポート２６がＬＯＷであるか否かを判別し（ステップＳ１１）、ＬＯＷでない場合には（ステップＳ１１；ＮＯ）、そのままスタートビット検出処理を終了し、ＬＯＷであると（ステップＳ１１；ＹＥＳ）、前回のサンプリングでも汎用ポート２６がＬＯＷであり、汎用ポート２６がＬＯＷであることを２回連続して検出したか否かを判別する（ステップＳ１２）。
【００５６】
ＣＰＵ２４ａは、ステップＳ１２において汎用ポート２６がＬＯＷであることを２回連続して検出しない場合には（ステップＳ１２；ＮＯ）、に汎用ポート２６がＬＯＷ状態が一回検出されたことをシフトレジスタ２４ａに記憶して、スタートビット検出処理を一度終了し、次回の処理開始まで待機する。
【００５７】
一方、ＣＰＵ２４ａは、上記ステップＳ１２において汎用ポート２６がＬＯＷであることを２回連続して検出すると（ステップＳ１２；ＹＥＳ）、スタートビットを検出したものと判断して、タイマー２４ｄに１００μｓｅｃをセットし、カウンタ２４ｅに８をセットして（ステップＳ１４）、スタートビット検出処理を終了して１バイトデータ受信処理に移行する。
【００５８】
図５は、図３の１バイトデータ受信処理を示すフローチャートである。図５に示すように、ＣＰＵ２４ａは、パリティビット待機状態であるか否かを判別し（ステップＳ２１）、パリティビット待機状態でなければ（ステップＳ２１；ＮＯ）、汎用ポート２６の状態を検出し、検出結果を１ビットデータとしてシフトレジスタ２４ａに格納するとともに、カウンタ２４ｅを一つ減算する（ステップＳ２２）。
【００５９】
次いで、ＣＰＵ２４ａは、カウンタ２４ｅが０であるか否かを判別し（ステップＳ２３）、タイマカウンタ２４ｅが０ではなければ（ステップＳ２３；ＮＯ）、１バイトデータ受信処理を一度終了して次回の処理開始まで待機し、タイマカウンタ２４ｅが０となっている場合には（ステップＳ２３；ＹＥＳ）、パリティビットの有無を判別する（ステップＳ２４）。
【００６０】
ＣＰＵ２４ａは、上記ステップＳ２４においてパリティビットがあると判別すると（ステップＳ２４；ＹＥＳ）、パリティビット待機状態にセットして、１バイトデータ受信処理を一旦終了する（ステップＳ２５）。一方、パリティビットがないと判別すると（ステップＳ２４；ＮＯ）、シフトレジスタ２４ａに格納した１バイト分のデータをメインＣＰＵ２３に出力するとともに、タイマー２４ｄに４０μｓｅｃをセットしてストップビット検出処理に移行する（ステップＳ２６）。
【００６１】
一方、ＣＰＵ２４ａは、上記ステップＳ２１においてパリティビット待機状態であると判別すると（ステップＳ２１；ＹＥＳ）、シフトレジスタ２４ａに格納した１バイト分のデータのパリティを算出してパリティビットが示す数値と照合するとともに、パリティビット待機状態をクリアにする（ステップＳ２７）。次いで、パリティチェックによりエラーがないと判別されると（ステップＳ２８；ＹＥＳ）、ステップＳ２６に移行し、パリティチェックによりエラーが検出されると（ステップＳ２８；ＮＯ）、パリティエラー処理を実行して（ステップＳ２９）、１バイトデータ受信処理を一旦終了して次回の開始を待機する。なお、パリティエラー処理において、ＣＰＵ２４ａはシフトレジスタ２４ａに一時記憶したデータを消去する。
【００６２】
図６は、図３のストップビット検出処理を示すフローチャートである。図６に示すように、ＣＰＵ２４ａは、４０μｓｅｃ間隔で汎用ポート２６の状態がＨＩＧＨであるか否かを判別し（ステップＳ３１）、ＨＩＧＨではないと判別すると（ステップＳ３１；ＮＯ）、ストップビット検出処理を一時終了して次回の開始まで待機する。
【００６３】
一方、ＣＰＵ２４ａは、ステップＳ３１において汎用ポート２６がＨＩＧＨであることを検出すると（ステップＳ３１；ＹＥＳ）、前回の汎用ポート２６の状態もＨＩＧＨであり２回連続してＨＩＧＨであるか否かを判別し（ステップＳ３２）、前回はＨＩＧＨではない場合には（ステップＳ３２；ＮＯ）、シフトレジスタ２４ａにＨＩＧＨを１回検出したことを記憶し（ステップＳ３３）、ストップビット検出処理を一度終了して次回の処理開始を待機する。
【００６４】
ＣＰＵ２４ａは、上記ステップＳ３２において、前回も汎用ポート２６がＨＩＧＨであり、２回連続してＨＩＧＨを検出すると（ステップＳ３２；ＹＥＳ）、ストップビットを検出したものと判断して（ステップＳ３４）、ストップビット検出処理を終了する。
【００６５】
図７は、図２のＣＰＵ２４ａによる送信処理ルーチンを示すフローチャートである。図７に示すように、ＣＰＵ２４ａは、送信処理ルーチンにおいて、１バイトデータ送信処理を実行し（ステップＳ１０１）、次いで、送信対象のデータのうち未送信データがあるか否かを判別し（ステップＳ１０２９、未送信データが存在すれば（ステップＳ１０２；ＹＥＳ）、ステップＳ１０１に戻り、未送信データが存在しない場合には（ステップＳ１０２）、送信処理ルーチンを終了する。
【００６６】
図８は、図７の１バイトデータ送信処理を示すフローチャートである。図８に示すように、ＣＰＵ２４ａは、１００μｓｅｃのタイムルーチンにより１バイトデータ送信処理を実行する。
【００６７】
１バイトデータ送信処理において、ＣＰＵ２４ａは、スタートビットが未送出であるか否かを判別し（ステップＳ１１１）、未送出の場合には（ステップＳ１１１；ＹＥＳ）、カウンタ２４ｅに８をセットするとともに、汎用ポート２６をＬＯＷに設定することによりスタートビットを送出し、スタートビットを送出済みであることをＲＡＭ２４ｂに記憶して（ステップＳ１１２）、１バイトデータ受信処理を一度終了して次回の開始まで待機する。
【００６８】
ＣＰＵ２４ａは、ステップＳ１１１において、スタートビットが未送出ではないと判別すると（ステップＳ１１１；ＮＯ）、カウンタ２４ｅの数値が０であるか否かを更に判別する（ステップＳ１１３）。ＣＰＵ２４ａは、カウンタ２４ｅが０ではないと判別すると（ステップＳ１１３；ＮＯ）、送信対象のデータに応じて汎用ポート２６をＨＩＧＨ又はＬＯＷに設定してカウンタ２４ｅの数値を一つ減算し（ステップＳ１１４）、１バイトデータ受信処理を一度終了して次回の開始まで待機する。
【００６９】
一方、ＣＰＵ２４ａは、上記ステップＳ１１３においてカウンタ２４ｅの数値が０であると判別すると（ステップＳ１１３；ＹＥＳ）、パリティビットの有無を判別し（ステップＳ１１５）、パリティビットがあれば（ステップＳ１１５；ＹＥＳ）、送出した１バイト分のデータから算出したパリティに基づいて汎用ポート２６をＨＩＧＨ又はＬＯＷに設定して、「パリティビットなし」をＲＡＭ２４ｂに記憶する。
【００７０】
上記ステップＳ１１５において、ＣＰＵ２４ａは、パリティビットがないと判別すると（ステップＳ１１５；ＮＯ）、汎用ポート２６をＨＩＧＨに設定することによってストップビットを送出し（ステップＳ１１７）、１バイトデータ送信処理を終了する。
【００７１】
以上のように、本実施の形態では、ＢＳデジタルチューナ１に内蔵されたマイコン２４は、ＢＳデジタルチュ−ナ１及び外部機器４の間の通信速度に基づいて汎用ポート２６の状態をサンプリングすることによって、外部機器４から送信されるデータを１バイトずつ受信してメインＣＵＰ２３に送出する。また、マイコン２４は、メインＣＰＵ２３から送信対象のデータが入力されると、データの通信速度に基づいて算出された時間の間隔によって、汎用ポート２６をＨＩＧＨ又はＬＯＷに設定する。このため、汎用データ入出力部である汎用ポート２６を利用して、ＢＳデジタルチューナ１において非同期シリアルデータの入出力を行うことができる。
【００７２】
また、ＢＳデジタルチューナ１の構成を変更する必要がないため、コストを抑えることができる。更に、メインＣＰＵ２３は非同期シリアルデータを送受信するための各種処理を行う必要がないため、メインＣＰＵ２３の処理負担を軽減してその処理速度の低下を防止できる。
【００７３】
また、ＢＳデジタルチューナ１と外部機器４との間に、データの送受信を行うためのインターフェイス装置やモデム等を接続する必要がなく、これらの装置の設置コストや着脱の手間を省くことができる。
【００７４】
なお、本発明は、上記実施の形態に限定されることなく、本発明の主旨を逸脱しない範囲において、種々の改良並びに変更を行ってもよい。
例えば、上記実施の形態では、ＢＳデジタルチューナ１にマイコン２４を組み込んだ例を説明したが、マイコン２４を組み込む装置の種類は特に限定されない。例えば、ＰＣ（パーソナルコンピュータ）等にマイコン２４を内蔵して、ＰＣの汎用データ入出力ポートからの非同期シリアルデータの入出力を行うことも勿論可能である。
【００７５】
また、ＣＰＵ２４ａの動作も上記実施の形態に限定されず、例えば、上記実施の形態においては、マイコン２４が処理した外部機器４からの受信データをメインＣＰＵ２３に出力することとしたが、マイコン２４が受信処理したデータをＲＯＭ２４ｃに記憶させ、メインＣＰＵ２３からの指示に従ってマイコン２４からメインＣＰＵ２３に送出してもよい。
【００７６】
【発明の効果】
以上のように、本発明によれば、非同期シリアルデータ用ポートが備えられていない装置や、非同期シリアルデータ用ポートが他の装置に接続されている装置において、この装置の汎用データ入出力部を利用して非同期シリアルデータの入出力を行うことができる。また、本発明の電子機器を介して非同期シリアルデータの入出力を行う第１の装置の構成を変更する必要がなく、コストを抑えることができる。
【図面の簡単な説明】
【図１】非同期シリアルデータのデータ構成を示す図である。
【図２】本発明を適用した一実施の形態によるＢＳデジタルチューナ１の機能的構成を示すブロック図である。
【図３】図２のＣＰＵ２４ａによる受信処理ルーチンを示すフローチャートである。
【図４】図３のタートビット検出処理を示すフローチャートである。
【図５】図３の１バイトデータ受信処理を示すフローチャートである。
【図６】図３のストップビット検出処理を示すフローチャートである。
【図７】図２のＣＰＵ２４ａによる送信処理ルーチンを示すフローチャートである。
【図８】図７の１バイトデータ送信処理を示すフローチャートである。
【符号の説明】
１　テレビ受信装置
２　スピーカ
３　モニタ
４　外部機器
１１　テレビアンテナ
１２　チューナ
１３　復調部及びＦＥＣ部
１４　デスクランブラ
１５　デマルチプレクサ
１６　メモリ
１７　番組情報復調部
１８　ＯＳＤ処理部
１９　音声デコーダ
２０　映像デコーダ
２１　フレームメモリ
２２　信号変換回路
２３　メインＣＰＵ
２４　マイコン
２４ａ　ＣＰＵ
２４ｂ　ＲＡＭ
２４ｂｂ　シフトレジスタ
２４ｃ　ＲＯＭ
２４ｄ　タイマー
２４ｅ　カウンタ
２４ｆ　Ｉ／Ｆ
２４ｇ　バス
２５　操作部
２６　汎用ポート
【図１】
2004080328.tif 000003
【図２】
2004080328.tif 000004
【図３】
2004080328.tif 000005
【図４】
2004080328.tif 000006
【図５】
2004080328.tif 000007
【図６】
2004080328.tif 000008
【図７】
2004080328.tif 000009
【図８】
2004080328.tif 000010