組込み開発のための実践的プログラミング
鷹合 大輔
近代科学社AVRへの実装をとおして徹底的に学ぶ!! 本書は,金沢工業大学で長年にわたり組込み教育に関わった著者らが,その経験から得た知見を整理したものである.小規模のマイコンを徹底的に活用する中で,組込みプログラムの基礎技術を学べる構成となっている.
【注意】本書のEPUB版は固定レイアウト型になっております。文字の大きさの変更や検索、引用などはお使いいただけません。画面の大きい端末でご利用ください。
書籍情報
著者: 鷹合 大輔
共著者: , 田村 修
発行日: 2018-05-29
最終更新日: 2018-05-29
バージョン: 1.0.0
ページ数: 238ページ(PDF版換算)ページ
対応フォーマット: PDF, EPUB
出版社: 近代科学社
対象読者
組込みシステム,プログラミング,マイコン,AVR,Arduinoに興味がある人
著者について
1976年生.金沢工業大学大学院工学研究科博士後期課程修了博士(工学).株式会社テクノマセマティカルIP 開発部研究員を経て金沢工業大学工学部情報工学系講師.
目次
目次
序章 この本について
- 0.1 はじめに
- 0.1.1 本書の構成
- 0.1.2 本書の使い方
- 0.1.3 サポートサイト
1 基礎知識
- 1.1 組込み機器の構成
- 1.1.1 組込み機器
- 1.1.2 マイクロコントローラ
- 1.1.3 マイコン搭載の回路基板
- 1.1.4 電子回路の基礎
- 演習問題
- 1.2 AVRマイコンのプログラム開発
- 1.2.1 ATmega88PAマイコン
- 1.2.2 AVRマイコンボードEMB-88
- 1.2.3 AVRマイコンのCプログラム開発環境の概要
- 1.2.4 AVRマイコンのプログラム例,プログラミング時の留意事項
- 演習問題
2 組込みプログラミング入門
- 2.1 GPIOポートの使い方1
- 2.1.1 ポート制御関係のレジスタの設定方法
- 2.1.2 LED1/2の制御
- 2.1.3 ブザーの音程制御
- 2.1.4 LEDとブザーの併用
- 演習問題
- 2.2 GPIOポートの使い方2
- 2.2.1 マトリクスLEDの制御
- 2.2.2 スイッチの読み取りとチャタリング
- 演習問題
- 2.3 周辺機能と割り込み
- 2.3.1 マイコンの周辺機能とマルチファンクションピン
- 2.3.2 マイコンの周辺機能と割り込み機能
- 2.3.3 AVRマイコンのイベント処理について
- 2.4 ピン変化割り込み機能の使い方
- 2.4.1 ピン変化割り込み関係のレジスタの設定方法
- 2.4.2 ピン変化割り込みを使ったスイッチの読み取り
- 演習問題
- 2.5 内蔵タイマ機能の使い方1
- 2.5.1 タイマ関係のレジスタの設定方法
- 2.5.2 タイマ周期の計算方法
- 2.5.3 タイマの動作確認
- 2.5.4 タイマ割り込みの動作確認
- 2.5.5 タイマ割り込みの活用
- 演習問題
- 2.6 内蔵タイマ機能の使い方2
- 2.6.1 コンペアマッチ出力機能の利用
- 2.6.2 PWM出力モードの利用
- 2.6.3 8ビット高速PWM(OC2A)によるLEDの調光
- 2.6.4 8ビット高速PWM(OC2B)によるブザーの音程と音量調整
- 2.6.5 8ビット位相補正PWM(OC1A)によるLEDの調光
- 演習問題
- 2.7 USARTシリアル通信機能の使い方
- 2.7.1 シリアルターミナルを使ったマイコンとの通信
- 2.7.2 USART関係のレジスタの設定方法
- 2.7.3 EMB-88マイコンボードを使ったUSART通信
- 2.7.4 送受信の確認
- 2.7.5 USART割り込みの動作確認
- 2.7.6 バッファの利用
- 演習問題
- 2.8 ADC機能の使い方
- 2.8.1 アナログ信号のサンプリングと量子化
- 2.8.2 AVRマイコンのADC回路
- 2.8.3 ADC関係のレジスタの設定方法
- 2.8.4 EMB-88マイコンボードでADCを行う前に
- 2.8.5 ADC動作の確認(ADC5)
- 2.8.6 ADC完了割り込みの利用
- 2.8.7 マトリクスLEDを光センサのバーインジケータとして使う
- 2.8.8 ADC変換結果のシリアル通信
- 演習問題
- 2.9 フレームワークベースのアプリケーション開発
- 2.9.1 フレームワークとユーザ処理
- 2.9.2 PC用フレームワークの活用
- 演習問題
3 組込みプログラムの構成法
- 3.1 時間の管理
- 3.1.1 イベント駆動
- 演習問題1
- 演習問題2
- 3.1.2 割り込み
- 演習問題1
- 演習問題2
- 3.1.3 スリープモード
- 演習問題1
- 演習問題2
- 3.2 状態の制御
- 3.2.1 ステートマシン
- 演習問題1
- 演習問題2
- 演習問題3
- 演習問題4
- 3.2.2 シーケンス制御
- 演習問題
- 3.3 タスクの実行
- 3.3.1 協調的マルチタスク
- 演習問題
- 3.3.2 プリエンプティブ・マルチタスク
- 演習問題
- 3.4 システムの保守
- 3.4.1 運用と更新
- 3.4.2 開発環境の内蔵
- 3.4.3 BASICインタプリタの実装
- 演習問題