スライド 1

Similar documents
講習会 Arduino

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

Microsoft Word - SU1204教本(Driver)原稿.docx

スライド 1

SpeC記述のC記述への変換 (SpecCによるソフトウェア記述の実装記述への変換)

PowerPoint Presentation

Arduino UNO IS Report No. Report Medical Information System Laboratory


PowerPoint プレゼンテーション

講習会 Arduino

ESP8266-CORE-R Copyrig

ESP32-KEY-KIT-R1 (ESP-WROOM-32 ) Copyright c 2

Arduinoで組込み制御

<4D F736F F F696E74202D F4B87555F A838B B F5F91E63189F12E >

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

図 1 で示すように割り込み作業に対応していない間は CPU が他の作業を行えま す 割り込みが発生した時に作業中の仕事を一時停止し 割り込みハンドラに 入ってタスクを実行します 割り込み作業が終わった後停止した作業を再開し ます 割り込み対応コードが停止したプロセスに影響ありますので なるべく 最

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

Taro-テキスト.jtd

Arduino の勉強会 平成 23 年 1 月 5 日於 : 鳥取大学

Microsoft Word - SU1203教本(Sens)原稿.docx

MODLINK-2 Arduino&IoT 組立式開発ボード Manual モジュリンク 2 取扱説明書

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

ETCB Manual

スライド 1

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

Microsoft Word - SU1201MotorDriverSheildManual.doc

Microsoft Word - SU1202教本(Disp)原稿.docx

DCモータの制御

Microsoft Word - マイコンを用いた信号# doc

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

マルチタスクプログラミング.pptx

<4D F736F F F696E74202D F4B87555F A838B B F5F91E63389F12E >

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

スライド 1

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

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

8051 개발보드 메뉴얼

1 1 TA, ,9 1. ( 2. TM TM GUI TM 1. P7-13 TM Notepad, Meadow, ( P109 ). 2. (shisaku01/sys test)

Microsoft PowerPoint - timer_pwm2.pptx

PIC

正転時とは反対に回転する これが逆転である 図 2(d) の様に 4 つのスイッチ全てが OFF の場合 DC モータには電流が流れず 停止する ただし 元々 DC モータが回転していた場合は 惰性でしばらく回転を続ける 図 2(e) の様に SW2 と SW4 を ON SW1 と SW3 を O

スライド 1

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

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

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

プリント

Łñ“’‘‚2004


スライド 1

製åfi†æ¡‹åƒ–.xlsx

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

みんなの Arduino 入門 課題と演習 本資料は みんなの Arduino 入門 を使っている方々への課題 ( 演習含む ) を参考としてま とめたものです 本書の理解度の確認と今後のステップアップのためにご利用下さい ( 最終更新日 :2014 年 4 月 25 日 ) 株式会社タブレイン T

スライド 1

スライド 1

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

Microsoft Word - 実験4_FPGA実験2_2015

初心者のための RL78 入門コース ( 第 3 回 : ポート出力例 2 とポート入力 ) 第 3 回の今回は, 前回作成したプログラムを RL78/G13 のハードウェアを用いて見直しをお こないます 今回の内容 8. コード生成を利用した実際のプログラム作成 ( その 2) P40 9. コー

Arduino をはじめよう オープンソースハードウェア入門 ~ Arduino( アルドゥイーノ ) 始めてみませんか?

Microsoft PowerPoint - dsp12_2006.ppt

3 5 動作試験 変調せず超音波を出し続ける (DC 出力) と, 最初の 15 秒程度は ピーーー という高周波音が聞こえ, そ れから ブブブブ というノイズが混ざり始めた. DC 出力の超音波焦点を電子秤に照射したところ, 最初は 0.60 g と表示されるものの, ノイズが混ざり始めると 0

次に プログラム中の定数について解説する PINNO は圧電スピーカーと接続されたピンの番号に対応している FL,FR,BL,BR はそれぞれ 前面左, 前面右, 背面左, 背面右に設置されたスイッチに接続されているピンの番号に対応している スイッチ回路のプルアップ抵抗は Arduino 内部のもの

-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

Microsoft Word - 本文.doc

INDEX 1 必要なものを準備しよう 各部の名称を確認しよう 電源を入れよう スイッチで LED を光らせよう BiZduino で Wi-Fi 通信しよう RTC を使ってみよう 参考資料 7 困ったら... 21

<4D F736F F D B D A778F4B835A EC B290882E646F63>

Arduinoで計る,測る,量る

Arduino Processing and ) Fig1. Arduino Homepage : h;p://

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

057 { 058 int i; 059 timecounter=0; 060 pwmvalue=0;x=0;v=0; 061 requestdisplaydata=1; 062 tick=1; 063 for (i=0; i<rbuffsize; i++) { 064 ringbuffer[i]=

PowerPoint プレゼンテーション

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

Taro-テキスト.jtd

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

スライド 1

Untitled

今回の内容 マイクロコンピュータにおけるプログラミング 機器の中に組み込まれる ロボット 自動車 家電 などいろいろな分野で利用 プログラムを用いて外部の装置を動作させる マイコンから の出力 発光ダイオード Light Emitting Diode 液晶ディスプレイ Liquid Crystal

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

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

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

Lab GPIO_35 GPIO

前回の内容 マイクロコンピュータにおけるプログラミング PC上で作成 コンパイル マイコンに転送 実行 プログラムを用いて外部の装置を動作させる LED turnonled turnoffled LCD printf プログラムを用いて外部の装置の状態を読み取る プッシュスイッチ getpushsw

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

Mathematica で Arduino を利用する (2012 年度 ) はじめに情報工学部では全学科で Arduino を導入して フィジカルコンピューティングに関連した教育を行ってきている 電子情報工学科ではいくつかの実験演習を通じて Arduino を取り入れてきている ここでは 電子情報

slide

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

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

Processingをはじめよう

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

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

IntroductionForGR-PEACH.pptx

マイコンボードの LED 制御 準備編その 1 マイコンとノート PC の役割 どうすれば LED は光るの? 光らせる LED の選択は? マイコン端子に接続された LED マイコン端子の電圧設定 制御用ソフトウェアの注意点 1


Java講座

CCD リニアイメージセンサ用駆動回路 C CCD リニアイメージセンサ (S11155/S ) 用 C は 当社製 CCDリニアイメージセンサ S11155/S 用に開発された駆動回路です S11155/S11156-


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

マイコンプログラミング講座

FlashAirの本_web.indd

mbed祭りMar2016_プルアップ.key

C言語によるアルゴリズムとデータ構造

Transcription:

マイコンをはじめよう 割り込みを使おう 徳島大学大学院ソシオテクノサイエンス研究部 技術専門職員辻明典 連絡先 : 770-8506 徳島市南常三島町 2-1 TEL/FAX: 088-656-7485 E-mail::a-tsuji@is.tokushima-u.ac.jp

割り込みを使おう 第 8 回 2013/9/14(Sat) 10:00 11:30 2

本日の予定 1 割り込みについて 2 タイマ割り込み 3 外部割り込み 4 割り込みでブザーを鳴らそう 3

本日の回路 割り込みスイッチとブザー 4

1 割り込みについて 5

1.1 マイコンのプログラム 基本構成 ポートの初期化 init() setup() 割り込み関数 無限ループ ポーリング関数 ポーリング while(1) loop() 割り込みが発生したときにのみ呼ばれる関数 ISR: Interrupt Service Routine 割り込み要因 : 内部, 外部何がきっかけ? 割り込み 6

1.2 ポーリング ポーリング関数の実行 void main() { init(); // ハードウェア初期化 タスク setup(); // ユーザによる初期設定 while (1) { // 無限ループ loop(); // タスク : ポーリング関数 時間 7

1.3 ポーリングと割り込み ポーリング関数と割り込み関数の実行 タスク 割り込み発生 int main() { init(); setup(); // ハードウェア初期化 // ユーザによる初期設定 割り込み関数 while (1) { // 無限ループ loop(); // タスク実行 ( ポーリング ) 時間 void isr() { // 割り込み関数 // タスク実行 8

2 タイマ割り込み 9

2.1 タイマ割り込み 周波数と周期周波数 (f) 1 秒間に繰り返し発生するイベントの回数周期 (T) 繰り返しイベントの発生間隔周波数と周期の関係 : f = 1 / T T マイコンの動作周波数 16 MHz 時間 新生児の脈拍 : 120 times / minute 周期 T= 0.5 (sec) 周波数 f = 2.0 Hz (2 times / sec) 10

2.2 タイマ割り込み ポーリング使用 タイマ割り込み使用 T ISR ウェイト関数 delay(ms) for(i=0;i<n;i++;); T? T T ISR ISR ISR 時間 時間 割り込み関数が正確な時間に呼ばれる 11

2.3 タイマの種類 マイコン : Arduino UNO (AVR 社 ATmega328P) 3 種類のタイマ : タイマ 0, タイマ 1, タイマ 2 タイマ 0:8 ビット -delay(), millis(), micros() 関数に使用タイマ 1:16 ビット -Servo モータライブラリに使用 -TimerOne ライブラリに使用タイマ 2:8 ビット -tone() 関数に使用 -MsTimer2 ライブラリに使用 -3 番ピン,11 番ピンの PWM との 併用不可 12

2.4 タイマライブラリの利用 MsTimer2 Library: 1 ミリ秒単位でタイマ割り込みを発生させる 1. MsTimer2.zipを展開 2. MsTimer2フォルダを C: arduino-1.0.5 libraries に移動 3. Arduinoを実行 4. File -> Examlpes -> MsTimer2 -> FlashLed 5. サンプルスケッチを実行 Mar 3, 2012, The University of Tokushima,

E8.1 タイマ割り込み FlashLED: タイマ割り込みにより 500 ミリ秒ごとに LED を ON,OFF #include <MsTimer2.h> const int ledpin = 13; // 割り込み関数 void flash() { LED static boolean output = HIGH; digitalwrite(ledpin, output); 500ms 500ms 500ms output =!output; // toggle the LED 1.0 s void setup() { pinmode(ledpin, OUTPUT); MsTimer2::set(500, flash); // 500ms 周期, 割り込み関数 isrflash() MsTimer2::start(); // タイマの開始 void loop() { // Nothing to do 割り込み Mar 3, 2012, The University of Tokushima, ON OFF

3 外部割り込み 15

3.1 外部割り込み ポーリングによる実行 外部割り込みによる実行 割り込み発生 ( スイッチが押された ) タスク スイッチが押されたか? 割り込み関数 時間 常に監視が必要 時間 変化があったときのみ 16

3.2 外部割り込みのピン Arduino UNO 外部割り込み : 2 番ピン,3 番ピン 電源 3.3V 5V GND GND デジタル 0~13 アナログ A0 ~ A5 I2C: A4(SDA)A5(SCL), シリアル :D0(RX), D1(TX) SPI: 11(MOSI), 12(MISO), 10(SS), 13(SCK) PWM:3, 5, 6, 10, 11, ExtINT:2, 3, LED: 13 17

3.2 外部割り込みの種類 ( 要因 ) 立ち下がりエッジ FALLING 立ち上がりエッジ RISING ピン変化 CHANGE ローレベル LOW Mar 3, 2012, The University of Tokushima,

E8.2 スイッチによる割り込み スイッチを押すたびに LED が ON,OFF const int ledpin = 13; const int intpin0 = 2; // interrupt 0, pin(2) 立ち下がりエッジ volatile int state = LOW; void setup() { pinmode(ledpin, OUTPUT); digitalwrite(intpin0, HIGH); // set HIGH state pinmode(intpin0, INPUT); attachinterrupt(0, isrswitch, FALLING); // switch pin on interrupt 0 (pin 2) void loop() { digitalwrite(ledpin, state); void isrswitch() { state =!state; // NO delay function in the interrupt function Mar 3, 2012, The University of Tokushima,

4 割り込みでブザーを鳴らそう 20

4.1 tone() 関数の利用 tone() 関数 タイマを使って方形波を作り出す関数 タイマカウンタ 255 OCR2x 0 t tone 出力 H L Mar 3, 2012, The University of Tokushima, t

void setup() { E8.3 tone 関数による音の生成 Sketch Example -> Digital->toneMultiple void loop() { tone(6, 440, 200); delay(200); notone(6); tone(7, 494, 500); delay(500); notone(7); // ピン6,440Hzを200ミリ秒発生 // ピン6の出力停止 // ピン7,494Hzを 500ミリ秒発生 // ピン7の出力停止 tone(11, 523, 300); // ピン11,523Hzを 500ミリ秒発生 delay(300); notone(11); // ピン11の出力停止 Mar 3, 2012, The University of Tokushima,

23