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

Similar documents
講習会 Arduino

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

スライド 1

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

Taro-テキスト.jtd


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

Microsoft Word - SU1201MotorDriverSheildManual.doc

スライド 1

<4D F736F F F696E74202D F4B87555F A838B B F5F91E63189F12E >

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

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

Arduino UNO IS Report No. Report Medical Information System Laboratory

PowerPoint Presentation

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

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

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

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

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

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

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

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

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

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

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

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

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

PowerPoint プレゼンテーション

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

Taro-テキスト.jtd

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

書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf

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

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

また RLF 命令は 図 2 示す様に RRF 命令とは逆に 各ビットを一つずつ 左方向に回転 ( ローテイト ) する命令である 8 ビット変数のアドレスを A とし C フラグに 0 を代入してから RLF A,1 を実行すると 変数の内容が 左に 1 ビットシフトし 最下位ビット (LSB)

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

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

DCモータの制御

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

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

論文番号 分 2-2 平成 24 年度全国情報技術教育研究会第 41 回全国大会 ( 新潟大会 ) Xbee を活用した無線通信の研究 期日平成 24 年 8 月 9 日 ( 木 )~10 日 ( 金 ) 場所長岡市シティホールプラザ アオーレ長岡 香川県立三豊工業高等学校 電子科 本行

Microsoft Word - Scratch編_プログラム見本-Web用.docx

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

スライド 1

Arduinoで組込み制御

研究成果報告書

Microsoft PowerPoint LC_15.ppt

スライド 1

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

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

PowerPoint プレゼンテーション

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

ReTRY HUB

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

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

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

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

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

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

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

ETCB Manual

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

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

Studuinoプログラミング環境

TOPPERS活用アイデア・アプリケーション開発

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

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

PowerTyper マイクロコードダウンロード手順

Microsoft Word - 4章.doc

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

スライド 1

HW-Slides-04.ppt

MW100 Modbusプロトコルによるデータ通信の設定について

USB_IR_Remote_Controller_Advance_Library 取扱説明書 2016/06/23 R03 Assembly Desk USB_IR_Remote_Controller_Advance_Library を使用すると 弊社製 USB IR Remote controll

Taro-82ADAカ.jtd

// USB_CNC_Machine リモート PIO 端末プログラムのメイン関数およびユーザアプリ部 // 編集作成 by Takehiko Inoue /*********** メイン関数 ***************************/ #pragma code

スライド 1

Microsoft Word - 実験4_FPGA実験2_2015

Microsoft Word - RC1504_インストールガイド_RevA2.doc

CommCheckerManual_Ver.1.0_.doc

講習会 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 - CygwinでPython.docx

Arduino をドリトルから 制御する教材の試行 鈴木裕貴 1

1. ネットワーク経由でダウンロードする場合の注意事項 ダウンロード作業における確認事項 PC 上にファイアウォールの設定がされている場合は 必ずファイアウォールを無効にしてください また ウイルス検知ソフトウェアが起動している場合は 一旦その機能を無効にしてください プリンターは必ず停止状態 (

Microsoft Word - VBA基礎(3).docx

情報処理 A/B プログラミング入門テキスト ~ PEN を使って基本を学んだ後で 活用してみよう ~ バージョン吉田智子編集 1. はじめにプログラミングを体験することで ハードウェアとソフトウェアから構成されるコンピューターの本質や それが作り出すコンピューター社会に対する認

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

Microsoft Word - Cプログラミング演習(9)

プログラミングA

内容 MD00Manager とは?... MD00Manager をインストールする.... ソフトのインストール... MD00Manager の使い方.... 起動をする... 機能説明...7 機能説明 ( メニューバー )...8 機能説明 ( ステータスバー )...8 機能説明 ( コ

7 ポインタ (P.61) ポインタを使うと, メモリ上のデータを直接操作することができる. 例えばデータの変更 やコピーなどが簡単にできる. また処理が高速になる. 7.1 ポインタの概念 変数を次のように宣言すると, int num; メモリにその領域が確保される. 仮にその開始のアドレスを 1

SiO-Programmer SiO-Programmer SiO コントローラ用パソコンソフト 取扱説明書 Rev 2.50 SiO-Programmer Ver2.60 対応 SUS Corporation SUS Corporation

Viewgo波形の連続格納ソフト

PowerPoint プレゼンテーション

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

データ構造

2CH DC (PU-2709) DC DC Arduino 製作に必要な部品などを表にまとめてみましょう 用意するもの 型番など 必要数 メモ Arduino Arduino UNO R3 1 パルスを作るマイコンボード 28BYJ-48 1 ACアダプター DC5V 1 DCジャック

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

Transcription:

arduino プログラミング課題集 ( Ver.5.0 2017/06/01 ) arduino と各種ボードを組み合わせ 制御するためのプログラミングを学 ぼう! 1 入出力ポートの設定と利用方法 (1) 制御( コントロール ) する とは 外部装置( ペリフェラル ) が必要とする信号をマイコンから伝える 外部装置の状態をマイコンで確認する 信号の授受は 入出力ポート 経由で行う (2) 入出力ポートとは? マイコンが外部装置とデータのやり取りをするための くち プログラムでやり取りする マイコンからデータ( 信号 ) を外部装置へ送り出すことを 出力 と呼ぶ 信号は基本的に デジタル ON/OFF だけを伝えることができる (3) 出力ポート マイコンから外部装置へ信号を送る 出力ポートにデータをセットすると コンピュータの外部に

それを送り出してくれる 出力したデータはポート自体に保持される ( 他のデータを送り出さなければ変化しない ) マイコン 出力ポート 外部装置 マイコン 入力ポート 外部装置

(4) 入力ポート 外部装置からマイコンに信号を取り込む マイコンが周辺装置から受け取ったデータを入力ポートが記憶する そこから変数等に読み込んで処理を行う 2 arduino のプログラミング (1) 開発環境 IDE マイコン 周辺装置を接続した状態にして USB 経由で PC に接続しておく プロジェクトを スケッチ と呼ぶ C 言語で記述する スケッチを作成したらコンパイルして arduino に書き込み 実行させる (2)arduino のプログラミング基本形 void setup() { 初期設定等を行う } void loop() { メインとなる処理 ( 無限ループ ) } (3) 入出力の初期化 ( イニシャライズ )

arduino のポートは入力 出力のどちらにでも設定できる すべての処理に先立って 入力 出力のどちらかに設定をする 通常 setup() の中に書いておく pinmode( ピン番号, OUTPUT または INPUT); ピン番号 pin2-13 自由に使えるデジタル入出力ピン入力は digitalread( ピン番号 ) 出力は digitalwrite( ピン番号, HIGH / LOW) A0 -A5 アナログ入力ピン pin 14-20 としてデジタルでも使える pin0, 1 は PC との通信用 基本構成次のように周辺装置と接続する 出力 pin9(msb) - pin2(lsb) 入力 pin17(msb) - pin10(lsb) ポート初期化プログラム void setup() { int i; // ポートの初期設定 for (i = 2; i <= 9; i++) pinmode(i, OUTPUT);

for (i = 10; i <= 17; i++) pinmode(i, INPUT); } (4) 出力 特定のピンに HIGH または LOW を出力 digitalwrite( ピン番号, HIGH / LOW); (5) 入力 特定のピンから信号を読み込む digitalread( ピン番号 ); 読み込んだデータを変数に記憶させるためには 変数名 = digitalread( ピン番号 ); (6) 変数の大きさ ( ビット数 ) int 型 16bit (unsigned も同様 ) long 型 32bit (unsigned も同様 ) char 型 8bit (unsigned も同様 ) (7)delay() 関数 時間待ちする ( だけの関数 ) 引数はミリ秒単位の数値

delay(1000); で約 1 秒待つ実行中は何も操作を受け付けないので注意 より短いタイマーには delaymicroseconds() を使う ( ) 内は unsigned int (16bit) 単位は [μs] 3~16,000 ぐらいで正確に動作する (8)PC との通信 ( シリアル通信 ) USB を経由して arduino と PC との間で通信ができる Serial.begin( データ転送レート ); Serial.print( 表示データ [, フォーマット ]); Serial.read(); データ転送レート (bps) 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200 PC 側は IDE で シリアルモニタ を起動してデータを送受信する ツール シリアルモニタ ショートカットは Ctrl + Shift + M arduino 側の受信は 何も入力がないとき -1 になる 2 arduino のプログラミング LED 制御 arduino 用マザーボードに LED ボードを接続して 点灯 消灯を制御す るプログラムを作成 動作させよう

( プログラム 1) LED を全部点灯させなさい (LED は負論理なので 8 ビットすべて 0 を出力すると点灯 ) ( プログラム 2) LED を全部消灯させなさい ( プログラム 3) LED の上位 4 ビットを点灯 下位 4 ビットを消灯させなさい ( プログラム 4) LED を交互に点灯 / 消灯させなさい ( プログラム5) LED 全部点灯 / 全部消灯を交互に繰り返しなさい (0.3 秒間隔で ) ポイント : 時間を稼ぐ=ディレイを使う ( プログラム6) LED 下位 4 ビットを使って 16 進カウンタを構成しなさい

( プログラム7) LED 下位 4 ビットを使って 10 進カウンタを構成しなさい ( プログラム8) 8 進リングカウンタを構成しなさい ( シフト演算を使う ) ( プログラム8) 8 進リングカウンタ 逆方向を構成しなさい ( シフト演算を使う ) ( プログラム9) 上下 4ビットずつ 4 進のリングカウンタを構成しなさい ( 最初へ戻る ) ( プログラム10) LED を高速に ON/OFF させ 輝度をコントロールしよう デューティー比 (ON/OFF の割合 ) や周期を変えてテストしよう 最終的には LED8 個とも輝度が変わって それが時間とともに変化しながら点灯することを目指す

3 LED とプッシュスイッチの制御 arduino 用マザーボードに LED ボードとプッシュスイッチボードを接続 して制御プログラムを作ろう ( プログラム 1) スイッチの入力値をそのまま LED へ出力しなさい ( スイッチ ON のビットのみ 対応する LED が点灯 ) ( プログラム 2) スイッチの入力値を論理反転して LED へ出力しなさい (OFF のビットのみ LED が点灯 ) ( プログラム 3) スイッチの LSB の ON/OFF で LED 全部を ON/OFF しなさい ( プログラム 4) スイッチの MSB の ON/OFF で LED を交互に ON/OFF しなさい (ON) (OFF) ( プログラム5) 押しているスイッチの個数を LED に表示しなさい ( 例 )0 個 3 個 7 個 8 個

( プログラム 6) スイッチの LSB の ON/OFF の回数を LED に正論理で表示しなさい 但し タイマーでチャタリングの対策を行うこと ( プログラム7) 256 進のバイナリカウンタを構成しなさい スイッチの LSB を押したらリセット (0) カウントは停止 スイッチの MSB を押したらカウント開始 停止 LSB を優先 ( プログラム8) リングカウンタを動作させなさい (LSB MSB の順にカウント ) 但しスイッチの MSB を押したときカウント開始 停止 スイッチの LSB を押したらリセット カウントは停止 LSB を優先 ( プログラム9) シフトカウンタを動作させなさい 最初に戻るスイッチの条件はプログラム8と同様とする 4 PC とのシリアル通信 入力にスチッチボード 出力に LED ボードを接続しておく データ転送速度は 9,600bps とする

( プログラム 1) LED を全部消灯し 通信の開始を知らせるメッセージを表示した後 1 秒 刻みでモニタ画面に arduino! と表示させなさい 改行すること ( プログラム2) LED を全部消灯し 通信の開始を知らせるメッセージを表示した後 1 秒刻みでモニタ画面にスイッチの状態を表示させなさい ON は 0 OFF は 1 で 00001111 ( 改行 ) のように表示させること ( プログラム3) LED を全部消灯し 通信の開始を知らせるメッセージを表示した後 PC からデータ 'a' を受信したら LED を全部点灯 'd' を受信したら LED を全部消灯 'x' を受信したら点灯 消灯状態を逆転させなさい