ページ移動

エントリー

2016年10月の記事は以下のとおりです。

シャントレギュレータを使ってみる

精度の高いリファレンス電圧のためシャントレギュレータを購入

(三端子レギュレータとシャントレギュレータは兄弟のような物ではある・・・が)

三端子レギュレータのように回路化すれば良いかと思ったら,どうも異なり扱い方が判らないので使い方を勉強することにした

シャントレギュレータ

回路

購入したシャントレギュレータは2種

①NJM1431A:2.465V±1%

  • R部が入力,+2,46V部が出力
  • アノード,カソード,リファレンスの三端子
  • カソード電圧36V,カソード電流100mAがMax
  • カソードへは電流制限として抵抗(100Ω~1KΩ位)を付けて標準5~10mA位にする
  • リファレンスと入力間もしくはGND間を直結で2.465Vとなる
  • リファレンスと入力,GND間を分圧すれば定電圧を変更できる(使用手引きを参照)
②LM4040AIM3-4.1:4.096V±0.1%

  • 端子は3個あるが1つはNCなのでアノード,カソードの2端子
  • カソード電流は60μA~15mA(Max20mA)
  • カソードへは電流制限として抵抗(1KΩ~10KΩ位)を付ける(500μA位流さないと電圧が出ないようだ,標準は100μA)
準備

ブレッドボードで2つの基準電圧を発生させ(テスターの校正にもなるかなと)手持ちのテスターで計測してみる

テスター

LM4040AIM3-4.1は表面実装のSOT-23パッケージなのでブレッドボードで扱えるようaitendoで購入しておいた秘密兵器(w)を使う

基板

実装したらこんな感じになる

実装

細ピンを取り付けてブレッドボードに

ブレッドボード

結果

回路は希望のリファレンス電圧が出力されたので問題なし

副産物としてテスターの精度は以下のとおりだった

テスター名称

NJM1431A

(2.465V±1%)

LM4040AIM3-4.1

(4.096V±0.1%)

備考
sanwa PM3 P1-1

2.415

(0.980)

P1-2

4.04

(0.986)

 
kaise KU-1188 P2-1

2.45

(0.994)

P2-2

4.10

(1.001)

 

MASTECH MS8221C

P3-2

2.46

(0.998)

P3-1

4.11

(1.003)

 

オシロスコープキット

P4-2

2.45

(0.994)

P4-1

4.10

(1.001)

 

(追加)

NJM1431Aは5V,9Vとも電流制限として1KΩで問題なし

LM4040AIM3は9Vの電流制限として51KΩは問題なかったが,5Vの場合10KΩ以下でないと正常に電圧がでないようだ(5KΩの1mAが安全か)

aitendo の Pro Micro 互換ボード(環境整備)

aitendo の Pro Micro 互換ボードをこちらを参考にWindows10で使えるようにした(「Pro Micro & Fio V3 Hookup Guide」を参照することにもなる)

上がATmega328P,コンパクト差が良く判る

micro

 

まず Pro Micro 互換ボードをマイクロUSBで接続

Pro Micro 互換ボード

するとWindows10ではドライバーのセットアップなしで使用できるようになる

ドライバーを含む必要ファイルを「FIO AND PRO MICRO DRIVERS」からダウンロードする

DL

展開すると以下となりドライバーは sparkfun\avr\signed_driver 配下にある(Windows10では必要ないようだ)

Pro Micro 互換ボードと接続が出来たら「arduino.org-IDE」(拙者はorgを利用)で使えるように環境を整備する

①「boards.txt」に Pro Micro を追加

ダウンロードしたArduino_Boards-masterの sparkfun\avr\boards.txt の promicro 部分を自分の環境に合わせて取り出す

拙者の場合はローカル用の「boards.txt」(こちら)があるので以下の定義を追加(このボードは5V版なので3.3V用は必要ない)

################################################################################
################################## Pro Micro ###################################
################################################################################
promicro.name=SparkFun Pro Micro

promicro.upload.tool=avrdude
promicro.upload.protocol=avr109
promicro.upload.maximum_size=28672
promicro.upload.maximum_data_size=2560
promicro.upload.speed=57600
promicro.upload.disable_flushing=true
promicro.upload.use_1200bps_touch=true
promicro.upload.wait_for_upload_port=true

promicro.bootloader.tool=avrdude
promicro.bootloader.unlock_bits=0x3F
promicro.bootloader.lock_bits=0x2F
promicro.bootloader.low_fuses=0xFF
promicro.bootloader.high_fuses=0xD8

promicro.build.board=AVR_PROMICRO
promicro.build.core=arduino:arduino
promicro.build.variant=promicro
promicro.build.mcu=atmega32u4
promicro.build.usb_product="SparkFun Pro Micro"
promicro.build.vid=0x1b4f
promicro.build.extra_flags={build.usb_flags}

######################### Pro Micro 3.3V / 8MHz ################################
promicro.menu.cpu.8MHzatmega32U4=ATmega32U4 (3.3V, 8 MHz)

promicro.menu.cpu.8MHzatmega32U4.build.pid.0=0x9203
promicro.menu.cpu.8MHzatmega32U4.build.pid.1=0x9204
promicro.menu.cpu.8MHzatmega32U4.build.pid=0x9204
promicro.menu.cpu.8MHzatmega32U4.build.f_cpu=8000000L

promicro.menu.cpu.8MHzatmega32U4.bootloader.extended_fuses=0xFE
promicro.menu.cpu.8MHzatmega32U4.bootloader.file=caterina/Caterina-promicro8.hex


############################# Pro Micro 5V / 16MHz #############################
promicro.menu.cpu.16MHzatmega32U4=ATmega32U4 (5V, 16 MHz)

promicro.menu.cpu.16MHzatmega32U4.build.pid.0=0x9205
promicro.menu.cpu.16MHzatmega32U4.build.pid.1=0x9206
promicro.menu.cpu.16MHzatmega32U4.build.pid=0x9206
promicro.menu.cpu.16MHzatmega32U4.build.f_cpu=16000000L

promicro.menu.cpu.16MHzatmega32U4.bootloader.extended_fuses=0xCB
promicro.menu.cpu.16MHzatmega32U4.bootloader.file=caterina/Caterina-promicro16.hex

②「pins_arduino.h」の設定

ダウンロードしたArduino_Boards-masterの sparkfun\avr\variants\promicro (フォルダ)をフォルダごと自分のarduino.org-IDE環境へコピーする(これがないとコンパイルでpins_arduino.hが無いよというエラーになる)

環境が整備できたらarduino.org-IDEを起動してツールメニューからボード,プロセッサ,ポートを選択

(ボード)

(プロセッサ)

(ポート)

テストプログラム(LEDの点灯)のコンパイル

int RXLED = 17;                // The RX LED has a defined Arduino pin
void setup()
{
    pinMode(RXLED, OUTPUT);    // Set RX LED as an output
                            // TX LED is set as an output behind the scenes

    Serial.begin(9600);        //This pipes to the serial monitor
    Serial1.begin(9600);    //This is the UART, pipes to sensors attached to board
}
 
void loop()
{
    Serial.println("tomosoft wu......");  // Print "Hello World" to the Serial Monitor
    Serial1.println("Hello!");  // Print "Hello!" over hardware UART

    digitalWrite(RXLED, LOW);   // set the LED on
    TXLED0;                        //TX LED is not tied to a normally controlled pin
    delay(500);                    // wait for a 500ms
    digitalWrite(RXLED, HIGH);    // set the LED off
    TXLED1;
    delay(1000);                // wait for a second
}

書込み完了

赤点灯

赤点灯

緑点灯

緑点灯

テストプログラムの実行はOK

ページ移動

  • ページ
  • 1
  • 2

ユーティリティ

検索

エントリー検索フォーム
キーワード

過去ログ

Feed