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

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

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 ポート )

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

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

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

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 のフレキシブルケーブルの根元の部分はちょっと力を加えただけで表示が

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

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

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

CommCheckerManual_Ver.1.0_.doc

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

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

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

AKI-PIC16F877A開発キット (Ver1

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

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

Taro-82ADAカ.jtd

S7G2_e2std_USBX_CDC_ACM

TWE-Lite R 取扱説明書

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

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

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

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

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

Studuinoプログラミング環境

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

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

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

電子13-06 エネメータ専用ソフト SAVER CAST for EneMeter Ver3.00設定方法.ppt

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

スライド 1

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

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

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

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

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

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

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

起動画面

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

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

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

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

目次 1. 概要 動作環境

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

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

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

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

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

インターネット・メールのご利用手引き

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

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

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

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

ReTRY HUB

プロッタドライバインストールガイド プロッタドライバインストールガイド <OPS628>-Windows 7- <OPS628> Windows 7 環境 本説明書は グラフテックのホームページよりドライバをダウンロードして コンピュータにインストールする手順を説明したものです 内容をご確認のうえ

カルテダウンロード 操作マニュアル

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

開発環境構築ガイド

PA-S500 取扱説明書

商標類 Microsoft は, 米国およびその他の国における米国 Microsoft Corp. の登録商標です Microsoft Office は, 米国 Microsoft Corp. の商品名称です Microsoft Excel は, 米国 Microsoft Corp. の商品名称です

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

開発環境構築ガイド

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

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


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

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

CS-DRC1操作説明書

バーコードハンディターミナル BT-1000 シリーズセットアップガイド ( 第 1 版 ) CE ***

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

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

Microsoft Word - USB60F_Raspi_ doc

USB トークン (epass2003) ユーザマニュアル Ver2.0 1 / 25 Copyright 2018 Mitsubishi Electric Information Network Corporation All rights reserved.

Transcription:

CoIDE 用 STM32F4_UART2 の説明 V002 2014/03/30 STM32F4 Discovery の非同期シリアル通信ポート UART2 の送受信を行うプログラムです Free の開発ツール CoIDE で作成したプロジェクトサンプルです プログラムの開始番地は 0x08000000 です デバッグが可能です 提供する PC のアプリケーションの Access_SerialPort を使用して UART( 非同期シリアル通信 ) 送受信の試験を行うことができます 目次 1. UART について... 2 2. UART に使用する信号... 2 3. プログラム実行時の動作と確認... 4 3.1. 実行時の動作... 4 3.2. 動作確認... 4 1) アプリケーション Access_SerialPort のインストール... 4 2) Access_SerialPort アプリケーションの起動... 7 3) COM ポートと通信速度の選択... 8 4) 送信データのエコーバック... 10 5) 基板上の LED LD6( 青 ) の点灯 / 消灯... 11 4. プロジェクトの構成... 12 4.1. 独自に追加したソースフォルダ... 12 4.2. ルートのファイル... 13 5. 主なモジュールの説明... 13 5.1. HandleTimer2... 13 5.2. HandleUART... 14 5.3. main.c... 15 5.4. UserPrograms... 15 5.5. CommunicateHOST... 17 1

1. UART について UART は Universal Asynchronous Receiver Transmitter の頭文字をとったもので 非同期シリアル通信と呼ばれます シリアル通信とは 一本の信号線でデータをやりとりするために 1bit ずつデータを送出することをいいます データを受け渡すために 送信側が 1bit ずつ送り出し 受信側が 1bit ずつ取り込みます 通常 UART という場合 送受信のために 送信と受信に一本ずつ信号線を使用します また 送受信する機器同士の GND を接続します というわけで 信号線は 最低 3 本接続することになります 詳しくは UART( 非同期シリアル通信 ) の説明 をご覧ください 2. UART に使用する信号 STM32F4 Discovery の UART( 非同期シリアル通信 ) に使用する信号と接続相手との接続は以下の通りです 1) UART2 接続信号表 STM32F4 Discovery の UART 信号 番号 CPU 機能名 CPU 信号名 基板コネクタピン番号 方向 接続相手の信号名 1 USART2_TX PA2 P1-14 --- > RxD 2 2 USART2_RX PA3 P1-13 < --- TxD 3 3 GND GND P1-1, P1-2, P1-5, P1-23 P1-49, P1-50 P2-1, P2-2, P2-49, P2-50 < --- > GND 5 D-SUB 9S ストレート接続 2) RS232C ドライバ接続例 この例では DSUB-9S には TxD, RxD, GND の 3 本の信号以外は接続されません 2

3) PC との接続例 PC との接続は以下のようになります PC A USB ケーブル : 電源供給および ST-LINK のため USB ポート STM32F4 Discovery Mini B RS232C ドライバ RS232C 変換ケーブル DSUB-9S 図 2. 3) RS232C ドライバと DSUB-9S との接続は以下の通りです RS232C ドライバ DSUB-9S 1 RS2_TxD --- > 2 RxD 2 RS2_RxD < --- 3 TxD 3 GND < --- > 5 GND 3

3. プログラム実行時の動作と確認 3.1. 実行時の動作 1) プログラムを実行すると基板上の LED LD4( 緑 ) が 1 秒点灯 2 秒消灯で点滅します 2) UART2 ポートで LED ON/OFF コマンド以外のデータを受信するとエコーバックします 3) UART2 ポートで LED ON/OFF コマンドを受信すると 基板上の該当する LED の点灯 / 消灯を行います LED ON/OFF コマンドと LED との対応は以下のようになります a) LD3 ON LD3( 橙 ) が点灯します b) LD3 OFF LD3( 橙 ) が消灯します d) LD5 ON LD5( 赤 ) が点灯します e) LD5 OFF LD5( 赤 ) が消灯します f) LD6 ON LD6( 青 ) が点灯します g) LD6 OFF LD6( 青 ) が消灯します 3.2. 動作確認 UART( 非同期シリアル通信 ) のためのアプリケーション Access_SerialPort を使用して CPU 基板の送受信の確認 およびコマンド文字列を送信して基板上の LED の点灯 / 消灯を行います 1) アプリケーション Access_SerialPort のインストール Access_SerialPort_Install.zip をダウンロードして解凍すると 次ページのようにフォルダ Access_SerialPort_Install の下にインストールのためのファイルが格納されています 次ページに続く 4

setup.exe をダブルクリックすると次の警告のダイアログが開きます [ インストール (I)] ボタンをクリックしてインストールしてください アプリケーションがインストールされて自動的に Access_SerialPort が実行されて次ページのフォームが表示されます 5

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

2) Access_SerialPort アプリケーションの起動まず PC と STM32F4 Discovery とを RS232C インターフェースで接続してください スタートメニューの { Access_SerialPort } をクリックするとアプリケーション Accsess_SerialPort が起動して次ページのフォームが表示されます 7

3) COM ポートと通信速度の選択 COM 選択の ComboBox で COM を選択します 8

確認のメッセージが表示されるので よい場合は [ はい (Y)] ボタンをクリックします この例では COM8 に設定しました とメッセージが表示されています 通信速度は 9600bps でよいのでこのままにしておきます 次ページに続く 9

4) 送信データのエコーバック送信データの TextBox に ASCII 文字列を入力して [ 送信 ] ボタンをクリックすると CPU 基板にデータが送信されます CPU 基板はデータを受信して そのデータをそのまま PC に送信します PC が受信したデータは受信データの部分に表示されます 上記の例では 送信データに How are you? と入力して [ 送信 ] ボタンをクリックした結果 エコーバックのデータが受信データの欄に表示されています 次ページに続く 10

5) 基板上の LED LD6( 青 ) の点灯 / 消灯基板上の LED LD6( 青 ) を点灯 / 消灯するコマンドは以下のようになります a) 点灯 LD6 ON b) 消灯 LD6 OFF 上記の例では LD6 ON を入力して [ 送信 ] ボタンをクリックした結果 STM32F4 Discovery は LD6( 青 ) を点灯して OK : LD6 ON を応答データとして送信しました LD6( 青 ) を消灯したい場合は LD6 OFF を送信します LD3( 橙 ) LD5( 赤 ) についても同様にして点灯 / 消灯を行うことができます 確認してみてください 11

4. プロジェクトの構成 CoIDE で作成したプロジェクト STM32F4_UART2 を開いた状態を以下に示します 4.1. 独自に追加したソースフォルダ独自に追加したソースフォルダについて簡単に説明します 1) CommonModules 共通処理を記述しています 2) CommunicateHOST UART の通信処理を記述しています LED 点灯 / 消灯のコマンドを受信して処理を行います コマンド以外のデータを受信した場合はそのままデータを折り返し送信します 3) Handles Peripheral の設定などを行っています a) HandleTimer2.h HandleTimer2.c タイマ割り込みを使用するために タイマの初期設定を記述しています b) HandleUART.h HandleUART.c UART の初期設定と送受信の処理を記述しています 4) UserPrograms a) Status LED および LD3( 橙 ) LD5( 赤 ) LD6( 青 ) に使用している I/O の初期設定と点滅処理を記述しています 12

4.2. ルートのファイルルートの中の特に重要なファイルについて説明します 1) main.c main モジュールが記述されています プログラムはここから開始します I/O と UART の初期設定と UART の送受信モジュールの呼び出しを記述しています 2) stm32f4xx_it.c 割り込み処理を記述しています このプロジェクトでは Timer2 割り込みと UART の割り込み処理を記述しています 5. 主なモジュールの説明 5.1. HandleTimer2 1) Timer2 初期化 -------------- // Timer2 初期化 -------------- // uint16_t uint16_tim_pulse1 : Timer2 CH1 インターバル // uint16_t uint16_tim_pulse2 : Timer2 CH2 インターバル // uint16_t uint16_tim_pulse3 : Timer2 CH3 インターバル // uint16_t uint16_tim_pulse4 : Timer2 CH4 インターバル -------------- void InitializeTimer2( IO uint16_t uint16_tim_pulse1, IO uint16_t uint16_tim_pulse2, IO uint16_t uint16_tim_pulse3, IO uint16_t uint16_tim_pulse4); 2) Timer2 割り込み禁止 //Timer2 割り込み禁止 void DisableIrqTim2(void); 3) Timer2 割り込み許可 //Timer2 割り込み許可 void EnableIrqTim2(void); 13

5.2. HandleUART 1) UART2 の初期化 //------------------------------------------------- // UART2 初期化 //------------------------------------------------- // uint32_t uint32_baudrate : 通信速度 bps //------------------------------------------------- void InitializeUART2(uint32_t uint32_baudrate) 2) UARTx の初期化 ( 共通処理 ) UART 番号やピン番号を指定して 希望の UART を初期化します -------------------------------- // UARTx 初期化 -------------------------------- // uint32_t uint32_baudrate : 通信速度 bps // uint32_t RCC_AHB1Periph_GPIOx : specifies the AHB1 peripheral to gates its clock. // uint32_t RCC_APBxPeriph_USARTx : specifies the APB1 peripheral to gates its clock. // GPIO_TypeDef *GPIOx : where x can be (A..H) to select the GPIO peripheral. // uint8_t GPIO_PinSourceTx : GPIO_PinSource : specifies the pin for the Alternate function. : TX // uint8_t GPIO_PinSourceRx : GPIO_PinSource : specifies the pin for the Alternate function. : RX // uint8_t GPIO_AF_USARTx : selects the pin to used as Alternate function. : USART1..3 // uint16_t GPIO_Pin_Tx : GPIO_Pin : specifies the port bit. : TX // uint16_t GPIO_Pin_Rx : GPIO_Pin : specifies the port bit. : RX // USART_TypeDef* USARTx : where x can be 1, 2, 3, 4, 5 or 6 to select the USART or UART peripheral. // (STM32F4 Discovery では 2 と 3 のみ使用可能 ) // uint8_t USARTx_IRQn : STM32 specific Interrupt Numbers // int16_t *GLB_pint16_UARTxReceiveIRQ : 受信割り込み ON/OFF フラグのポインタ -------------------------------- void InitializeUARTx(uint32_t uint32_baudrate, uint32_t RCC_AHB1Periph_GPIOx, uint32_t RCC_APBxPeriph_USARTx, GPIO_TypeDef *GPIOx, uint8_t GPIO_PinSourceTx, uint8_t GPIO_PinSourceRx, uint8_t GPIO_AF_USARTx, uint16_t GPIO_Pin_Tx, uint16_t GPIO_Pin_Rx, USART_TypeDef* USARTx, uint8_t USARTx_IRQn, int16_t *GLB_pint16_UARTxReceiveIRQ ); 14

5.3. main.c 1) 使用するクロックの初期化 void RCC_Configuration(void); 2) I/O の初期化 void Init_GPIOs(void); 5.4. UserPrograms 1) LED に使用する I/O の初期化 ( 共通処理 ) 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 の初期化 // Status LED ポート初期化 : LD4( 緑 ) void InitializePortStatusLED(void); // LD3( 橙 ) ポート初期化 void InitializePortLD3(void); // LD5( 赤 ) ポート初期化 void InitializePortLD5(void); // LD6( 青 ) ポート初期化 void InitializePortLD6(void); 4) Status LED : 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

5.5. CommunicateHOST 1) UART の初期化 //----------------------------------------------------------- // HOST 通信パラメータ初期化 //----------------------------------------------------------- // uint32_t uint32_baudrate : 通信速度 //----------------------------------------------------------- void InitializeCommunicateHOST(uint32_t uint32_baudrate); 2) HOST 通信処理受信処理を行い 受信コマンドを処理して応答データを送信します //------------------------------------------------------------ // HOST 通信処理 //------------------------------------------------------------ // 戻り値 : // -1 : 処理中 // 0 : 終了 //------------------------------------------------------------ int16_t CommunicateHOST(void); 次ページに続く 17

3) UART 送信処理送信バッファにセットされたデータを指定された byte 数だけ送信します ---- // UART 送信処理 ---- // uint16_t uint16_sendlength : 送信データ数 // uint8_t *puint8_data : 送信データのポインタ ---- void SendUART(uint16_t uint16_sendlength); 4) UART 受信処理受信の有無を判定して 受信があった場合 受信データを Buffer にセットします ---- // UART 受信処理 ---- // uint8_t *puint8_receivebuffer : 受信データを格納する Buffer のポインタ // 戻り値 : // -1 : 受信なし // 0 : Error // 1 以上 : 受信 byte 数 ---- int16_t ReceiveUART(uint8_t *puint8_receivebuffer); 5) HOST コマンドの実行受信コマンドを判定してそれぞれの処理を行います -------------------- // HOST コマンドを実行する -------------------- // uint16_t uint16_receivelength : 受信データ数 // uint8_t *puint8_receivedata : 受信データが格納されている Buffer のポインタ // uint8_t *puint8_senddata : 応答送信データを格納する Buffer のポインタ // 戻り値 : 応答送信データ数 -------------------- uint16_t ExecuteCommandHOST(uint16_t uint16_receivelength, uint8_t *puint8_receivedata, uint8_t *puint8_senddata); 18

改訂履歴 V001 2014/03/26 初版 V002 2014/03/30 説明追加 19