エントリー

カテゴリー「Arduino・AVR」の検索結果は以下のとおりです。

ページ移動

arduinoの開発環境の再セットアップ

Windows10にした時,Windows10にarduinoの開発環境をセットアップしたが,IDEを使っていると再々アップデートのメッセージがでてくるのでボードマネジャー関係をアップデートすると,追加したUncompatinoと秋月Arduinoマイコンキットの項目が表示されなくなり選択不可になってしまった

「boards.txt」は変更されてないようで,他のファイルを調べてみたが原因が解らない

仕方がないので開発環境の再セットアップしようと再度開発環境をダウンロード・・・そういえばArduinoチームが内部分裂して2つのIDEがあることを思い出した

調べてみると前回セットアップしたのはarduino.ccのIDEで現時点で1.6.8(既に1つマイナーアップ),もう1つはarduino.orgのIDEで1.7.8だった

今回は,IDEのアップデートメッセージで悩まされるのが嫌なので,arduino.org版のIDEをセットアップすることにして,また元の「boards.txt」は変更しないでローカル用ボードを増やすことにした

(具体的には)

①「(セットアップフォルダ)\hardware\arduino\avr」を全部コピーして「avr.local」にする

②「avr.local」の「boards.txt」を追加するボードのみの記述にする,「platform.txt」のボード名を編集(ボード切り替えメニューのセパレーターとして表示される)

とりあえず開発環境は復活

 

コンパイルすると実害はないが

「WARNING: library Wire claims to run on [avr] architecture(s) and may be incompatible with your current board which runs on [avr.local] architecture(s).」

と表示されるので(例はWireライブラリを使用した場合),消したい場合は各ライブラリの「avr.local/libraries/*/library.properties」を編集する

architectures=avr.local

IDEを再起動しないと反映されない

大気圧センサ(LPS25H)を試す

これまでの続きで大気圧センサ(LPS25H)を試してみる

温湿度センサを繋いでいるブレッドボードに追加

FSTN液晶モジュールもそのままにしてあるためSPIで接続しCSを8にする

 (LPS25H)      (arduino)          (ATMEGA328P)
1    VDD        +3.3V
 2    SCL        13                    19                SPI共通
 3    SDA/SDI    11                    17                SPI共通
4    SAO/SDO    12                    18                SPI共通
5    CS          8                    14                SPI別
6    NC
7    INT1
8    GND        GND

こちらからライブラリをいただいてテストプログラムを調整

// 大気圧センサLPS25H(SPI接続)のテスト
//
#include <SPI.h>
#include "skLPSxxSPI.h"

#define LPS25H_CS    8

skLPSxxx LPS(LPS25H,LPS25H_CS);             // デバイスはLPS25Hを指定

void setup() {
    int ans;

    // シリアルモニターの設定
    Serial.begin(9600);
    // SPIの初期化
    SPI.begin();                            // SPIを行う為の初期化
    SPI.setBitOrder(MSBFIRST);              // ビットオーダー
    SPI.setClockDivider(SPI_CLOCK_DIV4);    // クロック(CLK)をシステムクロックの1/4で使用(16MHz/4)
    SPI.setDataMode(SPI_MODE3);             // クロック極性 1(HIGH) クロック位相 1(HIGH)

    pinMode(LPS25H_CS, OUTPUT);             // 気圧センサーのCS

    delay(3000);                            // 3Sしたら開始

    // 気圧センサの初期化を行う(更新速度は1Hz)
    ans = LPS.PressureInit();
    if(ans == 0) {
        Serial.println("Initialization normal");
    } else {
        Serial.print("Initialization abnormal ans=");
        Serial.println(ans);
    }
    delay(1000);
}
void loop() {
    LPS.PressureRead();                     // 圧力と温度を読み出す
    Serial.print("[LPS25H]");
    Serial.print(Press);                    // 気圧値の表示を行う
    Serial.print(" hPa  ");
    Serial.print(Temp);                     // 温度の表示を行う
    Serial.println(" 'C");

    delay(1000);                            // 1秒後に繰り返す
}

 

特に問題なく動作確認完了

 

Windows10にarduinoの開発環境をセットアップ

Windows10にarduinoの開発環境をセットアップ

再セットアップとなるが展開セットアップなのでバックアップそのものが利用できる

Arduino IDE

これまで「arduino-1.0.5-r2」を使用し,今後「arduino-1.6.5-r5」を利用しようとセットアップしておいたが,すでに「arduino-1.6.7」があったので結局新しいバージョンをセットアップすることになる

①arduino-1.6.7-windows.zipをサイトからダウンロードし展開

起動してみる

②Uncompatinoと秋月Arduinoマイコンキットをハード定義に追加

モデルとCPUで階層化できるようになったようだ(つまりモデル×CPUタイプ分の全部を記述しなくても良くなった)

以下を「(セットアップフォルダ)\hardware\arduino\avr\boards.txt」に追加

##############################################################

uncompatino.name=Uncompatino

uncompatino.upload.tool=avrdude
uncompatino.upload.protocol=arduino

uncompatino.bootloader.tool=avrdude
uncompatino.bootloader.unlock_bits=0x3f
uncompatino.bootloader.lock_bits=0x0f

uncompatino.build.board=AVR_UNO
uncompatino.build.core=arduino
uncompatino.build.variant=standard

## Uncompatino (5V, 16MHz) /w ATmega328
## ------------------------------------
uncompatino.menu.cpu.16MHzatmega328=ATmega328 (5V, 16 MHz)

uncompatino.menu.cpu.16MHzatmega328.upload.maximum_size=32256
uncompatino.menu.cpu.16MHzatmega328.upload.maximum_data_size=2048
uncompatino.menu.cpu.16MHzatmega328.upload.speed=115200

uncompatino.menu.cpu.16MHzatmega328.bootloader.low_fuses=0xff
uncompatino.menu.cpu.16MHzatmega328.bootloader.high_fuses=0xde
uncompatino.menu.cpu.16MHzatmega328.bootloader.extended_fuses=0x05
uncompatino.menu.cpu.16MHzatmega328.bootloader.file=optiboot/optiboot_atmega328.hex

uncompatino.menu.cpu.16MHzatmega328.build.mcu=atmega328p
uncompatino.menu.cpu.16MHzatmega328.build.f_cpu=16000000L

## Uncompatino (5V, 16MHz) /w ATmega168
## ------------------------------------
uncompatino.menu.cpu.16MHzatmega168=ATmega168 (5V, 16 MHz)

uncompatino.menu.cpu.16MHzatmega168.upload.maximum_size=14336
uncompatino.menu.cpu.16MHzatmega168.upload.maximum_data_size=1024
uncompatino.menu.cpu.16MHzatmega168.upload.speed=19200

uncompatino.menu.cpu.16MHzatmega168.bootloader.low_fuses=0xff
uncompatino.menu.cpu.16MHzatmega168.bootloader.high_fuses=0xdd
uncompatino.menu.cpu.16MHzatmega168.bootloader.extended_fuses=0x00
uncompatino.menu.cpu.16MHzatmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila.hex

uncompatino.menu.cpu.16MHzatmega168.build.mcu=atmega168
uncompatino.menu.cpu.16MHzatmega168.build.f_cpu=16000000L

## Uncompatino (3.3V, 8MHz) /w ATmega328
## -------------------------------------
uncompatino.menu.cpu.8MHzatmega328=ATmega328 (3.3V, 8 MHz)

uncompatino.menu.cpu.8MHzatmega328.upload.maximum_size=32256
uncompatino.menu.cpu.8MHzatmega328.upload.maximum_data_size=2048
uncompatino.menu.cpu.8MHzatmega328.upload.speed=57600

uncompatino.menu.cpu.8MHzatmega328.bootloader.low_fuses=0xe2
uncompatino.menu.cpu.8MHzatmega328.bootloader.high_fuses=0xda
uncompatino.menu.cpu.8MHzatmega328.bootloader.extended_fuses=0x05
uncompatino.menu.cpu.8MHzatmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex

uncompatino.menu.cpu.8MHzatmega328.build.mcu=atmega328p
uncompatino.menu.cpu.8MHzatmega328.build.f_cpu=8000000L

## Uncompatino (3.3V, 8MHz) /w ATmega168
## -------------------------------------
uncompatino.menu.cpu.8MHzatmega168=ATmega168 (3.3V, 8 MHz)

uncompatino.menu.cpu.8MHzatmega168.upload.maximum_size=14336
uncompatino.menu.cpu.8MHzatmega168.upload.maximum_data_size=1024
uncompatino.menu.cpu.8MHzatmega168.upload.speed=19200

uncompatino.menu.cpu.8MHzatmega168.bootloader.low_fuses=0xe2
uncompatino.menu.cpu.8MHzatmega168.bootloader.high_fuses=0xdf
uncompatino.menu.cpu.8MHzatmega168.bootloader.extended_fuses=0x00
uncompatino.menu.cpu.8MHzatmega168.bootloader.file=atmega/ATmegaBOOT_168_pro_8MHz.hex

uncompatino.menu.cpu.8MHzatmega168.build.mcu=atmega168
uncompatino.menu.cpu.8MHzatmega168.build.f_cpu=8000000L

##############################################################

akizuki.name=Akizuki ATmega168/328

akizuki.upload.tool=avrdude
akizuki.upload.protocol=arduino

akizuki.bootloader.tool=avrdude
akizuki.bootloader.low_fuses=0xFF
akizuki.bootloader.unlock_bits=0x3F
akizuki.bootloader.lock_bits=0x0F

akizuki.build.f_cpu=16000000L
akizuki.build.board=AVR_DUEMILANOVE
akizuki.build.core=arduino
akizuki.build.variant=standard

## akizuki ATmega328
## ---------------------------------------------
akizuki.menu.cpu.atmega328=ATmega328

akizuki.menu.cpu.atmega328.upload.maximum_size=30720
akizuki.menu.cpu.atmega328.upload.maximum_data_size=2048
akizuki.menu.cpu.atmega328.upload.speed=57600

akizuki.menu.cpu.atmega328.bootloader.high_fuses=0xDA
akizuki.menu.cpu.atmega328.bootloader.extended_fuses=0x05
akizuki.menu.cpu.atmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex

akizuki.menu.cpu.atmega328.build.mcu=atmega328p

## akizuki ATmega168
## ---------------------------------------------
akizuki.menu.cpu.atmega168=ATmega168

akizuki.menu.cpu.atmega168.upload.maximum_size=14336
akizuki.menu.cpu.atmega168.upload.maximum_data_size=1024
akizuki.menu.cpu.atmega168.upload.speed=19200

akizuki.menu.cpu.atmega168.bootloader.high_fuses=0xdd
akizuki.menu.cpu.atmega168.bootloader.extended_fuses=0x00
akizuki.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila.hex

akizuki.menu.cpu.atmega168.build.mcu=atmega168

##############################################################

③U8glibを利用可能にする

サイトから「U8glib for Arduino」(u8glib_arduino_v1.18.1.zip)をダウンロードして,「(環境設定のスケッチブックの保存場所)\libraries」下に展開する

他の方法もあるようだが管理人はこの方法でライブラリを登録している

(※)「E:\AVR\workspace\libraries」となる

WinAVR(and avrdude-serjtag)

avrdude.exeをGUIラッパー「avrdude-GUI.exe」で動作させる

これを利用してブートローダー・ヒューズビットの書き込みを行う

aitendoで購入したものを組み立てる

ほったらかしにしてたaitendoで購入したものを確認

FSTN液晶モジュール

まずは表示の仕方を確認しないといけない

FSTN液晶モジュール

袋から取り出して,なかなかコンパクト

サイズ

資料が無いのでピンの配置くらい記録しておく

裏

ピンを付けるのに先日購入したUSB半田ごてを使用してみた

ピン付け

余談だが半田ごてがコンパクトで使い勝手が良い(このサイズで普通の20Wクラスの半田ごてがあれば良いな)

この後3.3V版arduinoでu8glibというライブラリを使って確認なのだがIDEのセットアップが(Windows10で)まだだった

あちゃんでいいの(実装済み)

お試しで購入したため何に使うか考えてない

あちゃんでいいの

袋から出してみて,表側

表

裏側にはRとCが実装されている(回路図

裏

とりあえずブレッドボード上での実験用に制作してみようとあり合わせのパーツを集め

制作

サクッと制作終わり・・・だが基盤に合うタクトスイッチが無いためリセットボタンは未実装

制作

USB-TTL変換キット

USB-TTL変換は他にも持っているので,これは「あちゃんでいいの」専用にしようかと考えてる

USB-TTL

取り出して,中身のパーツ

中身

これもサクッと制作したが・・・実は肝心のCH340Gを取り付ける方向を間違え廃品となる(悲)

完成

こんな感じで接続したのだけど動作しなかった

接続

ページ移動

ユーティリティ

検索

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

過去ログ

Feed