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

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

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

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

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

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

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

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

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

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

1. 概念 STM32F4 Discovery 基板は Mini USB を接続して デバッグやプログラムの書き込みができるようになっています 通常は CPU の 0x 番地からプログラムを実行します では なぜわざわざこのプロジェクトの雛形を使用して CPU の 0x

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

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

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

ST-LINK/V2-1 への Upgrade V /10/07 ST-LINK/V2-1 USB driver のインストールおよび ST-LINK/V2-1 の Upgrade について説明します ST-LINK/V2-1 USB driver をインストールしてから ST-LIN

1. ST-LINK Utility のダウンロード Windows7 PC にインストールする場合について説明します 1.1. STMicroelectronics のサイト STMicroelectronics のサイトを開きます ここに ST-LINK と入力して検索します ( 右側の虫眼鏡を

プログラマブル LED 制御モジュール アプリ操作説明書 プログラマブル LED 制御モジュール設定アプリ操作説明書 適用モジュール 改訂番号 エレラボドットコム 1

Windows10 における Ac6 System Workbench for STM32 のダウンロードとインストール V /06/01 Windows10 の PC で Ac6 System Workbench for STM32 のダウンロードとインストールの方法について説明しま

RP-VL-S-01, RP-VL-R-01

Taro-82ADAカ.jtd

CommCheckerManual_Ver.1.0_.doc

MS5145 USB シリアル エミュレーション モードの設定

まず,13 行目の HardwareTimer Timer(1); は,HardwareTimer というクラスを利用するという宣言である. この宣言によって Timer というインスタンスが生成される.Timer(1) の 1 は,OpenCM に 4 個用意されているタイマのうち,1 番のタイマ

目次 目次 ターミナルアダプタの接続イメージ INS 回線とターミナルアダプタの接続 ターミナルアダプタの設定とパソコン接続 ドライバのダウンロードとインストール ユーティリティインストールCD-ROMをお持ちでない場合.

SLCONFIG の操作 JF1PYE Ⅰ. PC と slconfig の通信設定 Ⅱ. Slconfig の操作 Ⅲ. 端末ソフトによる Command 機能 Ⅳ. slconfig 実行形式プログラムの作成 Ⅴ. 端末ソフト Tera Term のダウンロード インストー

RW-5100 導入説明書 Windows7 用 2017 年 7 月 シャープ株式会社

TR3通信コマンド仕様

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

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

CS-DRC1操作説明書

RW-4040 導入説明書 Windows 7 用 2017 年 7 月 シャープ株式会社

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

1 1 Arduino とは Arduino アルドゥイーノ は ワンボードマイコンの一種で オープンソースハードウェアであ り 組み立て済みの基板を購入することもできるほか 誰でも自分の手で Arduino を組み立てる ことができます USBコネクタでPCと接続して利用します デジタルポートとア

起動画面

CR-USB 仕様書 株式会社測商技研 JS カード用データ転送用カードリーダー CR-USB 仕様書 取扱説明書 2012 年 07 月 31 日版 株式会社測商技研 1. 概要 本器は当社製自動観測装置で記録した JS カードデータ

目次 目次 ターミナルアダプタの接続イメージ INS 回線とターミナルアダプタの接続 ターミナルアダプタの設定とパソコン接続 ドライバのインストール ユーティリティインストール CD-ROM をお持ちでない場合... 4

Microsoft Word - (171118_v4250)ACS_インストールマニュアル.doc

ギガらくカメラAXIS社製カメラWi-Fi接続設定有線固定IP設定 開通マニュアル

開発環境構築ガイド

2. WiFi 接続 1.1 GuruPlug Server 初期設定情報 記載の SSID が設定されているアクセスポイントが GuruPlug Server です PC を操作して GuruPlug Server のアクセスポイントに接続して WiFi 接続してください 接続に成功すると PC

AN1526 RX開発環境の使用方法(CS+、Renesas Flash Programmer)

目次 1. ソフトウェアのインストール 対応 OSについて インストール手順 アンインストール手順 USB ドライバのインストール 操作の流れ 接続の準備 ソフトウ

LANカード(PG-2871) 取扱説明書

出荷一覧表をもう一度印刷したい

目次 目次 ターミナルアダプタの接続イメージ INS 回線とターミナルアダプタの接続 ターミナルアダプタの設定とパソコン接続 ドライバのインストール ユーティリティインストール CD-ROM をお持ちでない場合... 4

ファームウェア書き換え説明書 目次 はじめに... 2 書き換え前に... 2 接続図... 2 書き換え手順... 3 (1) ファームウェアファイルの準備... 3 (2) 接続準備... 3 (3) ファームウェア書き換え準備 (4) ファームウェア書き換え準備 (

改訂履歴 改訂日付 改訂内容 2014/11/01 初版発行 2017/01/16 Studuino web サイトリニューアルに伴う改訂 2017/04/14 Studuino web サイトリニューアルに伴うアクセス方法の説明変更 2018/01/22 Mac 版インストール手順変更に伴う改訂

無線LAN JRL-710/720シリーズ ファームウェアバージョンアップマニュアル 第2.1版

開発環境構築ガイド

Studuinoソフトウェアのインストール

おことわり 本書の内容の一部又は全部を無断転載することは禁止されています 本機の外観及び仕様は改良のため 将来予告無しに変更することがあります 本書の内容について万一不審な点や誤りなどのお気付きの点がありましたらご連絡ください 本書に記載されている会社名 商品名などは 一般に各社の商標又は登録商標で

MS104-SH2 USBドライバ(仮想COMポートドライバ)の不具合について

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

Microsoft Word - PCET10-CL_02a†iWinNT40_PDFŠp†j.doc

第 7.0 版 利用履歴管理 ETCPRO5 セットアップマニュアル (Ver5.002) カードリーダモデル変更 ( 表示付き 表示なし ) に伴い 改訂 Windows10 対応に伴い 改訂 参考ホームページサイト :

株式会社日新テクニカ USB シリアル CAN 変換器 /8/22 ホームページ : メール

内容 1. 仕様 動作確認条件 ハードウェア説明 使用端子一覧 ソフトウェア説明 動作概要 ファイル構成 オプション設定メモリ 定数一覧 変数一

目次 1. 概要 動作環境

STM32F405VG 搭載 CPU 基板の仕様 V /10/14 STMicroelectronics 社製の Cortex-M4 ARM CPU STM32F405VGT6 を搭載した CPU 基板です 目次 1. 概要 CPU 基板のブロック図 C

Microsoft Edge の場合 (1) Mizdori 無料体験版ダウンロード画面の [ 体験版ダウンロード ] ボタンをクリックします (2) Edge の下部に mizdori_taiken_setup.zip について行う操作を選んでください と表示され ますので [ 開く ] をクリッ

2015/04/01 改定 オムロン DeviceNet ユニット CJ1W-DRM21 に関するコンフィグレーション作業について 1. 概要 DeviceNet ユニット CJ1W-DRM21 を装着したオムロン製 CJ2 シリーズと WAGO-I/0-SYSTEM DeviceNet 対応バスカ

1. プロジェクトサンプルのダウンロードと 解 凍 1.1. プロジェクトサンプルのダウンロード 当 サイトのプロジェクトサンプルの 圧 縮 ファイルBlink_LED_Status_10K.zipをダウンロードしてください ダウンロードが 終 了 したら [フォルダーを 開 く] ボタンをくりっく

FTDI USB-Serial Converter デバイスドライバのインストール(Rev.1.01)

T A USB ドライバ インストール手順書 対応型式 :PHC-D08 PHE-3FB2 対応 OS :Windows 7(32bit,64bit) Windows 8(32bit,64bit) Windows 8.1(32bit,64bit) Windows 10(32bit,6

Microsoft Word - MacOSXインストールマニュアル( ).doc

< F F D815B B408EED95CA C815B83678FEE95F13F7C3F C815B A896E282A28D8782ED82B93F7C3F57494C4C4

新規インストールガイド SPSS Statistics 24/25 Windows 32/64bit 版 本書は Download Station から SPSS Statistics をダウンロ ドし 新規インストールを行う手順を記載しています 本手順は学内ネットワークに接続した状態で行う必要があ

新規インストールガイド Microsoft Office Professional Plus 2016 本書は Download Station から Microsoft Office Professional Plus 2016( 以下 Office) をダウンロ ドし 新規インストールを行う手順

wx01j-v234_instmac

各種パスワードについて マイナンバー管理票では 3 種のパスワードを使用します (1) 読み取りパスワード Excel 機能の読み取りパスワードです 任意に設定可能です (2) 管理者パスワード マイナンバー管理表 の管理者のパスワードです 管理者パスワード はパスワードの流出を防ぐ目的で この操作

5. 下の画面が表示されますので [Next>] をクリックします 6. License Agreement の画面が表示されますので 内容をご確認いただき 同意する場合は I accept the terms of the license agreement にチェックをして [Next>] をク

取り付け前の確認 準備 この章では 本製品をパソコンへ取り付ける前の確認や準備について説明します 各部の名称 機能 3 ヘ ーシ 本製品の各部の機能 名称を確認します ネットワークへの接続 4 ヘ ーシ 本製品をネットワークに接続します 2

目次 1. はじめに 接続先ホスト端末の登録 ホスト端末と接続する... 9 i

仮想 COM ポートドライバ Windows 10 編 インストールマニュアル

ICカードリーダー動作確認手順書

目次 1. SATO CF408T プリンタドライバのインストール 1.e 飛伝 Ⅱ 環境設定画面 からのプリンタドライバのダウンロード 3 2. インストール 4 2. 用紙設定 圧着サーマル送り状 12 らく楽複写送り状 印刷設定 印刷設定 ネットワークプリンタ対応 (

9. デバッグ デバッグの準備 ) ST-Link/V2 と tri-s CPU 基板との接続の様子 ) ST-Link/V2 と tri-s CPU 基板との接続信号 デバッグ ) プログラムの実行

Microsoft Word - USB60F_Raspi_ doc

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

『テクノス』V2プログラムインストール説明書

Studuinoプログラミング環境

PitStop マル秘テク

WAGO / / Modbus/RTU対応 バスカプラ クイックスタートガイド

目次 USBドライバダウンロードの手順...2 USBドライバインストールの手順...3 インストール結果を確認する...19 USBドライバアンインストール / 再インストールの手順...21 USB ドライバダウンロードの手順 1. SHL21 のダウンロードページからダウンロードしてください

Windows XPでの手動USBドライバインストール方法

インストレーションガイド_WME

改訂履歴 改訂日付 改訂内容 2014/11/01 初版発行 2017/01/16 Studuino web サイトリニューアルに伴う改訂 2017/04/14 Studuino web サイトリニューアルに伴う改訂 2018/01/22 ソフトウェア OS のバージョンアップに伴う改訂

内容 1. APX-3302 の特長 APX-3312 から APX-3302 へ変更するためには 差分詳細 ハードウェア ハードウェア性能および仕様 ソフトウェア仕様および制限 Ini ファイルの設

Transcription:

TrueSTUDIO 用 F4D_VCP の説明 V001 2014/07/05 USB の VCP( 仮想 COM ポート ) による非同期シリアル通信を行うプログラムです 無料の試用版開発ツール Atollic TrueSTUDIO for ARM Lite で作成したプロジェクトです ビルド可能なプログラムのコードサイズが 32Kbyte 以内の制限があります プログラムの開始番地は 0x08000000 です デバッグが可能です 目次 1. USB の VCP( 仮想 COM ポート ) について... 2 2. USB の VCP( 仮想 COM ポート ) による接続... 2 3. プログラム実行時の動作... 3 4. VCP 通信の動作確認... 4 4.1. アプリケーション Access_VCP のインストール... 4 4.2. Access_VCP アプリケーションの起動... 6 4.3. COM ポートの選択... 7 4.4. 送信データのエコーバック... 8 4.5. LD6( 青 ) 点灯コマンドのセット... 9 5. プロジェクトの構成... 11 5.1. プロジェクト F4D_VCP の起動画面... 11 5.2. 追加したソース フォルダとファイル... 11 6. 主なモジュールの説明... 13 6.1. ソース フォルダ src 内のファイル... 13 6.2. HandleTIM... 14 6.3. UserPrograms... 15 6.4. Communicate_VCP... 17 1

1. USB の VCP( 仮想 COM ポート ) について USB の VCP( 仮想 COM ポート ) は USB を非同期シリアル通信として使用するための USB のドライバです PC には VCP ドライバをインストールする必要があります USB の VCP( 仮想 COM ポート ) を使用するための VCP ドライバのインストールについては インストール のページの [ 1. VCP(Virtual COM Port : 仮想 COM ポート ) ドライバ のインストール ] の部分をご覧ください 2. USB の VCP( 仮想 COM ポート ) による接続 USB の VCP( 仮想 COM ポート ) による PC と STM32F4 Discovery との接続は以下のようになります USB ケーブル : A - MiniB : 電源供給および ST-LINK のため Mini B PC A USB ポート A STM32F4 Discovery Micro B USB ケーブル : A - MicroB : VCP( 仮想 COM ポート ) による非同期シリアル通信のため 図 2. 2

3. プログラム実行時の動作 1) F4D_VCP プログラムを実行すると基板上の LED LD4( 緑 ) が 1 秒点灯 2 秒消灯で点滅します 2) データを受信するとそのデータをそのまま送信します ( エコーバック ) 3) 受信データが LED ON/OFF のコマンドであった場合 以下のように動作します 番号 受信コマンド 動作 1 LD3 ON\0 LD3( 橙 ) 点灯 2 LD3 OFF\0 LD3( 橙 ) 消灯 3 LD5 ON\0 LD5( 赤 ) 点灯 4 LD5 OFF\0 LD5( 赤 ) 消灯 5 LD6 ON\0 LD6( 青 ) 点灯 6 LD6 OFF\0 LD6( 青 ) 消灯 表中の \0 は 0x00 です 次ページに続く 3

4. VCP 通信の動作確認 USB の VCP( 仮想 COM ポート ) 用のアプリケーション Access_VCP を使用して STM32F4 Discovery の送受信の確認 およびコマンド文字列を送信して基板上の LED の点灯 / 消灯を行います 4.1. アプリケーション Access_VCP のインストール Access_VCP はりばいぶが 飛石伝ひ のページで提供している Windows7 PC 用のアプリケーションです Access_VCP_Install.zip をダウンロードして解凍すると 次ページのようにフォルダ Access_VCP_Install の下にインストールのためのファイルが格納されています setup.exe をダブルクリックすると次の警告のダイアログが開きます [ インストール (I)] ボタンをクリックしてインストールしてください アプリケーションがインストールされて自動的に Access_VCP が実行されて次ページのフォームが表示されます 4

アプリケーション Access_VCP のインストールはこれで終了です STM32F4 Discovery でプロジェクト STM32F4_VCP が実行されていて PC と STM32F4 Discovery とが USB ケーブル (A MicroB) で VCP 接続されている場合 上記のように COM( シリアルポート ) を検索しました とメッセージが表示されます 通常は スタートメニューの { Access_VCP } をクリックするとアプリケーションを起動されて上記のフォームが表示されます 5

4.2. Access_VCP アプリケーションの起動まず PC と STM32F4 Discovery の CN5 とを USB ケーブル (A MicroB) で接続してください スタートメニューの { Access_VCP } をクリックするとアプリケーション Accsess_VCP が起動して次のフォームが表示されます 6

4.3. COM ポートの選択 COM 選択の ComboBox で COM を選択します 確認のメッセージが表示されるので よい場合は [ はい (Y)] ボタンをクリックします 次ページに続く 7

この例では COM3 に設定しました とメッセージが表示されています 4.4. 送信データのエコーバック送信データの TextBox に ASCII 文字列を入力して [ 送信 ] ボタンをクリックすると CPU 基板にデータが送信されます CPU 基板はデータを受信して そのデータをそのまま PC に送信します このプログラムでは ASCII 文字のみ入力可能です PC が受信したデータは受信データの部分に表示されます 上記の例では 送信データに How are you? と入力して [ 送信 ] ボタンをクリックした結果 エコーバックのデータが受信データの欄に表示されています 8

4.5. LD6( 青 ) 点灯コマンドのセット LD6( 青 ) の点灯コマンド LD6 ON&00 とセットします 0x20 未満 0x7F 以上のコードは &xx の形で入力します &00 は 0x00 です <CR> の 0x0D なら &0D とします & 自体を入力する場合は &26 と入力してください [ 送信 ] ボタンをクリックしたとき送信データが送信されます 受信データの部分にエコーバックされたデータ LD6 ON&00 が表示されています STM32F4 Discovery 側では LD6 ON&00 を受信して LD6( 青 ) を点灯して LD6 ON&00 をエコーバックしました 9

LD3( 橙 ) LD5( 赤 ) に対しても同様に点灯 / 消灯を行うことができます 試してみてください プロジェクト F4D_VCP のコマンドに対する動作は以下の通りです Access_VCP の送信データ入力では \0 (0x00) のデータは &00 と入力してください F4D_VCP の受信コマンドに対する動作 番号 受信コマンド 動作 1 LD3 ON\0 LD3( 橙 ) 点灯 2 LD3 OFF\0 LD3( 橙 ) 消灯 3 LD5 ON\0 LD5( 赤 ) 点灯 4 LD5 OFF\0 LD5( 赤 ) 消灯 5 LD6 ON\0 LD6( 青 ) 点灯 6 LD6 OFF\0 LD6( 青 ) 消灯 10

5. プロジェクトの構成 5.1. プロジェクト F4D_VCP の起動画面 TrueSTUDIO で作成したプロジェクト F4D_VCP を開いた状態を以下に示します 左側のプロジェクト エクスプローラーの F4D_VCP を展開した状態です 5.2. 追加したソース フォルダとファイル追加したソース フォルダとファイルについて簡単に説明します 1) Communicate_VCP ( ソース フォルダ ) a) Communicate_VCP.h Communicate_VCP.c ( ファイル ) 接続相手との通信処理を記述しています データを受信して 受信データをそのまま送信します ( エコーバック ) 受信データを判定して LD3( 橙 ) LD5( 赤 ) LD6( 青 ) の点灯 / 消灯を行います 2) Driver_USB ( ソース フォルダ ) Driver_USB の下にフォルダ STM32_USB_Device_Library と STM32_USB_OTG_Driver があります STMicroelectronics 社が提供している USB のドライバです 11

3) Handles ( ソース フォルダ ) Peripheral の設定などを行っています a) HandleGPIO.h HandleGPIO.c ( ファイル ) GPIO 入出力の初期設定を記述しています b) HandleTIM.h HandleTIM.c ( ファイル ) タイマ割り込みを使用するために タイマの初期設定を記述しています 1mSec ごとにタイマ割り込みが発生するように設定しています 4) UserPrograms ( ソース フォルダ ) LED のための処理を記述しています a) UserPrograms.h UserPrograms.c ( ファイル ) Status LED : LD4( 緑 ) に使用している GPIO の初期設定と点滅処理を記述しています LD3( 橙 ) LD5( 赤 ) LD6( 青 ) に使用している GPIO の初期設定を記述しています 5) VCP ( ソース フォルダ ) VCP の下にフォルダ inc と src があります VCP( 仮想 COM ポート ) 通信のためのドライバです 12

6. 主なモジュールの説明 6.1. ソース フォルダ src 内のファイルソース フォルダ src 内のファイルでプログラムを追加した主なファイルについて簡単に説明します 1) main.c a) main 関数プログラムはここから開始します 主に初期化処理関数を呼び出しています int main(void) b) 使用するクロックの初期化 void RCC_Configuration(void); c) GPIO の初期化 void Init_GPIOs(void); 2) stm32f4xx_it.h stm32f4xx_it.c このファイルに割り込み処理を記述します 本プロジェクトサンプルでは TIM13 と TIM14 のタイマ割り込み処理および USB の割り込み処理を記述しています 13

6.2. HandleTIM 1) TIM13 と TIM14 の初期化タイマ割り込みのために TIM13 と TIM14 を初期化してインターバルをセットします 1mSec ごとに割り込みがかかるように設定しています 以下の関数の引数に TIM13 または TIM14 用のパラメータを指定して TIM13 または TIM14 を初期化します -------------- // TIMxx 初期化 -------------- // 引数 : // TIM_TypeDef *TIMxx : TIM 選択 // uint32_t RCC_APB1Periph_TIMxx : specifies the APB1 peripheral to gates its clock. // uint16_t uint16_timxx_ccr1 : TiMxx CH1 のインターバル -------------- void InitializeTIMxx(TIM_TypeDef *TIMxx, uint32_t RCC_APB1Periph_TIMxx, uint16_t uint16_timxx_ccr1); 2) タイマ割り込み許可以下の関数の引数に希望する TIMxx 用のパラメータを指定して割り込みを許可します ------------------- // TIMxx 割り込み許可 ------------------- // 引数 : // uint32_t RCC_APB1Periph_TIMxx : specifies the APB1 peripheral to gates its clock. // uint8_t TIMxx_IRQn : STM32 specific Interrupt Numbers ------------------- void EnableIrqTIMxx(uint32_t RCC_APB1Periph_TIMxx, uint8_t TIMxx_IRQn); 14

6.3. UserPrograms UserPrograms.h には LED に使用する GPIO に対する定義を記述してあります 以下に UaerPrograms.c に記述している関数の説明を記します 1) LED に使用する GPIO の初期化 ( 共通処理 ) GPIO 番号とピン番号を指定して I/O を初期化します // LED ポート初期化 // 引数 : // GPIO_TypeDef *GPIOx : GPIO ポート指定 // uint16_t GPIO_Pin_x : GPIO ピン指定 void InitializePortLED(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin_x); 2) LED の点滅処理 ( 共通処理 ) GPIO 番号とピン番号などを指定して希望の LED の点滅処理を行います // LED 点滅 : 点灯 / 消灯切り替え // 点灯 / 消灯を切り替えると同時に点灯時間 / 消灯時間をセットする // 引数 : // GPIO_TypeDef *GPIOx : GPIO ポート指定 // uint16_t GPIO_Pin_x : GPIO ピン指定 // int16_t *pint16_onoff : ON/OFF 状態 // 0 : OFF // 1 : ON // uint16_t *puint16_timer : 点灯時間 / 消灯時間をセットする変数のポインタ // uint16_t uint16_timeon : 点灯時間 // uint16_t uint16_timeoff : 消灯時間 void BlinkLED(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin_x, int16_t *pint16_onoff, uint16_t *puint16_timer, uint16_t uint16_timeon, uint16_t uint16_timeoff); 15

3) LED に使用する I/O の初期化 a) StatusLED : LD4( 緑 ) // Status LED ポート初期化 : LD4( 緑 ) void InitializePortStatusLED(void); b) LD3( 橙 ) // LD3( 橙 ) ポート初期化 void InitializePortLD3(void); c) LD5( 赤 ) // LD5( 赤 ) ポート初期化 void InitializePortLD5(void); d) LD6( 青 ) // LD6( 青 ) ポート初期化 void InitializePortLD6(void); 4) StatusLED : LD4( 緑 ) の点滅 // Status LED 点滅 : LD4( 緑 ) : 点灯 / 消灯切り替え // Timer2 割り込み内で GLB_uint16_vBlinkTimerStatusLED をデクリメントする // GLB_uint16_vBlinkTimerStatusLED が 0 になった時 呼び出される // 点灯 / 消灯を切り替えると同時に点灯時間 / 消灯時間をセットする // 引数 : // uint16_t uint16_timeon : 点灯時間 // uint16_t uint16_timeoff : 消灯時間 void BlinkStatusLED(uint16_t uint16_timeon, uint16_t uint16_timeoff); 16

6.4. Communicate_VCP 1) VCP の初期化 //--------------------------------------------------------------- // VCP Communication 初期化 : USB を VCP として使用するための初期化を行います //--------------------------------------------------------------- void InitializeCommunicate_VCP(void); 2) VCP 通信処理 VCP の受信待ちを行い 受信データを判定して LED の点灯 / 消灯を行います 受信データはエコーバックします //------------------------------------------------------------ // VCP 通信処理 //------------------------------------------------------------ // 戻り値 : // -1 : 処理中 // 0 : 終了 //------------------------------------------------------------ int16_t Communicate_VCP(void); 3) VCP 送信処理指定された送信データを指定数送信します ---- // VCP 送信処理 ---- // 引数 : // uint16_t uint16_sendlength : 送信データ数 // uint8_t *puint8_senddata : 送信データのポインタ ---- void SendVCP(uint16_t uint16_sendlength, uint8_t *puint8_senddata); 17

4) VCP 受信処理データ受信があった場合 受信データを取得して指定バッファにセットします ---- // VCP 受信処理 ---- // 引数 : // uint8_t *puint8_receivebuffer : 受信データを格納する Buffer のポインタ // 戻り値 : // -1 : 受信なし // 0 : Error // 1 以上 : 受信 byte 数 ---- int16_t ReceiveVCP(uint8_t *puint8_receivebuffer); 5) 受信コマンドの実行 -------------------- // 受信コマンドを実行する -------------------- // 引数 : // uint16_t uint16_receivelength : 受信データ数 // uint8_t *puint8_receivedata : 受信データが格納されている Buffer のポインタ // uint8_t *puint8_senddata : 応答送信データを格納する Buffer のポインタ // 戻り値 : 応答送信データ数 -------------------- uint16_t ExecuteCommandVCP(uint16_t uint16_receivelength, uint8_t *puint8_receivedata, uint8_t *puint8_senddata); 18

改訂履歴 V001 2014/07/05 初版 19