1.1 シリアル通信 Fig. 1 にあるように 通信は大きく分けてシリアル通信とパラレル通信に分かれる シリアル通信は基本的に送受信に各 1 本のデータ線を使い 全てのビットを順番にデータ線に流すことによ り通信が行われる このため TxD,RxD の最低 2 本の線を繋げば通信できる (Fig.



Similar documents
1. UART について UART は Universal Asynchronous Receiver Transmitter の頭文字をとったもので 非同期シリアル通信と呼ばれます シリアル通信とは 一本の信号線でデータをやりとりするために 1bit ずつデータを送出することをいいます データを受

CoIDE 用 STM32F4_UART2 の説明 V /03/30 STM32F4 Discovery の非同期シリアル通信ポート UART2 の送受信を行うプログラムです Free の開発ツール CoIDE で作成したプロジェクトサンプルです プログラムの開始番地は 0x08000

RTC_STM32F4 の説明 2013/10/20 STM32F4 内蔵 RTC の日付 時刻の設定および読み込みを行うプログラムです UART2( 非同期シリアル通信ポート 2) を使用して RTC の設定および読み込みを行います 無料の開発ツール Atollic TrueSTUDIO for

1. A/D 入力について分解能 12bit の A/D コンバータ入力です A/D 入力電圧とディジタル値との対応は理論上 入力電圧 0V : 0 入力電圧 +3V : 4095 です 実際はオフセットと傾きがあり ぴったりこの数値にはなりません 2. A/D 入力に使用する信号 STM32L_A

1. 使用する信号 1.1. UART 信号 UART 通信に使用する信号と接続相手との接続は以下の通りです UART 信号表 番号 CPU 機能名 CPU 信号名 基板コネクタピン番号 方向 接続相手の信号名 1 USART1_TX PA9 CN > RxD 2 USART1_R

SDC_SDIO_STM32F4 の説明 2013/09/17 SDIO インターフェースで SD カードをアクセスするプログラムのプロジェクトサンプルです FAT でファイルアクセスするために FatFs( 汎用 FAT ファイルシステム モジュール ) を使用しています VCP(USB 仮想 C

CoIDE 用 F4D_VCP の説明 V /07/05 USB の VCP( 仮想 COM ポート ) による非同期シリアル通信を行うプログラムです Free の開発ツール CoIDE で作成した STM32F4 Discovery 用のプロジェクトです プログラムの開始番地は 0x

1. USB の VCP( 仮想 COM ポート ) について USB の VCP( 仮想 COM ポート ) は USB を非同期シリアル通信として使用するための USB のドライバです PC には VCP ドライバをインストールする必要があります USB の VCP( 仮想 COM ポート )

arduino プログラミング課題集 ( Ver /06/01 ) arduino と各種ボードを組み合わせ 制御するためのプログラミングを学 ぼう! 1 入出力ポートの設定と利用方法 (1) 制御( コントロール ) する とは 外部装置( ペリフェラル ) が必要とする信号をマイ

tri_s_tg12864_vcp の説明 2014/02/05 飛石伝ひ CPU 基板 の LCD TG12864 の表示プログラムです 漢字表示 (JIS208) を行うことができます USB の VCP ( 仮想 COM ポート ) を使用して非同期シリアル通信により 表示試験を行うことができ

目次 1 I2Cとは 13 結線写真 2 センサの多くがI2Cに対応 14 WHO_AM_I 3 マイコンでのI2C通信例 15 I2C読込みプログラム 4 とは 16 I2C読込みスクリプト概要① 5 タイミングパラメータ 17 I2C読込みスクリプト概要② 6 書込み 18 センサ読込みプログラ

M G

表 信号端子 端子名 入出力 機能 DTR 出力 COM ポート DTR (Data Terminal Ready Control Output / Handshake Signal) RXD 入力 COM ポート RXD (Receiving Asynchronous Data Input) TX

スライド 1

RY_R8C38ボード RY-WRITER基板 自動書き込み・実行解説マニュアル

8ビットデータバスでアクセスする場合は、16ビットレジスタを上位バイト、下位バイトに分けてアクセスします

Nios II - PIO を使用した I2C-Bus (2ワイヤ)マスタの実装

GR-SAKURA-SAのサンプルソフト説明

パーツリスト 組み立て前にすべてのパーツがそろっているかご確認ください 種類 品番 数 種類 品番 数 基板 I2C LCD 1 コンデンサ 0.1uF (104) 積層セラミック 1 IC ATtiny コンデンサ 10uF 電解 1 半固定抵抗 10~50kΩ 1 コネクタ IC ソ

CM-3G 周辺モジュール拡張技術文書 MS5607センサ(温度、気圧)

(Making the electronic circuit with use of micro-processor)

商品番号 : UTS-422 USB-RS422( シリアル ) 変換ケーブル (USB1.1 規格対応 ) 概要 UTS-422 は RS-422 インターフェースを持つ外部周辺機器をパソコンの USB ポートを介してコントロールするための USB-RS422 変換ケーブルです 最大 3Mbps

OAKS16-FullKit

AKI-PIC16F877A開発キット (Ver1

CommCheckerManual_Ver.1.0_.doc

法政大学小林一行研究室 PSoC ドキュメント資料 Gerox(c) 10/12/ PSoC (49466 単体 ) で設定できるシリアル通信の最大クロックは? PSoC の UART のマニュアルによれば,6Mbits/second まで設定できる

商品番号 : UTS-485 USB-RS485( シリアル ) 変換ケーブル (USB1.1 規格対応 ) 概要 UTS-485 は RS-485 インターフェースを持つ外部周辺機器をパソコンの USB ポートを介してコントロールするための USB-RS485 変換ケーブルです 最大 1.2km

Microsoft Word - AS017U.b......_...j.doc

AN1530 Etherサンプルプログラム解説(RX71M)

920MHzLPWA無線モジュール IM920のご紹介

接続例 ピンアサイン ポート端子台 配線可能電線太さ : AWG 16~AWG 28 端子番号信号名 1 Data + 2 Data GND Data (=TxD + RxD) : 送受信データ ( 入出力 ) - は 無接続です ご注意 : 無接続端子の

MPL115A

mbed_library_study_meeting_v1.0.key

著作権および商標 この文書には が所有権を持つ機密事項が含まれます この資料のいかなる部分も許 可無く複製 使用 公開することを固く禁じます 本書は の従業員および許可された 取引先だけに使用が認められています 本書で提供されたデータは正確で信頼性の高いものですが このデータの使用について株式会社

Microsoft PowerPoint - RL78G1E_スタータキットデモ手順_2012_1119修正版.pptx

1. プログラム実行時の動作プログラムを実行すると以下のように動作します 1) NUCLEO-F401RE 上の LED LD2( 緑 ) が 200mSec 間隔で点滅します 2. プロジェクトの構成 2.1. プロジェクト F401N_BlinkLD2 の起動画面 TrueSTUDIO で作成し

Raspberry Pi (Windows10 IoT Core) を使用したリーダ ライタの制御例 (UART 接続 ) 2018 年 12 月 18 日第 版 株式会社アートファイネックス

PIC24FJ32GA002 で使える通信方式 デジタル通信 *UART (Universal Asynchronous Receiver Transmitter) 3 線方式 (Tx, Rx, Gnd) 下の 2 つに比べて, 比較的遠方までデータを送受信するのに使う. 調歩同期方式 ( 事前に通

1. 概要 CD-500/CD-500B( 以下 " 被制御機器 " とする ) に装備の REMOTE(SERIAL) 端子を使用して コンピュータなどの外部機器より被制御機器を制御することが可能です また 外部より制御を行う機器は制御機器となります 2 仕様 2-1. 電気的仕様準拠規格 :JI

SP-1221 LIN I/F 基板 ユーザーズマニュアル 作成日 :2017 年 10 月 17 日

1. 新規プロジェクト作成の準備新規プロジェクトのためのフォルダを用意して そこにプロジェクトを作成します [ 新しいフォルダー ] をクリックして希望のフォルダに新しいフォルダを作成します この例では TrST_F401N_BlinkLD2 というフォルダを作成しました TrST_F401N_Bl

訂正 _ 第 1 回 1 Arduino Arduino を用意する 入力 アナログ Analog 入出力 任意の電圧を扱える 電源系 外部入力 7 12V デジタル digital 入出力 リセットボタン Low High いわゆる 01 が入出力される 通常は Low 0V GND High 5

MODBUS ユーザーズマニュアル 페이지 1 / 23

untitled

できる!Bit Bangモード

回路図 部品表 部品番号 型番 個数 U PIC6F823 I/ST (TSSOP 4pin) R 00Ω (/0W, 608) R2 - R9 360Ω (/0W, 608) 8 C μf (25V, 608) LED LN56RA CN ロープロファイルピンソケット CN2 ロープロファイルピン

Studuinoプログラミング環境

TFTP serverの実装

スライド 1

81 /******************************************************************************/ 82 /* スレーブアドレスの設定 */ 83 /*****************************************

3. スイッチ設定 ( 表 3) モジュール SW4 SW5 C1 OFF 下 (GND) C2 OFF 下 (GND) C3 OFF 下 (GND) C4 OFF 下 (GND) C5 OFF 上 (R/-W) C6 ON 下 (GND) 使用するモジュールに応じて, スイッチを切り換えて下さい.


開発環境構築ガイド

MINI2440マニュアル

特定小電力無線モジュール BP35C0 スタートガイド

Arduinoで計る,測る,量る

2. 仕様 電源 :USB バスパワー (USB 入力の 5V 電源を使用します ) 出力 : 3.5mm ステレオジャック アナログステレオ出力 最大 20mArms 対応ヘッドホンインピーダンス 1Ω~500Ω RCA ピンジャック アナログ 2ch 出力 (L R) ラインレベル ヘッドホンア

AP-RZA-1A シリアルFlashROMの書き込み方法

CMOS リニアイメージセンサ用駆動回路 C10808 シリーズ 蓄積時間の可変機能付き 高精度駆動回路 C10808 シリーズは 電流出力タイプ CMOS リニアイメージセンサ S10111~S10114 シリーズ S10121~S10124 シリーズ (-01) 用に設計された駆動回路です セン

マニュアル訂正連絡票

S7G2_e2std_USBX_CDC_ACM

Arduino UNO IS Report No. Report Medical Information System Laboratory

スライド 1

TCP_BP3591 の説明 V /03/28 ROHM 社製 WIFi モジュール BP3591 を使用して 無線 LAN により TCP/IP 通信を行うプログラムです 簡単な文字列によるコマンド ( 例 : LED0 ON ) を受信して LED の ON/OFF を行います 受

HDLトレーナーサンプルプログラム説明書

VR-509DN

Microsoft Word - USB60F_Raspi_ doc

1. LCD LS027B4DH01 について LS027B4DH01 は 400dot x 240dot のグラフィック LCD です 秋月電子通商で購入できます 外形サイズ : 62.8 x x 1.53mm LCD のフレキシブルケーブルの根元の部分はちょっと力を加えただけで表示が

表 示 制 御 16 文 字 2 行 の 表 示 が 可 能 ですが, 内 部 アドレスと LCD 画 面 とは 連 続 したアドレスに 配 置 されていませ ん A +0B +0C +0D +0E +0F +40

Studuino ライブラリ環境設定Windows編

EB-RL7023+SB/D2

MINI2440マニュアル

アナログ・接点変換器

-2 外からみたプロセッサ GND VCC CLK A0 A1 A2 A3 A4 A A6 A7 A8 A9 A10 A11 A12 A13 A14 A1 A16 A17 A18 A19 D0 D1 D2 D3 D4 D D6 D7 D8 D9 D10 D11 D12 D13 D14 D1 MEMR

RA-485実習キット

テクノ東京21-2005年5月号

ターゲット項目の設定について

Transcription:

2B RFID TA 18 10 2326 2 RFID RFID RFID RFID PC RFID RFID 2 2 1. Fig. 1: Fig. 2: Fig. 3: 2B1 / 16

1.1 シリアル通信 Fig. 1 にあるように 通信は大きく分けてシリアル通信とパラレル通信に分かれる シリアル通信は基本的に送受信に各 1 本のデータ線を使い 全てのビットを順番にデータ線に流すことによ り通信が行われる このため TxD,RxD の最低 2 本の線を繋げば通信できる (Fig. 2) これに対して パラレル通信では 送信したいビットの数だけ通信線を用意し 一度に全ビットを通信する 方式となる (Fig. 3) 1.2 非同期式シリアル通信 (UART) シリアル通信には さらに非同期式 同期式などの通信方式がある 同期式のシリアル通信は 互いに共通のクロックを持ち このクロックにあわせて通信を行う このため RxD や TxD 以外にもクロック線が必要になるなど面倒な部分が多いが 速い速度での通信を行うことが出 来る 非同期式のシリアル通信では 通信を開始する前に 転送レートをお互いに設定しておき その転送レート に従ってデータを転送する 共通のクロックは必要ない この方式ではあまり早い通信を行うことは出来ない が 簡単であるため広く利用されている 最も簡単な場合 RxD(受信) TxD(送信) の 2 本の信号線があれば実 現できる 今回の RFID モジュールとの通信では RxD TxD に加え 5[V] GND の合計 4 つの信号線を使う また 2 台のマイコン間の通信では RxD TxD に加え GND の合計 3 つの信号線を使う 2. OAKS16-mini のシリアル通信用ポート 創造設計第二で使用するマイコン OAKS16-mini は UART0 UART1 UART2 の 3 個のシリアル通信用の ポートを搭載している このうち UART1 はデバッグや焼き込みなどの際のホスト PC との通信に使われてい る UART0 は マイコンの 5[V] 系を RS232C 電圧レベルに変換するバッファや 正論理と負論理を入れ替え るインバータを持った RS2332C ドライバ (Fig. 4) を通った信号線が来ている このため このドライバを搭載 していない RFID モジュールとの通信には向いていない 従って 今回の試作検討では RFID モジュールとの 通信を UART2 を使って行い マイコン間通信は UART0 を使って行う 7#46 7#46 45 % ࡃ 7#46 Fig. 4: MCU ボード 試作検討 2B 2 / 16

3. RFID RFID 3.1 RFID JR Suica IC 5 IC IC IC RFID Fig. 5: RFID Fig. 6: RFID 3.2 RFID RFID RFID 6 RFID RFID RFID 3.3 RFID V720S-HMC73 RFID V720S-HMC73V720 V720 V720 V720 3.3.1 V720 FIFO 2 3 6 FIFO 7 RFID 2B3 / 16

V720 4-74-8 1. Single Mode Read / Write FIFO 2. FIFO FIFO Mode Read / Write Stop 1. Trigger Mode Read / Write 2. Auto Mode Read / Write Stop 3. Repeat Mode Read / Write Stop V720 V720 V720 3.3.2 V720 9600bps / 38400bps 38400bps 9600bps V720 V720 V720 OFF9600bpsON38400bps 2-2 3.3.3 RFID 1024 IC SL2-ICS20 IC V720 V720 4 ASCII 4 16 7 3.4 V720S ver1.0beta RFID V720 C V720S T:Yss2YLIB06YV720S LIB ver1.0beta 2B4 / 16

Bank Page Byte0 Byte1 Byte2 Byte3 0h 1h 2h 3h 4h 00h 5h 6h 7h 8h Freespace 9h Ah Bh Ch Dh Eh Fh Bank Page Byte0 Byte1 Byte2 Byte3 0h Position 01h 1h 2h 3h 4h 5h 6h 7h 8h 9h Ah Bh Read / Write Area Read-only Area Unused Area Unused Fig. 7: () 3.4.1 V720S 3.4.2 v720s.h UART2 V720 OAKS16mini UART2 *1 OAKS16mini 13 V720S v720s.cv720s Library C Source File v720s.hv720s Library Public Header File uart2.cuart2 Library C Source File uart2.huart2 Library Private Header File V720S v720s.h V720S *1 UARTUniversal Asynchronous Receiver Transmitter 2B5 / 16

3.4.2 V720S RFID V720S-HMC73 v720s init v720s putcmd read v720s putcmd write v720s putcmd stop v720s getdata UART2 V720 V720 Read V720 Write V720 Stop V720 V720 uart2 received v720s busy UART2 V720 3.4.3 v720s init int v720s init(void) UART2 V720 (TEST ) 0 999998110114 v720s putcmd read int v720s putcmd read(unsigned char mode type, unsigned char data type, unsigned char pagenum fs st, unsigned char pagenum fs end) mode type data type V720 pagenum fs st pagenum fs end 0 997993991 v720s putcmd write int v720s putcmd write(unsigned char mode type, unsigned int pagenum fs st, char* data write) mode type data write pagenum fs st V720 0 997992 v720s putcmd stop int v720s putcmd stop(void) V720 0 997996 2B6 / 16

v720s getdata int v720s getdata(char* data read) V720 data read char data read V720 995110114 v720s init OAKS16mini V720 V720 v720s init v720s putcmd xxx V720S 0 V720 V720 v720s getdata V720 v720s getdata V720SUART2 v720s getdata char UART1 char 651 + 1 C 3.4.4 0 0 unsigned int uart2 received uart2 received V720 (UART2 ) UART2 1 0 unsigned int v720s busy v720s busy V720S v720s getdata 0 1 V720 1 V720 v720s putcmd xxx V720 V720 v720s getdata V720 v720s getdata 2B7 / 16

3.4.5 mode typedata typefs pagenum mode type V720S MODE ST V720S MODE SA V720S MODE SR V720S MODE FT V720S MODE FA V720S MODE FR Single Trigger Single Auto Single Repeat FIFO FIFO Trigger FIFO FIFO Auto FIFO FIFO Repeat data type V720S DATA UID V720S DATA FS V720S DATA POS Unique Identification Freespace Position pagenum fs st or end 015 015 (015) 3.4.6 V720S V720SUART V720 V720 4-9 V720S 999 999 V720 998 TEST V720 997 UART v720s init 996 995 V720 994 mode type 993 data type 992 64 991 fs pagenum st or end UART 100 102 UART 111 UART 112 UART 114 UART V720 0 0 70 72 (Trigger mode ) 2B8 / 16

3.4.7 9600bps 38400bps V720 V720 3.3.2 OAKS16mini uart2.h #define UART2 BOWRATE 129#define UART2 BOWRATE 31 3.5 RFID 3.5.1 RFID RFID V720S V720SRFID RFID 10 8 Fig. 9: Fig. 8: RFID RFID 9 RFID ( 9 ) RFID 3.5.2 RFID SS2 2B9 / 16

注意 SS2 ボード上の IC 類は非常に高価なので 静電気や不注意によるショートな どで破壊しないように気をつけてください OAKS16mini では P70 が UART2 の送信ポート P71 が UART2 の受信ポートになっています したがっ て RFID モジュールの受信ポートと P70 を RFID モジュールの送信ポートと P71 を接続します この際 V850/KG1 と RFID モジュールの送受信ポートをそれぞれクロスでつなぐことに気をつけて下さい また TXD2 は N チャンネルオープンドレインなので RFID モジュールの RXD と接続際にはプールアップ抵抗を付 ける必要があります (RFID モジュールの通信方式は CMOS レベル) 図 10 に SS2 ボードから 5V GND P70 および P71 をとる方法を示します 電源と GND を間違えないよ うに気をつけてください )0& 2 4:& 4(+& /QFWNG 2 6:& 8EE Mǡ 4:& 6:& )0& 2 4:& 2 6:& 8EE 8 )0& Fig. 10: SS2 ボードから 5V GND P70 および P71 をとる方法 3.6 課題 V720S と C 言語ライブラリの使い方 3.6.1 実験準備 ³ 実験準備 1. T:Yss2YshisakuYshisaku02Yrfid 以下にあるサンプルプログラムをコピーする 2. main.c をエディタで開いてプログラム全体を確認した後 以下の点を修正する グロバールで定義された フリースペース書き込み用の char 型ポインタの配列 message に 自分たちのオリジナルメッセージを書く 3. TM でビルド後 図 10 を参考して V720S とマイコンを接続する その後 デバッガ KD30 の起 動して watch ウィンドウを起動 watch には 以下の message のグローバル変数を追加しておく µ 試作検討 2B 10 / 16

3.6.2 1. 2cm V720S RFID V720S V720 LED 2. CPU 2 0-3 2 mode=0 mode=1 message mode=2 mode=3, 3. V720S (Single & FIFO Tirgger, FIFO Repeat ) ( default V720S MODE ST Single Trigger 4 V720S MODE ST V720S MODE FT(FIFO Trigger) Single Single&FIFO Trigger RFID Repeat V720S MODE FR(FIFO Repeat) ) 4. V720S send error codereceive error code v720s getdata(data) data send flag RFID v720s.c TA T:Yss2Ydata sheet v720 2B11 / 16

4. 13 ( 13.1 13.3 ) Fig. 11: (!!) 4.1 1 1 1 1 2 4.2 uart0.c uart0.h RFID mcu comunication.c mcu comunication.h int init mcu comu( void ) UART0 0 100117, 210230 int mcu comu tra str(const unsigned char* send mess); send mess 0 100117, 210230 2B12 / 16

int mcu comu rec str(unsigned char* receive mess); receive mess 0 100117, 210230 4.3 1. 1 2 2 2. 2 UART0 (Fig. 12) 9pin 2 RxD TxD Fig. 12: UART0/D-sub 3. ( 2 a b) T:\SS2\shisaku\shisaku02\mcu_comunication\ 4. 5. LCD ON LCD ON OFF 50[ms] 1 () 50[ms] 1 LCD 50[ms] 1 ON OFF UART0 UART0 (<CR>) LCD 6. (IE RE TE ) 2B13 / 16

101 102 () 111 () 112 () 113 + 114 115 + 116 + 117 + + 210 2201 230 4.4 1. LCD 10 ON OFF 2. uart0.h #define UART0_BOWRATE 255 4.5 0255 255 uart0.c u0c0 2 [bps] = 20[MHz] / 16 / (UART0_BOWRATE + 1).h () TA.h 16 1 2 3 4.6 4.6.1 RTSCTS 2 2B14 / 16

4.6.2 U0MR STPS 1 2 (2 ) 4.6.3 H U0MR PRY PRYE U0RB PER H RFID 4.6.4 UART0 4.6.5 UART2 UART2 I 2 C Bus 3 13.4 13.5 4.7 + p1 A B B A A B B A ASCII ASCII () 3 3 ASCII P1 0xA9 2B15 / 16

1. P1 111 P1 0xA9 (send mess) sprintf(send_mess, "%ld", (unsigned long)111*1000 + p1); 2. send mess 111169 3. receive mess 4. long receive code receive_code=atol(receive_mess); (atol() ASCII long int atoi() stdlib.h ) long receive code 111169 5. int receive cmd() receive data() receive_cmd = (receive_code - (receive_code % 1000)) / 1000;// receive_cmd = 111 receive_data = receive_code % 1000;// receive_data = 169 = 0xA9 T:\SS2\shisaku\shisaku02\omake\ 4.8 while 2B16 / 16