はじめに
今回は、オンセミ社のRSL10でLED点灯(以下よりLチカと記載)をおこないます。RSL10の評価・開発ボード上の、LED1(DIO6)を点灯させます。
この記事では、初めてRSL10を評価する方や、これから開発する方にLチカする方法を案内します。
RSL10の製品紹介は、こちらの記事を参照ください。
用意するものと開発ツール
・RSL10-SIP-001GEVB:RSL10の評価ボード
・onsemi IDE:Eclipse®ベースの統合開発環境です。
開発環境の準備
1. RSL10の製品ページにアクセスします。 製品ページへのリンクはこちら
2. メインページのダウンロードボタンを使用します。
3. RSL10 Started Guideをダウンロードし、詳細な説明をお読みください。
4. EclipseベースのオンセミIDEインストーラーをダウンロードし、インストールします。
5. RSL10 CMSIS Packを含むRSL10 Software Packageをダウンロードし、解凍します。
6. RSL10 Started Guideの指示に従って、CMSISパックをインストールします。
手順を以下に示します。
RSL10 CMSISパックインストール手順
1. 互換性を確保するために、IDE の新しいバージョンごとに新しいワークスペースを作成することが重要です。
Windows ExplorerまたはON Semiconductor Launcher in step 2のいずれかを使用して、新しいワークスペースを作成します。
例) c:\workspace
2. Windows の [スタート] メニューから[ON Semiconductor] > [ON Semiconductor IDE]を選択し開きます。
ON Semiconductor IDE Launcher 画面から、新しいワークスペースを参照します。[Launch] を選択しクリックします。
3. Workbench パースペクティブの最上段で、"Make the CMSIS Packs Manager Perspective visible" アイコンをクリックし開きます。(下図1参照)
4. “Import Existing Packs”アイコンをクリックし、パックファイルONSemiconductor.RSL10.<version>.packを選択します。
ここで、<version>は3.1.575のような数字です。
選択し、[Open]をクリックします(下図2参照)
5. IDEは、使用者にライセンス契約を読み、同意するよう促し、RSL10 CMSIS-Pack を指定されたルートフォルダーにインストールします。
6. インストールされているパックのリストにRSL10 CMSIS-Packが表示されるようになります。
[デバイス]タブで、All Devices > ONSemiconductor > RSL10 Series を展開すると、そこに RSL10のリストが表示されます。
インストールしたパックは、[Packs]タブで管理できます。
ONSemiconductor > RSL10 を展開すると、[Pack Properties] タブが表示されます。
下図3は、インストール後の Pack Manager Perspectiveの様子を示しています。
onsemi IDEで設計スタート
Lチカサンプルコードのインポート
1. オンセミ社の IDE の起動をおこないます。
ON Semiconductor IDE を開くには、Windows の [スタート] メニューから [ON Semiconductor] > [ON] を選択します。
2. 「Example」タブをクリックすると、RSL10 CMSIS-Packに含まれるすべてのサンプルプロジェクトが一覧で表示されます。
3. blinkyというサンプルプロジェクトを選択し、コピーボタンをクリックして、ワークスペースにインポートします。(下図4参照)
4. Project Explor上に C/C++が開き、新しくコピーされたプロジェクト(blinky)が表示されます。
5. Project Explorer上のblinkyフォルダーの中のapp.cをクリックする事でLチカに関するC言語でのコードが確認できます。(下図5参照)
Lチカサンプルコードのビルド方法
1. blinky用のフォルダーを右クリックし、Build Projectをクリックします。または、プロジェクトを選択し、[Build Project]をクリックします。
または図6に示すように、ハンマーのようなアイコン、Build Projectを表示します。
2. ビルドが実行されると、図7に示すようにビルドの出力がオンセミIDE C/C++上で表示されます。
3. プロジェクトエクスプローラー上のDebugフォルダーに出力される主な結果は以下の通りです。図8に示します。
Lチカをするにあたって使用するファイルはblinky.elfになります。
- blinky.hex:フラッシュメモリーにロードするためのHEXファイル
- blinky.elf::Arm®の実行ファイル、RAMから実行、デバッグに使用される
- blinky.map:セクションとメモリー使用量のマップファイル
Lチカサンプルコードのデバック方法
blinky.elfファイルを用いてデバックをおこないます。
1. Project Explorer内でblinky.elfファイルを右クリックし、Debug As > Debug Configurationsを選択します。
2. Debug Configurationsダイアログが表示されたら、GDB SEGGER J-Link Debuggingを右クリックし、New Configurationを選択します。
GDB SEGGERの見出しの下にblinkyの新しいコンフィギュレーションが表示されます。
右側のパネルに新しいコンフィギュレーションの詳細が表示されます。
3. Debuggerタブに移動し、「デバイス名」欄に「RSL10」と入力します。ターゲット・インターフェースにSWDが選択されていることを確認してください。(下図9参照)
4. コンフィギュレーションの更新が完了したら、評価・開発ボードをマイクロUSBケーブルでPCに接続し、デバッグをクリックします。
J-Linkは自動的にblinkyというサンプルコードをダウンロードし、RSL10 のフラッシュメモリーに保存します。
5. Lチカを確認することができました。(下図10参照)
Lチカ点灯時間変更方法
1. app.cファイルの中身を確認するとled_toggle_status(LEDの点灯状況)とSys_Delay_Program ROM(時間に関する記述)が確認できます。(下図11参照)
2. Sys_Delay_Program ROMの箇所でF2を押すことで、どのようなコードを書いているかを確認できます。(下図12参照)
Descriptionの箇所に少なくとも指定されたクロックサイクル数だけ遅延させると記載があります。
3. App.cのコード内の137行目の、
Sys_Delay_ProgramROM((uint32_t)(2.0 * SystemCoreClock));
SystemCoreClock前の数字を変更することで点灯時間を変更することができます。
RSL10を使用してLチカするうえで困ったとき
Blinkyファイルの中にあるReadme_blinky.mdをクリックして内容を確認してください。(下
Readme_blinky.mdの内容を以下に示します。
概要
1. DIO6をトグル出力信号として使用します。このDIO6 は、評価・開発ボード上の LED が点滅するように選択されています。
2. DIO5を入力信号として使用し、DIO6のトグリングの無効化、再有効化をおこないます。
このDIOを選択することにより、評価・開発ボード上のDIO接続に接続された押しボタン入力スイッチを使用して、DIO6のトグル状態を変更することができるように選択されています。
ソースコードは`app.c`にあり、ヘッダーファイルは定義されていません。
ハードウェア要件
このアプリケーションは、RSL10 評価・開発ボード上で実行することができます。
このアプリケーションは外部接続を必要とせず、RSL10 評価開発ボードで実行できます。
プロジェクトのインポート
IDEのワークスペースにサンプルコードをインポートする方法については、本記事のonsemi IDEで設計スタートのLチカサンプルコードのインポートを参照してください。
検証
本アプリケーションが正常に動作していることを確認するために、評価用開発ボードのDIO6を連続的に点滅させます。
備考
RSL10 のファームウェアは、アプリケーションのスリープモードやリセットの継続により、正常に再フラッシュできないことがあります。(設計、またはプログラムミスによるものです)
このシナリオを回避するために、DIO12を使用したソフトウェアリカバリーモードを実装することができます。以下に手順を示します。
1. DIO12をグランドに接続してください。
2. RESETボタンを押してください(初期化ルーチンの開始で一時停止していたアプリケーションが再起動します)。
3. RSL10を再フラッシュします。再フラッシュが成功したら、DIO12をグランドから外し、RESETボタンを押します。するとアプリケーションが正常に動作します。
最後に
今回はオンセミ社のRSL10でLチカをおこないました。次回(第2弾)はRSL10でセンシングをおこないたいと思います。
お問合せ
今回紹介した内容及び製品にご興味がある方は、ぜひお問い合わせください。
オンセミ メーカー情報Topへ
オンセミ メーカー情報Topに戻りたい方は以下をクリックしてください。