オンボードされた温湿度センサーからFPGAで値を得るMAX 10 FPGAで学ぶFPGA開発入門(12)(1/7 ページ)

FPGA「MAX 10」搭載開発ボード「MAX 10 NEEK」には各周辺機器が備えられており、そこにはTI製の温湿度センサーも含まれる。サンプルプログラムを元に、オンボードされたデバイスの制御を試みる。

» 2016年07月26日 07時00分 公開
[大原 雄介MONOist]

 アルテラのFPGA「MAX 10」を用いてFPGA開発の初歩を紹介するこの連載、ここ数回は各種周辺機器も備えたMAX10搭載開発ボード「MAX 10 NEEK」を使って周辺機器へのアクセス方法などを紹介している。前々回・前回とメモリを中心に使い方をご紹介したので、今回は周辺回路の使い方を紹介したい。

・「MAX 10 NEEK」でストップウォッチを開発し、内蔵メモリから起動する

・「MAX 10 NEEK」に搭載されたDDR3メモリを使う

 MAX 10 NEEKには、実は温度センサーが2つ搭載されている。1つ目はODT(On Die Temperature)センサー。これはMAX 10そのものに内蔵されているもので、MAX 10自身の温度を測定できる。このセンサーはMAX 10内蔵のADCに接続されており、ADC経由で値を取得できる。この記事で紹介した、サンプルプログラムがまさにこれを実行している。

photo01 Photo01:MAX 10 NEEKの説明書より。HDC1000はMAX 10から見るとPIOの先に接続される形になる

 もう1つはMAX 10 NEEKの基板上に設置されている、TEXAS INSTRUMENTSの「HDC1000」である(Photo02)。HDC1000は温度と湿度の2つのセンサーがI2Cの先につながる形になっている(Photo03)。ありがたいことに出荷時にある程度校正が済んでいるので、I2C経由で直接、温度/湿度の値を取得できる。ちなみに湿度は0%〜100%までで誤差3%、温度は−40℃〜125℃までを±0.2℃の精度で測定可能としている。

 余談ながらHDC1000は既に「新規設計には非推奨」扱いで、代替品は「HDC1080」あるいは「HDC1010」(こちらはまだ開発中)となっているが、秋月電子ではHDC1000のモジュールが680円で購入できたりする(HDC1000使用、温湿度センサーモジュール)。ちょっとお値段は高めだが、自分であれこれ作るには便利そうな感じだ。

photo02 Photo02:HDC1000は基板上、スイッチ/LED列の左に位置する。
photo03 Photo03:OTPが搭載されるのは、ここに校正データが格納されているからで、出荷時に校正用の係数がプログラミングされて出てくるカタチ

 話を戻す。このHDC1000の使い方はサンプルスケッチでサポートされている(周辺機器の充実した「MAX 10 NEEK」で本格的な開発を目指す)。このサンプルスケッチを元に使い方を確認してみたい。

       1|2|3|4|5|6|7 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.