TMSx70 MCU の RTI(リアルタイム割り込み)を使用してオペレーティングシステムの Tick を発生させる方法

Similar documents
スライド 1

スライド 1

スライド 1

ディジタル電子回路 設計演習課題

割り込み 今までのプログラムは 順番にそって命令を実行していくのみ それはそれで良いが 不便な場合もある 例えば 時間のかかる周辺機器を使う場合 その周辺機器が動作を終了するまで CPU は待たなければいけない 方法 1( ポーリング ) 一定時間毎に 周辺機器の動作が終了したか調べる 終了していれ

Report Template

データ収集用 NIM/CAMAC モジュールマニュアル 2006/5/23 目次 クレート コントローラ CC/ NIM ADC 1821 (Seiko EG&G)...3 ADC インターフェイス U デッドタイム

スライド 1

Microsoft PowerPoint - RL78G14_動画マニュアル_タイマRD.ppt [互換モード]

スライド 1

NI 6601/6602 キャリブレーション手順 - National Instruments

スライド 1

VelilogHDL 回路を「言語」で記述する

FPGAによる24時間時計回路

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

Section 16. Output Compare

Jan/25/2019 errata_c17m11_10 S1C17 マニュアル正誤表 項目 リセット保持時間 対象マニュアル発行 No. 項目ページ S1C17M10 テクニカルマニュアル システムリセットコントローラ (SRC) 特性 19-3 S1C17M20/M

SOPC Builder ペリフェラル 簡易ユーザ・ガイド - PIO (Parallel I/O)

スライド 1

LaunchPadベースのMSP430 UART BSLインターフェイス

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

Microsoft PowerPoint LC_15.ppt

回路 7 レジスタ ( 同期イネーブル及び非同期リセット付 ) 入力データを保持するのに用いる記憶素子 使用用途として, マイクロプロセッサ内部で演算や実行状態の保持に用いられる Fig4-2 のレジスタは, クロック信号の立ち上がり時かつ 信号が 1 のときに外部からの 1 ビットデータ R をレ

02

QuartusII SOPC_Builderで利用できるGPIF-AVALONブリッジとは?

PowerPoint プレゼンテーション

スライド 1

実習内容 PIC18C242 のポート B に接続した LED を点滅させます ( 他の実習と同じ内容です ) 8 個の LED に表示される値が +3 ずつインクリメントします MPLAB を使って MPASM アセンブラのソース ファイルをアセンブルします MPLAB とソース ファイルは配布し

1 Atollic TrueSTUDIO( GR-PEACH TOPPERS/ASP ASP GR-PEACH mbed ( git

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

Microsoft Word - 実験4_FPGA実験2_2015

Notes and Points for TMPR454 Flash memory

スライド 1

Lab GPIO_35 GPIO

Verilog HDL による回路設計記述

-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

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

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

Microsoft PowerPoint - 3.3タイミング制御.pptx

PowerPoint Presentation

RL78開発環境移行ガイド R8C/M16C, H8S/H8SXからRL78への移行(統合開発環境編)(High-performance Embedded Workshop→CS+)

ヤマハDante機器と他社AES67機器の接続ガイド

UMB-CP2114 User's Manual

計数工学実験/システム情報工学実験第一 「ディジタル回路の基礎」

機能検証トレーニング コース一覧

AN

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

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

エンティティ : インタフェースを定義 entity HLFDD is port (, : in std_logic ;, : out std_logic ) ; end HLFDD ; アーキテクチャ : エンティティの実現 architecture RH1 of HLFDD is <= xor

注 ) CDをセットしてから プログラムが起動するまでの時間はパソコン CDドライブの性能によって差がありますが 概ね10 秒程度です 1 分間待ってもプログラムが起動しない場合は もう一度 CDをセットしなおしてください それでも起動しない場合 CDからの自動起動が無効になっている可能性があります

PowerPoint プレゼンテーション

Microsoft Word - Windows XP Service Pack 3 適用のご注意.doc

6

アジェンダ Renesas Synergy TM プラットフォーム構成 ThreadX とは ThreadX の状態遷移 ThreadX とμITRONの機能比較 まとめ ページ 2

0630-j.ppt

ウォッチドッグ・タイマ、ハード・プロセッサ・システム(HPS)のテクニカル・リファレンス・マニュアル(TRM)

回路 : Vdd GND 回路図と呼べるようなものではありません オシレータは外部 ( セラミック発振子 ) なので GP4 と GP5 は使えません 四角の枠内はモジュールなので ここから VDD GND TX RX の4 本をつなぐだけです 測定端子 (GP0) は 1MΩの抵抗と 2MΩの半固

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

Microsoft PowerPoint - kougi7.ppt

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

インストールの前に

2.RL78 での割り込み処理 ( 割り込み受け付け ) マスクが解除された (xxmk ビットが 0 の ) 割り込み要求信号は 2 つの用途で使用されます 一つ目は,CPU のスタンバイ状態の解除です この動作は, 割り込み優先順位とは全く無関係で, マスクされていない (xxmk=0 の )

【注意事項】RX Driver Package、 RXファミリ RTC モジュール Firmware Integration Technology

US-122MK2/144MK2_RN-J_RevF

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

オンチップ・メモリ クイック・ガイド for Cyclone III

オーバーサンプリングによる ADC12 の高分解能

三菱電機マイコン機器ソフトウエア株式会社

Microsoft PowerPoint - 集積回路工学_ ppt[読み取り専用]

S1C17 Family Application Note S1C17 シリーズ PORT 多重割り込みアプリケーションノート Rev.1.0

AN424 Modbus/TCP クイックスタートガイド CIE-H14

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

TC74HC4060AP/AF

LM5021 AC-DC Current Mode PWM Controller (jp)

モータ HILS の概要 1 はじめに モータ HILS の需要 自動車の電子化及び 電気自動車やハイブリッド車の実用化に伴い モータの使用数が増大しています 従来行われていた駆動用モータ単体のシミュレーション レシプロエンジンとモータの駆動力分配制御シミュレーションの利用に加え パワーウインドやサ

MU120138A 10ギガビットイーサネットモジュール 製品紹介

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

1.1 ラベル ラベルはカラム 1 から始まらなければならない ラベルの後にはコロン スペース タブ 改行が続いてよい ラベルはアルファベットかアンダーバーで始まり 英数字 アンダーバー クエスチョンマークを含んでよい ラベルは 32 文字までである デフォルトではこれらは大文字と小文字を区別するが

CLUSTERPRO MC StorageSaver for BootDisk 1.2 (for Windows) インストールガイド 2014(Mar) NEC Corporation はじめに 製品導入の事前準備 本製品のインストール 本製品の初期設定 本製品のアンインストール

M4Gグループ(1)_CEC-A

Virtex-6 Clocking

Transcription:

参考資料 Application Report JAJA237 TMSx70 MCU の RTI( リアルタイム割り込み ) を使用してオペレーティングシステムの Tick を発生させる方法 Hari Udayakumar 要約 このアプリケーションノートの目的は T M S x70 シリーズ MCU の RTI モジュールの設定方法の一助となることである TI の TMSx70 ファミリーの MCU はローパワー ビット RISC M CU ファミリーの一員で先進的なアーキテクチャ 豊富な周辺 セットを備えている 内容 1. イントロダクション...2 2. OSのためのティック生成...3 3. Appendix A Software Listing...7 説明図図 1. RTI Module Block Diagram...2 図 2. RTI Counter Block (x) Diagram...3 図 3. Operating System Tick Generation Block Diagram...3 図 4. RTI Clock Source Selection and Pre-Scaling...4 図 5. Operating System Tick Output Waveform...5 図 6. Software Flow Diagram...6 図 7. Output Waveform...6 この資料は Texas Instruments Incorporated(TI) が英文で記述した資料を 皆様のご理解の一助として頂くために日本テキサス インスツルメンツ ( 日本 TI) が英文から和文へ翻訳して作成したものです 資料によっては正規英語版資料の更新に対応していないものがあります 日本 TI による和文資料は あくまでも TI 正規英語版をご理解頂くための補助的参考資料としてご使用下さい 製品のご検討およびご採用にあたりましては必ず正規英語版の最新資料をご確認下さい TI および日本 TI は 正規英語版にて更新の情報を提供しているにもかかわらず 更新以前の情報に基づいて発生した問題や障害等につきましては如何なる責任も負いません SPNA123 翻訳版 最新の英語版資料 http://www.ti.com/lit/spna123

1 イントロダクション 1.1 リアルタイム割り込み R T Iモジュールは O Sのためのタイマー機能やコードのベンチマークに必要なタイマー機能を提供する このモジュールはマルチプルカウンターを備えており このマルチプルカウンターは OSのスケジューリングに必要なタイムベースを定義する このアプリケーションノートは TMSx70 RTI ユーザーガイドと併用して参照されるものである 主な特長 2 つの独立したカウンターブロックで構成 ( 異なったタイムベースを生成 ) それぞれのブロックは次のもので構成されている - ビットプリスケール カウンタ - ビットフリーラン カウンタ システムあるいは周辺割り込みのために 2つまでのタイムスタンプ ( キャプチャ ) それぞれのカウンタブロックに対して 1つ フリーラン カウンタ 0 は 内部プリスケール カウンタあるいは外部イベントによりインクリメント可能 ( クロック監視を含む FlexRayネットワークでのアプリケーションの同期のため ) 外部クロックが予め定義されたウィンドウの中でインクリメントされ故障と判断された場合は オプショナルの外部クロック監視回路によって内部のプリスケール カウンタ 0 に切り替え可能 OS 用のティックや DM Aリクエストのための 4つのコンフィギュアブル コンペアレジスタそれぞれのイベントはカウンタブロック 0あるいはカウンタブロック 1でドライブされる 全てのコンペアレジスタの自動アップデート ( コンペアマッチで周期割り込みを発生させるとき ) 割り込みの高速なイネーブル / ディスエーブル どのようなクロックソースから生成された R T Iクロック入力でも システムモジュールの中で選択可能 1. 2 RTI モジュール ブロック ダイヤグラム Event0 VIM REQ[2] DMA REQ[12] FlexRay Macrotick (NTU0) FlexRay Start of Cycle Counter Block 0 64 bit incl Flex Ray Feature Capture Feature Event1 VIM REQ[3] DMA REQ[13] Counter Block 1 64 bit Capture Feature Event2 VIM REQ[4] DMA REQ[18] Event3 VIM REQ[5] DMA REQ[19] 図 1. RTI Module lo k Diagram 2

1.3 RTI カウンタブロック (x) ダイヤグラム 下図 ( 図 2) はRTIカウンタブロック (X) の簡略化されたブロック図である はビットRTIUPCxカウンタでプリスケールされる RTIUPCxカウンタはRTICPUCxレジスタの中の比較値が到達するまでカウントアップする 比較値が一致すると RTIFRCxカウンタはインクリメントされる If CPUx 0 : FRCx 2 If CPUx! 0 : FRCx CPUCx 1 (1) 2 OS のためのティック生成 クコールを解りやすくするために 独立したI/Oピンはサンプルコードの中でトグルされている 異なったタイムベースを使ってタスクをトリガーするために 3つの異なった割り込みをどのように構成するかを このアプリケーションノートは示している ( 図 3を参照 ) 2.1 フロー図 第 3 図は割り込みを用いて 異なる時間間隔でタスクを起動する RTIモジュールの使い方を示します Compare 0 Interrupt Task1 (GIO- PortA [0] Pin Toggle) - 10mS. Compare 1 Interrupt Task2 (GIO- PortA [1] Pin Toggle) - 5mS. Compare 2 Interrupt Task3 (GIO- PortA [2] Pin Toggle) - 1mS. この項はある周期 ( 調整可能 ) でOSティック割り込みを発生するためのRTIモジュールの使い方を説明する 必要なOSティックの生成と それに相当するタスクを実行するために3つのコンペア割り込みが用いられる タス RTI 64-Bit Counter Block (x) RTICAUCx RTIUPCx RTICAFRCx RTIFRCx INT_Req or DMA_Req RTICPUCx RTICOMPx 図 2. RTI Counter lo k (x) Diagram 10ms Task 1 control block Real Time Interrupt OS GIOA [0] GIOA [1] GIOA [2] 5ms Task 2 control block 1ms Task 3 control block 図 3. Operating System Ti k Generation lo k Diagram 3

2.2 周波数と T カウントの計算について カウンタブロックへのはアプリケーションの要求にしたがって システムモジュールの中のSRC レジスタをプログラム可能である もし 源が VCLKだけの場合 源はVCLKよりも少なくとも 3 倍遅くなくてはならない これはSRCレジスタのRTIxDIVビットをコンフィグすることによって可能 図 4はSRCレジスタとRTICPUCxレジスタを使用しての選択とプリスケールを設定することを現している RTICPUCxレジスタを設定して を2 分の1にプリスケールします セクション 1.3 を参照してください 2.3 カウント値の比較の計算法 周期的な OS のティックのためのコンペアレジスタのカ ウント値は T カウント周期から計算で求められる は UP カウンタ (x) でプリスケールされ それぞれの フリーラン (x) カウンタに供給される Task1 = T1period = 10ms Task2 = T2period = 5ms Task3 = T3period = 1ms このように INT0 INT1 INT2の割り込みのために周期的なティックを発生することができる RITCLK VCLK 8 MHz 8 MHz FRC0CLK 4 MHz CPUC0 1 1 1 1 1 Tcount 0.25 s FRC0CLK 4 MHz (2) Compare 0 Count Value ( Task1) T1period 10 ms Tcount 0.25 s Compare 1 Count Value ( Task2) T 2period 5 ms Tcount 0.25 S 40000 20000 Compare 2 Count Value ( Task3) T 3period 1ms 4000 Tcount 0.25 S (3) DiffClk Sources RTIx SRC [3:0] RTIxDIV [3:0] RTIUPCx RTIFRCx SRC Reg RTICPUC 図 4. RTI Clo k Sour e Sele tion and Pre-S aling 4

2.4 OS ティック出力波形 5 2.5 OSティック生成のためのコンフィグレーション ( 手順 ) システムモジュールの中のSRCレジスタを使用して VCLKを選択する 次のクロック設定を選択 : HCLK OSCIN HCLK VCLK 2 VCLK (4) RTICOMP(x) レジスタとそれぞれのRTIUDCP(x) レジスタを (x) カウント値を初期化するために設定 GIOポートAを出力に設定 RTIモジュール割り込みを設定例 :RTISETINTとステータスレジスタ例 :RTIINTFLAG - 割り込みのペンディングをクリア - コンペア0, 1, 2 割り込みをイネーブル コンペア0 割り込みサービスルーチンは次のことを行うように設定 : - Comp0 割り込みフラグはRTIINTFLAGレジスタのINT0ビットに1を書き込みことによってクリアされる - GIO ポートA - ピン0をトグル コンペア1 割り込みサービスルーチンは次のことを行うように設定 : - Comp1 割り込みフラグはRTIINTFLAGレジスタのINT1ビットに1を書き込みことによってクリアされる - GIO ポートA - ピン1をトグル コンペア2 割り込みサービスルーチンは次のことを行うように設定 : - Comp2 割り込みフラグはRTIINTFLAGレジスタのINT2ビットに1を書き込みことによってクリアされる - GIO ポートA - ピン2をトグル 5

2.6 Software Flow Start Select RTI CLK source Configure UCx, CPUCx, FRCx Task 1 ISR Task 2 ISR Task 3 ISR Configure GIOA, COMPx Reg and UDCOMPx Reg Clear INT0 interrupt Clear INT1 interrupt Clear INT2 interrupt Enable the interrupt Toggle GIOA [0] Toggle GIOA [1] Toggle GIOA [2] Enable RTI Counter Block Check for Interrupt 6 2.7 Captured Output Waveform 7 6

3 付録 A ソフトウェアリスト 7

IMPORTANT NOTICE