型 番 :7SEG-DISP2 REV.1.00 7SEG-DISP2ユーザーズガイド SPI 通 信 式 4 桁 2 行 7セグメントLEDユニット 1~3はMOSI 線 の 設 定 4~6はSCK 線 の 設 定 7~8はCS 線 の 設 定 取 扱 説 明 書 お 使 いになる 前 にこの 説 明 書 をよくお 読 みの 上 正 しくお 使 いください (C)2014 マイクロテクニカ ディップスイッチの 各 スイッチをON 位 置 にした 時 に 接 続 され コネク タのピン 番 号 との 対 応 は 下 表 の 通 りです モジュール 本 体 ピンアサイン 設 定 ディップスイッチ パッケージの 内 容 同 梱 物 7SEG-DISP2 本 体 8 桁 7セグメントLED テ ィッフ スイッチの 番 号 コネクタのピン 1 6 MOSI 線 2 4 3 6 4 4 SCK 線 5 7 6 8 7 1 C S 線 8 2 Vcc (+5V) 9 GND 10 当 方 販 売 中 の 各 種 PIC 開 発 統 合 評 価 ボードシリーズをお 持 ちの 方 は 評 価 ボードの 右 側 にある10ピンヘッダに 直 接 7SEG-DISP2を 接 続 できます 電 源 の 接 続 と インターフェイスピンの 接 続 フラットケーブルのピンアサインとディップスイッチ 7SEG-GISP2には 本 体 から10ピンのフラットケーブルが 延 びてい ます ケーブルの 先 には10ピンヘッダピン 用 のメスコネクタが 装 着 さ れています ピンアサインは 基 板 上 のディップスイッチによって 切 り 替 えられるようになっています ディップスイッチの 設 定 とピンアサインについて 下 表 にまとめます 電 源 電 圧 の 接 続 7SEG-DISP2の 電 源 電 圧 は+5Vです 許 容 範 囲 は±5%です リプ ルやノイズが 重 畳 していない 品 質 のよい 電 源 をご 使 用 ください 消 費 電 流 は LED 無 点 灯 時 が 約 50μA LED 全 点 灯 時 で 約 250mA 程 度 です 余 裕 を 持 った 電 源 をご 使 用 ください 電 源 ピンは フラットケーブル 先 端 のメスコネクタの9ピンと10ピン です 9ピンがVcc(+5V) 10ピンがGNDです GND +5V フラットケーブル 先 端 のコネクタを 下 から 見 た 場 合 のピン 番 号 ディップスイッチは データ 線 のMOSI SCK CSの3 線 を 上 記 コネク タのどのピンに 接 続 するかを 設 定 します 無 点 灯 時 から 全 点 灯 時 に 以 降 する 際 いっきに 電 流 が 流 れますので 瞬 間 的 な 電 圧 降 下 や 他 の 回 路 への 影 響 を 抑 える 目 的 で VccピンとGN D 間 に100μA 程 度 の 電 解 コンデンサを 入 れると 回 路 網 への 影 響 を 低 減 できます SPI 通 信 線 の 接 続 SPI 通 信 はクロック 同 期 式 の 通 信 で データはクロック 信 号 に 同 期 さ せながら 送 信 します 受 信 側 はクロック 信 号 の 立 ち 上 がりで 信 号 を 読 みます 7SEG-DISP2では 7SEG-DISP2 側 (スレーブ 側 )からマスター 側 1
(マイコン 等 )へのデータ 送 信 は 行 いませんので ホスト 側 からスレーブ 側 (7SEG-DISP2 側 )へデータを 送 信 するだけです よって MOSI 線 (Mater Out Slave In)と クロックのSCK 線 チップセレクトのCS 線 の 3 線 で 通 信 を 行 います ロジック 信 号 の 電 圧 レベルは TTLレベルで0V-5Vの5Vp-pです 5V 系 マイコンなどと 直 結 して 使 用 できます ハードウエアUSART 機 能 搭 載 のPICマイコンと 接 続 する 場 合 には P ICマイコンのSDOピンにMOSI 線 SCKピンにSCK 線 を 接 続 します CS 線 は ソフトウエアで 処 理 しますので 適 当 なピンと 接 続 します 下 記 にP IC16F887と 接 続 した 場 合 の 参 考 例 を 記 載 しました SPIインターフェイスについて SPI 通 信 は 本 来 MOSI MISO SCL SS(CS)の4 線 でクロック 同 期 式 の 通 信 を 行 う 方 法 です MOSIはマスターアウトスレーブイン MISOは マスターインスレーブアウトの 略 です SPI 通 信 では 常 にマスター 側 のデバイスがクロックを 発 生 させて そ のクロックに 同 期 して 通 信 を 行 います 7SEG-DISP2では マスターか らデータやコマンドを 出 力 して スレーブすなわち7SEG-DISP2が 受 信 するという 片 方 向 の 通 信 ですので MOSIとSCL CSの3 線 で 通 信 を 行 うことになります 下 図 はマスター 機 器 (PICマイコン 等 )から0x09を 7SEG-DISP2 側 に 送 信 した 場 合 の 波 形 を 観 察 したものです 上 記 の 例 では クロックは1サイクル6μsなので 約 166.6KHzのクロッ ク 周 波 数 となっています 上 図 は 7SEG-DISP2のディップスイッチ 1 番 4 番 7 番 をON 位 置 に 設 定 した 場 合 の 例 です 7セグディスプレイの 桁 指 定 番 号 SPI 通 信 は クロック 同 期 式 なので 厳 密 な 通 信 速 度 の 管 理 は 必 要 あ りません ただしクロック 幅 や 立 ち 上 がり 時 間 ラッチアップ 時 間 は 最 小 時 間 が 決 められています タイミングチャートを 下 記 に 示 します 7SEG-DISP2の 桁 指 定 は 上 図 の 通 りとなっています 例 えば 上 の4 桁 を 使 う 場 合 には 千 の 位 が8 番 一 の 位 が5 番 となります SPI 通 信 で 桁 数 指 定 する 時 には 上 記 の 番 号 を 使 います 2
レジスタマップとデータ レジスタマップ レジスタは 12 個 あり アドレス1~8までは 7セグメントLEDの 各 桁 を 制 御 するためのレジスタとなっています 9~12までは 輝 度 調 整 や デコードモードの 設 定 など 本 体 の 動 作 に 関 する 設 定 を 行 うレジスタと なっています 16ビット 長 のデータフォーマットで 上 位 8ビットでアドレスを 指 定 し 下 位 8ビットでそのアドレスにセットする 値 を 送 ります 下 表 はレジスタアドレスマップです クロック 周 波 数 は 最 小 値 が100nsですので 最 高 10MHzまで 対 応 し ているということになります 最 大 値 はありませんのでスピードが 遅 い 分 には 問 題 になりません そのほかは 一 般 的 なSPI 通 信 の 仕 様 に 準 じます なお 7SEG-DISP 2のシリアルデータのフォーマットは16ビットですので 8ビットのデー タ 列 を 続 けて 送 信 します ( 一 般 的 な 開 発 言 語 はデータ 長 は8ビットで すので 続 けて2バイトデータを 送 信 します ) データの 送 り 方 としては CS 信 号 線 がLレベルになって25ns 以 上 時 間 が 経 過 してから クロック 信 号 の 立 ち 上 がりエッジでデータ 信 号 の 状 態 を 読 み 込 みます データを 送 信 し 終 えたら CS 信 号 線 をHにします が その 時 の 立 ち 上 がりでデータはラッチアップされます よって CS 線 は16ビット 目 のクロック 信 号 の 後 にHにする 必 要 があります データはMSB 先 頭 で D15から 順 番 に 受 信 されます データフォーマット データフォーマット 7SEG-DISP2のデータフォーマットは16ビット 長 です 上 位 4ビット は 使 用 しませんので0000とします 下 位 8ビットはデータです アドレス レジスタ D15 16 進 ~D12 D11 D10 D9 D8 コード ディジット0(1 桁 目 ) 0 0 0 1 0x1 ディジット1(2 桁 目 ) 0 0 1 0 0x2 ディジット2(3 桁 目 ) 0 0 1 1 0x3 ディジット3(4 桁 目 ) 0 1 0 0 0x4 ディジット4(5 桁 目 ) 0 1 0 1 0x5 ディジット5(6 桁 目 ) 0 1 1 0 0x6 ディジット6(7 桁 目 ) 0 1 1 1 0x7 ディジット7(8 桁 目 ) 1 0 0 0 0x8 デコードモード 1 0 0 1 0x9 輝 度 調 整 1 0 1 0 0xA 表 示 桁 数 指 定 1 0 1 1 0xB ディスプレイ 表 示 1 1 0 0 0xC 1 桁 制 御 レジスタ(0x01~0x08) 桁 制 御 レジスタは 8 桁 ある7セグメントLEDの 各 桁 にどんな 数 字 又 はセグメント 情 報 を 表 示 するかを 指 定 するためのレジスタです 桁 番 号 は 本 書 2ページの 桁 指 定 番 号 の 項 目 をご 覧 ください 2のデコードモードレジスタでデコードモードが 有 効 になっている と 該 当 する 桁 レジスタに 入 った 値 が 直 接 数 字 として7セグメントLED に 出 力 されます 下 表 はレジスタデータ 一 覧 です データはMSB 先 頭 で D15から 順 番 に 受 信 されます 3
例 えば7セグメントLEDの3 番 に"5"を 表 示 しようとした 場 合 には 下 記 のようになります 0000001100000101 3 桁 目 数 値 (5) 例 えばCコンパイラでSPI 通 信 にて 値 を 送 信 する 場 合 には 上 位 1バイト と 下 位 1バイトを 分 けて 上 位 から 送 信 します SPI_write(3); SPI_write(5); 同 様 の 方 法 で1 桁 目 ~8 桁 目 までを 操 作 することができます なおデコードモードとノンデコードモードでは 7セグメントLEDのセグ メント 駆 動 の 仕 方 が 違 いますので 詳 しくは 次 の2をご 覧 ください 2デコードモード 7SEG-DISP2のセグメント 駆 動 には デコードモードとノンデコード モードがあります 送 信 した 値 を 数 字 として 表 示 したい 場 合 には デ コードモードを 送 信 した 値 を セグメントデータ として 扱 いいた 場 合 にはをノンデコードモードといいます 下 図 に 例 を 示 します レジスタデータ デコードモード D7 D6 D5 D4 D3 D2 D1 D0 16 進 すべての 桁 で デコードしない 0 0 0 0 0 0 0 0 0x0 1 桁 目 だけデコードし 他 桁 はデコードしない 0 0 0 0 0 0 0 1 0x1 1 桁 ~4 桁 はデコードし 他 桁 はデコードしない 0 0 0 0 1 1 1 1 0xF 全 桁 デコードする F F F F F F F F 0xFF 全 桁 デコードモードにする 場 合 には レジスタ9 番 地 に0xFFをセット することになります 3 輝 度 設 定 7セグメントLEDの 輝 度 を16 段 階 で 設 定 します 設 定 は0x0~0xFま でで 0x0が 最 も 暗 く 0xFが 最 も 明 るくなります (0x0は 消 灯 ではあり ません ) 4 表 示 桁 数 指 定 7セグメントLEDをONにする 桁 数 を 設 定 します 次 の 表 の 通 り 値 を 設 定 します レジスタデータ 表 示 桁 数 設 定 D7 D6 D5 D4 D3 D2 D1 D0 16 進 1 桁 目 だけ 表 示 x x x x x 0 0 0 0x0 1 2 桁 目 表 示 x x x x x 0 0 1 0x1 1~3 桁 目 表 示 x x x x x 0 1 0 0x2 1~4 桁 目 表 示 x x x x x 0 1 1 0x3 1~5 桁 目 表 示 x x x x x 1 0 0 0x4 1~6 桁 目 表 示 x x x x x 1 0 1 0x5 1~7 桁 目 表 示 x x x x x 1 1 0 0x6 全 桁 表 示 x x x x x 1 1 1 0x7 x 印 は 値 を 問 いません デコードモードを 有 効 にした 場 合 "7"という 値 を 送 信 すると 数 字 の 7を7セグメントLEDに 表 示 します ノンデコードモードにした 場 合 "7" という 値 を 送 信 すると 7は2 進 表 記 で00000111ですので この1に 対 応 する 部 分 のLEDが 点 灯 します 上 図 ではその 例 を 紹 介 しています ノンデコードモード 時 の 各 セグメントとレジスタは 下 表 の 通 りとなって います なお 表 示 桁 数 は 輝 度 に 影 響 を 与 えますので ノンデコードモードに 設 定 している 場 合 には 全 レジスタに0を 設 定 して 表 示 をしないように している 桁 に 対 して 本 表 示 桁 数 指 定 の 設 定 でその 桁 を 表 示 するよう に 設 定 しないでください 5ディスプレイ 表 示 全 桁 の7セグメントLEDの 表 示 をするか しないかを 設 定 します レジ スタの 値 が0で 表 示 しない 1で 表 示 する に 設 定 されます レジスタ D7 D6 D5 D4 D3 D2 D1 D0 セグメント DP A B C D E F G デコードモードレジスタの 設 定 値 は 下 表 の 通 りです 4
実 際 の 使 用 プログラム 例 実 際 に 使 用 する 場 合 には 先 に デコードモード 輝 度 設 定 表 示 桁 数 設 定 ディスプレイ 表 示 設 定 を 行 って その 後 に 各 桁 に 対 して 表 示 したい 値 をセットするようにします 下 記 は 当 方 販 売 中 のmikroCとPicBasic Pro Compilerを 使 用 して 7 SEG-DISP2を 制 御 している 例 です 使 用 しているマイコンはPIC16F8 87として CSピンはPIC16F887のRC0に 接 続 されているものとしま す 表 示 として"12345678"と 表 示 させます mikroc for PICを 使 用 した 場 合 の 例 #define CHIP_SELECT F0 unsigned long cnt; void system_init() { SPI_write(0x09); SPI_write(0xFF); SPI_write(0x0A); SPI_write(0xFF); SPI_write(4); SPI_write((data/1000)%10); SPI_write(3); SPI_write((data/100)%10); SPI_write(2); SPI_write((data/10)%10); SPI_write(1); SPI_write(data%10); } void main() { SPI_write(0x0B); SPI_write(0x07); TRISC.CHIP_SELECT = 0; SPI_init(); system_init(); display_number(12345678); } SPI_write(0x0C); SPI_write(0x01); } void display_number(unsigned long data) { SPI_write(8); SPI_write(data/10000000); SPI_write(7); SPI_write((data/1000000)%10); SPI_write(6); SPI_write((data/100000)%10); SPI_write(5); SPI_write((data/10000)%10); 続 きます 5
PicBasic Pro Compilerを 使 用 した 場 合 の 例 alias: ss var portc.0 scl var portc.3 sdo var portc.5 vars: i var byte n var byte init: TRISC = 0 n = 8 main: Gosub sys_init For i = 1 to 8 SHIFTOUT sdo,scl,1,[i] SHIFTOUT sdo,scl,1,[n] n = n - 1 Next i End 主 な 仕 様 電 源 電 圧 : DC5V ( 要 安 定 化 ) 消 費 電 流 ( 平 均 値 ): LED 無 点 灯 時 : 約 50uA LED 全 点 灯 時 ( 全 桁 8 点 灯 時 ): 約 250mA 12345678 点 灯 時 : 約 176mA ディスプレイスキャン: 800Hz(typ.) (1.25ms 間 隔 ) ディスプレイドライバ 電 流 : 320mA(min.) 1μ 秒 あたり 約 20mA(typ.) ロジック 電 圧 Hレベル 閾 値 : 3.5V(min.) ロジック 電 圧 Lレベル 閾 値 : 0.8V(max.) ロジックピン 電 流 : 流 れ 込 み 電 流 最 小 -1μA 流 れ 出 し 電 流 最 大 1μA 動 作 環 境 : 0 ~70 ( 動 作 保 証 範 囲 ) シリアル 通 信 方 式 : 同 期 式 シリアル 通 信 SPI 方 式 信 号 電 圧 レベル: 5Vp-p 生 産 国 : 中 国 RoHS 指 令 への 対 応 : 対 応 済 み 外 形 寸 法 sys_init: SHIFTOUT sdo,scl,1,[$09] SHIFTOUT sdo,scl,1,[$ff] SHIFTOUT sdo,scl,1,[$0a] SHIFTOUT sdo,scl,1,[$0f] SHIFTOUT sdo,scl,1,[$0b] SHIFTOUT sdo,scl,1,[$07] SHIFTOUT sdo,scl,1,[$0c] SHIFTOUT sdo,scl,1,[$01] ( 単 位 :mm) サポート 情 報 本 製 品 についてのサポートは 電 子 メールにて 受 け 付 けています な お サポートでは 本 製 品 についてのお 問 い 合 わせは 承 りますが 本 製 品 を 駆 動 するためのプログラム 方 法 やプログラムのデバッグ 等 は 行 って おりません また 他 社 製 品 についてのお 問 い 合 わせについてはお 答 え いたしかねます return サポートメールアドレス: support@microtechnica.net 回 答 までにお 時 間 を 頂 くことがあります あらかじめご 了 承 ください マイクロテクニカ 158-0094 東 京 都 世 田 谷 区 玉 川 1-3-10 TEL: 03-3700-3535 FAX: 03-3700-3548 (C)2014 Microtechnica All rights reserved 6
7