Arduino(市販 互換機)   

1 はじめに(UNO pro-mini) 
2 動かしてみる 
3 気圧センサーbmp180をテストする 
4 MPU-6050 3軸加速度センサー モジュールをテストする 
5 気圧計その2(BMP180) 
6 LCD I2Cインタフェース ボード試用 
7 NANO V3 ボード
8 有機EL 0.96インチ 2019.06.22
9 NanoをUnoに変更(fuseとbootloader) 2019.07.20
10 有機ELをシリアル表示器とする 2019.07.31






1 はじめに 
2016.01.10  アマゾンで中国製の廉価なarduino互換品がありましたのでテストしてみました。UNO(以下UNOとします)が送料込みで630円でUSBコードがついています。pro mini(以下miniとします)は355円でした。だめもとで注文したのですが、使えそうな雰囲気です。



小さな袋に詰め込んだ状態で届きましたので心配でしたが、見た目はそう悪くはないようです。ゆがみもひどくはありません。もちろん説明書はおろか納品書もありません。



2 動かしてみる 
UNOはUSBコードも付いているので(写真の物は違います)ハードに手を加えなくてもテストが出来ます。
arduinoのIDEをここからダウンロードしました。 私がDLしたのはarduino-1.6.7-windows.zipで、zipファイルのものにしました。
最初はノートPCのwin10でテストし、後にデスクトップのwin8.1でテストしましたが当然ながら同じ結果になりました。
USB素子が、私は初めて見るCH340Cというもので、ドライバーが見つかりにくいとの話がありましたが、今回はコードを繋ぐだけで自動的にドライバーがインストールされました。

IDEを開いてLチカのコードを書き(スケッチでしたね)、メニュー → ツール で、マイコンボードarduino/Genuino UNOを選び、書き込み装置aduino as ISP を選ぶと使えます。COMポートは自動で見つからなければ適当なものを選びます。

Lチカで点灯/消灯時間を変えることで、書き込みが完全に行われたことが確認できます。

次にminiです。これはUSBコンバーターがついていないので準備する必要があります。以前にAVRの書き込みに使ったり、arduinoもどきの実験をしたとのFT232RLがありましたので接続コードを作ってつなぎました。


接続をよく忘れるのでここに残しておきます。


テストはデスクトップでのみ行いました。変更はUNOをmini(ATmega328 5V 16MHz)に変更するだけです。
しかし、なぜかエラーで書き込めません。reset sw を押しても見たのですが10回ほど書き込めませんでした。そのうち突然書き込めるようになり、その後も書き込めています。原因はまだわかりませんがやや不安定なところは感じています。しかし、おおむねは使えそうです。

(2017.09.26) 久しぶりに火を入れました。UNOでテストした「2つの数値を受けて、その積を返す」スケッチを書いてみました。このminiは 8MHz3.3V なのか 16MHz5V なのか忘れていました。よくよく自分の記事を読んで16MHzものとわかりました。
以前から使っていたFTDI FT232RL で書き込んでみましたが何度かうまく行きません。そのうち書き込めるようになりました。原因は不明です。スッキリしません。なお、5Vものですが3.3Vでもなんとか動いているようです。

(2019.06.23)UNOでコンパイルしたスケッチをpro miniに書き込んでブートローダーを壊しました。AVRライタでブートローダー付き.binを書き込んで救済しますが、ISP端子を知る必要があります。調べた結果をここに書いておきます。
 pro miniのISP   
MOSI(14番)D11  MISO(15)D12  SCK(16)D13  RESET(22)RST   GND




3 気圧センサーbmp180をテストする 
 amazonで気圧センサーモジュール BMP180 BOSCH(BMP180 BOSCH温度モジュール 空気圧モジュール 空気圧センサー [並行輸入品]ノーブランド品¥ 285 送料込み)を購入してみました。気圧センサーモジュールとしては安いと思います。


この素子のデータシートを見ると読み出しと計算がかなり複雑です。I2C接続ですがワード単位で11のデータを読み出し、複雑な計算をする必要があります。
横着して、プログラムがないものかとwebを調べました。通常のC言語のプログラムは見つけられなかったのですが arduino pro mini で製作されているサイトがありました。
そこの紹介でadafruit/Adafruit-BMP085-Libraryの BMP085test(BMP085test.ino)、Adafruit_BMP085.cpp、Adafruit_BMP085.h を使うことにしました。なお、BMP180はBMP085の後継機種で互換性があるそうです。(この3つのファイルはダウンロードできないようで、画面をコピーしてエディタで修正しました。) (後にダウンロードできることがわかりました。右端の緑のボタン「Clone or download」でzipファイルのダウンロードが可能です。)

arduinoに不慣れなためインクルードファイルの置き場所と方法がわかりません。webで検索しました。  ・適当な名前のフォルダ(私は bmp180 としました)を作り、その中に
  @ ,hファイル
  A .cファイル
  B keywords.txt
  を入れます。
私の場合は
  BMP180
   |- Adafruit_BMP085.h
   |- Adafruit_BMP085.cpp
   |- keywords.txt
となります。
なお、keywords.txtの内容はわからないまま例のとおりとしました。
  bmp180 KEYWORD1
  Begin KEYWORD2
  End KEYWORD2
  Output KEYWORD2
2016.02.03 少しわかりました。KEYWORD2を指定するとその語が橙色で表示されます。
このフォルダーを arduino-1.6.7-windows\arduino-1.6.7\libraries のなかにコピーすれば以後使えるようになります。(私は通常のインストールをしていないので上記のフォルダは 「ユーザー名\Arduino」にありました。

BMP085test.inoファイルは、新規作成を立て、全文を貼り付けて、この名前で保存しました。
試しにコンパイルしてみましたがエラーなく正常終了しました。

次は書き込み準備です。
上の写真のようにモジュールをセットしましたが、mini は5V仕様でUSBからVccを取る構造です。しかしモジュールは3.6V以下です。USBのVccを切り離し別電源の3.3Vに繋ぎました。本来16MHzでは3.3Vは無理なのですが強行します。書き込みは長時間の後にエラーになりました。
5Vが必要かと思い、気圧センサーモジュールの配線をすべてはずして(念のためSDA、SCLも)5Vにしましたがなぜかエラーになります。最後にUSB5V電源に戻すと書き込みができました。(何が悪いのかわかりません)

TeraTermを立ち上げると出てきたのがこの画面です。

予定の画面が簡単に現れました。
しかし、0.5秒で変わるので数値を読むのが困難です。

ほしいのは気温と測定値の気圧ですから表示を簡単にしました。また、測定も5秒間隔にしています。

変更後、3.3Vで書き込みを試したところ、長時間(4分くらい)の後に書き込めました。

以上で気圧センサーモジュールのテストは終了です。安い買い物でしたが立派に使えるようです。
ただ、プログラムについては人様の物をいただいただけで何もしていません。感謝。
このセンサーもR8C/M12Aで使ってみたいと思っていますが、いつになるでしょうか。

以前に作ったものと比べると およそ4hPa ほで低く出ます。私の部屋は海抜50mほどありますので、海面に比べると6hPaくらい低く出ると思うのですが、海面の高さでの値が見えるほうが天気図とも合わせやすくなります。正確な値が出るものなら +6 で海面高さの値を表示したいと思います。

 3 気圧センサーbmp180をテストする おわり



4 MPU-6050 3軸加速度センサー モジュールをテストする  2016.01.23

 amazonで同時に購入した「MPU-6050 使用 3軸ジャイロスコープ・3軸加速度センサー モジュールGY-521」をテストしました。送料込み¥285であったので、どのような物かもわからずに注文しました。
web上を見ているとこのページにarduinoとして製作記がありましたので、コピーでテストをしました。


右端の基板がそれです。左端はarduino pro mini互換機です。
接続は次のとおりです。
   pro mini     センサー 
            Vcc →+3.3V
   GND        GND
   A5        SCL
   A4        SDA
   D2        INT

実行時のTeraTerm画面です。


左から エラー番号、温度、X,Y,Zの加速度(G)、X,Y,Zの傾斜角度、ジャイロからX,Y,Zの角速度(度/s)だそうです。

扱いが理解できていないのですが、とりあえず動作することだけは確認できました。

4 MPU-6050 3軸加速度センサー モジュールをテストする おわり


5 気圧計その2(BMP180)  2016.02.03

 amazonで購入した気圧センサーBMP180(下記)をR8C/M12Aで使おうとしましたが失敗に終わりました。RTC、EEPROM、温度センサー、気圧センサーLPS25HではI2C通信に成功した自作のルーチンが通用しなかったのです。読み取りを試みたのですが全く読み出せませんでした。

しかし、下記に書いたようにArduinoでそのライブラリを使えばいとも簡単に読み出しが可能です。R8C/M12Aを諦めてArduinoで処理を考えました。が、pro mini互換機は1つしかないので手持ちのATmega328pを8MHzの水晶で動かして、プログラム(スケッチ)は pro mini 8MHz として作って、そのhexファイルをAVRライタで書き込むことにしました。(Arduino互換機を買わなくても良い)





リチウムイオン充電池1本で、3.3Vで動作させたかったのですが、LCDの負電源を作るために割り込みで100kHz程度の矩形波がほしいのですが、割り込みでは5kHzくらいが限界のようでそれ以上早くするとメインルーチンが動かなくなりました。というわけで5V動作としています。
このセンサーには5Vをかけるな、とありますがモジュールには3端子レギューレータがついていて、しかし3.3V端子には4.2Vが出ており理解に苦しみます。データラインは5Vトレラントだという説もあります。

プログラム(スケッチ)自体はこのように簡単なものになりました。
// BMP085_33v8mhz_1.ino

#include <LiquidCrystal.h>
  LiquidCrystal lcd(8,9,4,5,6,7);
#include <Wire.h>
#include <Adafruit_BMP085.h>


Adafruit_BMP085 bmp;
  
void setup() {
  Serial.begin(9600);
  if (!bmp.begin()) {
  Serial.println("Could not find a valid BMP085 sensor, check wiring!");
  while (1) {}
  }
  lcd.begin(16,2); 
}
  
void loop() {
    Serial.print(bmp.readTemperature());
    Serial.print(" *C        ");
        
    Serial.print((bmp.readPressure()+430)/100.0);
    Serial.println(" hPa");

    lcd.clear();
    lcd.setCursor(1,0);
    lcd.print((bmp.readPressure()+430)/100.0);
    lcd.print("         ");
    
    lcd.setCursor(9,1);
    lcd.print(bmp.readTemperature());

    delay(5000);
}
 補正について: 気圧計その1では測定値をそのまま表示しました。私の部屋では、海面から50mほど高いところにありますから6hPaほど低くなるはずですが天気図との関係から海面更正値が見えるほうが便利です。1号機は天気図と大きくは変わらないのでこのままで良いとしています。
今回の2号機では1号機とずれがありますので1号機に合わせるべくプログラムで4.3hPaを加算しています。
なお、温度計は1号機と 0.5℃ も違わないようです。

(追記 2016.02.09)LCDを中国製に変更
1月28日に注文してあったLCDが届きました。送料込み275円というものです(今はもっと安くなっています)。LEDのバックライト照明があって、青色背景に白文字で表示されるものです。

この基板は写真でわかるよに端子にVss、Vcc、D7などの「端子名」が印刷されています。LCDには1番端子がVccのものとGNDのものがあります。パターンをみて決めるのですが、これはその必要がありません。親切です。

LEDには220Ωの電流制限抵抗を入れています。回路の電源は5Vです。Vo調節用に10kの可変抵抗をつけています。このLCDは明るくても暗くても見やすいようです。この値段では間違いなく合格としておきましょう。
5 気圧計その2(BMP180) おわり


6 LCD I2Cインタフェース ボード試用  2017.11.24

 このボードは「EasyWordMall 1602 LCD ブラック IIC/I2C/TWI/SPI シリアル インタフェース ボード モジュール 」という長い名前のものです。amazonで¥124で購入しました。5V仕様のものですが、以前に購入した白文字LCDの直接ピンをはんだ付けして使えるように設計されています。
どのように使えるのか試してみました。試作回路は Arduino pro mini 互換品を使いました。LCDの裏側からすでに取り付けられているピンヘッダを差し込むと正しく接続される用にピン配置がされています。全面的に信用してはんだ付けをしました。


このボードには特別なインクルードファイルが必要なようで、webの資料から Library for the LiquidCrystal LCD display connected to an Arduino board.をダウンロードして、zipを解凍してから arduino の libraries に Arduino-LiquidCrystal-I2C-library-master として置きました。

arduino は pro mini互換 ですから、書込み用にFT232RL(DTRも使用)を使いました。
mini のボードの A4にSDAを、A5にSCLを接続します。電源はLCDの関係で5Vです。

サンプルスケッチからarduinoIDEを起動して(例によってボード選択・シリアルポート設定を済ませて。書込み装置は AVR ISP で)コンパイル・書込みを行うと簡単に Hello World! が表示されました。

使われているチップは PCF8574T でアドレスは 0x27 で動きました。(ジャンパで変更可能です)
バックライトの明るさはバリオームで調整します。

とりあえず次の関数が分かりました。
  lcd.begin();
  lcd.backlight();
  lcd.print("Hello,");
  lcd.clear();
  lcd.setCursor(0, 0); 第1引数はカラム、第2引数は行。 第1行は0、2行目は1。
  lcd.setCursor(1, 1); 〃
試しに使ったスケッチは次のとおりです。
#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup()
{
  // initialize the LCD
  lcd.begin();

  // Turn on the blacklight and print a message.
  lcd.backlight();
  lcd.print("Hello");
  delay(1000);
  lcd.clear();
}

void loop()
{
  lcd.setCursor(0, 0);
  lcd.print("Hello,world!");
  delay(1000);
  
  lcd.setCursor(0, 1);
  lcd.print("0123456789012345");
  delay(1000);
  
  lcd.setCursor(1, 1);
  lcd.print("ABCDefgh");
  delay(1000);
}

あとがき:
久しぶりにaruduinoを扱って、多くを忘れていました。
FT232RL(DTRあり)は調子よく働きますが、CH340(DTRあり)は認識されないこともあって不安定です。IDEの「書込み装置」は"AVR ISP"でいいようです。シリアルポートはしばしば確認する必要があるようです。認識しないときはハブの挿し直し、書き込み器の挿し直しが必要です。miniのLEDポートは13であることも忘れていました。自分のためにここに書いておきましょう。
さて、aruduinoでないときは、R8Cのときはどうして使えばよいのでしょう。

(2017.11.26追記)5VではLCDのバックライトLEDが明るすぎるように感じたので暗くする方法を考えました。LED回路に抵抗を挿入すればよいのですが、うまい具合に裏面にあるショートピンを抜くとLEDが消えるので、ここに抵抗を入れればLED回路に抵抗を入れることができます。ピンソケットに150Ωの抵抗をはんだ付けして挿入したところ好みの明るさとなりました。
6 LCD I2Cインタフェース ボード試用 おわり


7 NANO V3 ボード  2019.01.21

 用途は考えになかったのですが、banggoodで¥251であったものですから送料無料ということで注文しました。秋月でmega328p単体を買っても¥230ですからチップを買うつもりで手にいれました。
本家のものとは違って、USBチップにCH340Gが使われています。水晶は小さくて周波数の刻印がありませんが販売元の資料では16MHzです。もちろん動作電圧は5Vですが、AMS1117(5.0)がついていますので 入力電圧(推奨)は7V〜12Vとなっています。
USB端子はミニがついていますのでUSBをつなぐとデフォルトのLED点滅プログラムが走りました。

USBだけをつなぎ、Aruduino-IDEで ボード=NANO プロセッサ=mega328p でスケッチサンプルのblinkの時間を変えて書き込んだところ、問題なく書き込みができて、実行されました。
なお、書き込み後にUSBを外して、VIN端子に3.3Vを加えたところ正常にLEDが点滅しました。16MHzは3.3Vで保証外ですが、実際はなんとか動くようです。
とりあえずの動作テストです。

 (2019.06.06) なんとなく取り出してUSBにつなぐと、正常にLEDが点滅するのですが、powerのLEDが明るすぎて目障りです。LEDの横に1kの抵抗がついていますのでこれを手持ちの4k7に取り替えてみました。powerのLEDが暗くなって信号のLEDが見やすくなりました。LEDが接近しているときはその役目によって適当な輝度が望まれます。

(2019.08.12) テスト用ボードを作りました。-NANO



書き込みはavrのISCP端子で行います。もっとも書き換えて遊んでいるうちにUSB端子からの書き込みができなくなっています。
NANOは新しいIDEではブートローダー領域が2048バイトから512バイトに変わっているのですが。フラッシュの有効領域は古いままです。チップのフルイレースをしてブートローダー付きのスケッチを書き込んでみたのですが、USBではエラーになり書き込めませんでした。原因はわかりません。

テストを兼ねて、シリアル通信のプログラムを書いてみました(色々と忘れていて試行錯誤のはてです)。キーボードの文字列(CRで終わる)を送り返すプログラムです。
 //"serial02"

void setup() {
  Serial.begin(9600);
}

void loop() {
  int i, n;
  char ss[20];
  Serial.println("Hello!");

  while (1) {

    n = 0;
    while (1) {
      if (Serial.available() > 0) {
        ss[n] = Serial.read(); // 受信データを読み込む
        if (ss[n] == 0 || ss[n] == 0x0D || ss[n] == 0x1A) {
          ss[n] = 0; break;
        }
        n++;
      }
    }
    Serial.println(ss);
    Serial.println();
    
  }
}
 実験途中で気付いたこと  書き込みソフトavrdude-GUIの反応が鈍くなったり、反応しなくなる事がありました。ライタのUSBを差し替えても戻りません。私の装置はUSB端子から延長コード経由で4つ口ハブがついています。このハブを挿し直すと正常に戻りました。ハブの接続自体が異常になることがあるようです。面倒ですが刺し直しが必要なのでしょう。

(2019.08.13) USBで書き込みに成功しました。
もう一つのNANO(これもISCPで遊んだものですが)にUSBで書き込みをしたところOKでした。そこで、ブートローダーごとsaveして1台目に書き込んだところUSBからの書き込みができました。なお、ヒューズを FF DE ED(ブート512バイト)にしても書き込みできました。できなかった理由もできた理由もわかっていません。

NANOのポート番号とATmega328
A0:PC0         D0:PD0 Rx
A1:PC1         D1:PD1 Tx
A2:PC2         D2:PD2
A3:PC3         D3:PD3
A4:PC4 SDA     D4:PD4
A5:PC5 SCL     D5:PD5
A6:ADC6        D6:PD6
A7:ADC7        D7:PD7

               D8:PB0
               D9:PB1
               D10:PB2
               D11;PB3 MOSI
               D12:PB4 MISO
               D13:PB5 SCK
7 NANO V3 ボード おわり


8 有機EL 0.96インチ   2019.06.22

アマゾンで SODIAL 0.96インチI2C IICシリアル128X64 OLED LCD LEDディスプレイモジュール を購入しました(¥342)。有機ELは発光がきれいだとありましたので、かつ、経済的負担も少ないので試してみようと思いました。届いたときは「こんなに小さなもの」と感じましたが1インチ弱だから当然のことでした。

試行用のarduinoはATmega328pの pro(3.3V 8MHz)もどきを使います。3.3V動作のためにboards.txtを書き直したものを使います。


この表示器はI2C接続なので、SDAは27ピン(A4)に、SCLは28ピン(A5)に接続しました。それ以外は通常のarduinoです。

このサイトによると、2つのライブラリのインストールが必要です。まず、arduino IDE の「スケッチ」→「ライブラリのインクルード」→「ライブラリを管理」メニューから 「ssd1306」で検索して得られる「Adafruit SSD1306 by Adafruit」をインストールしました(v 1.5.9)。続いて、同じメニューから 「gfx」で検索して、「Adafruit GFX Library by Adafruit」をインストールしました。
ライブラリ「Adafruit SSD1306」に含まれているAdafruit_SSD1306.hファイルの修正が必要だとのことで、28行目の「#define SSD1306_128_64 」を有効にして128×64に設定しました。

同じサイトで示されている「ファイル」→「スケッチ例」→「Adafruit_SSD130」→「ssd1306_128x64_i2c」を実行しましたがうまくいきませんでした(後述あり)。
そこで、その下にあったこのサイトのスケッチを試しました。「DrawText.ino」です。少しずつ変更して次のようになりました。
このスケッチははじめからうまく動作しました。
リセット端子が無いための指示(下記)とスレーブアドレスの指定(下記)が適当であったからのようです。
// DrawText.ino

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

// コンパイル時にヘッダーファイルが適切に編集されていない場合に
// "Height incorrect, please fix Adafruit_SSD1306.h!"
// というエラーを表示するための記述
#if (SSD1306_LCDHEIGHT != 64)
#error("Height incorrect, please fix Adafruit_SSD1306.h!");
#endif

// RSTピンがない互換品を使用するので-1を指定
Adafruit_SSD1306 display(-1);//←この表示器にはリセット端子がない

void setup() {
  // I2Cアドレスは使用するディスプレイに合わせて変更する
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);//←スレーブアドレスは0X3Dではなく0X3Cである。
}

void loop() {
  display.display();//デフォルトロゴ表示。最初に書けばcppから。
  delay(2000);
  
  // 画面表示をクリア
  display.clearDisplay();
  display.display();
  delay(2000);

  // テキストサイズを設定
  display.setTextSize(3);
  // テキスト色を設定
  display.setTextColor(WHITE);
  // テキストの開始位置を設定
  display.setCursor(0, 10);

  // 1行目に"Hello"を表示
  display.println("Hello");
  // 2行目に"World!"を表示
  display.setCursor(0, 20);
  display.println("World!");
  display.setCursor(0, 40);
  display.println("10:59:28am");

  // 描画バッファの内容を画面に表示
  display.display();//   ←これでバッファが画面に送られる

  delay(1000);
}
このスケッチが成功してから、再び、上記の「ssd1306_128x64_i2c」を見直しました。
 31行目 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);←OLED_RESETを-1に  59行目 if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3D)) { // Address 0x3D for 128x64 ←0x3Dを0X3Cに
この変更でスケッチが正常に動作しました。

この表示器は文字自体が光るので見やすいものです。
8 有機EL 0.96インチ おわり ↑


9 NanoをUnoに変更(fuseとbootloader)  2019.07.20

 Arduino Nano(互換品 CH340)はブートローダーが古いので2kBです。Unoはそれが512Bのためフラッシュが1.5kB多く使えます。NanoとUnoは本質的に違わないためUnoのブートローダーに書き換えるとフラッシュが1.5kBだけ多く使えることになります。(最近の正規のNanoは小さくなていると思います。IEDにoldと2つ表示されます)
ブートローダーの書き換え記事は多くありますが、書き換えライタがUnoを使ったものが殆どで私には向きません。ブートローダーのhexファイルもあるのですが、フラッシュの最後に書かれるかどうか不安です。
Unoの手持ちがありますので、使い慣れた avrdude-GUI と picspx を使って書き換えることにしました。
1 NanoにISP用のピンプラグをはんだ付けします。
2 Unoのヒューズを読み取ります。low high ex が FF DE FD でした。なお、Nanoは FF DA FD でした。
3 Unoにblinkを書き込んで、hexファイルに読み取り(saveして)保存しました。
4 Nanoにライタをつなぎ、チップイレースしてからヒューズ FF DE FD を書き込みました。(イレースしないと書けない)
5 NanoにUnoからsaveしたhexファイルを書き込みました。
Arduino-IDEにつなぎ、Unoとして改めてblinkを書き込んだところ正常に働きました。もちろんフラッシュは増えていました。
9 NanoをUnoに変更(fuseとbootloader) おわり ↑




10 有機ELをシリアル表示器とする   2019.07.31

 上に書いた有機ELの表示テストを変更してシリアル受信の表示器を作りました。


このELは大きさ2の文字で、10文字×3行 の表示ができます。したがって送り出しは簡単にするために、最初の一文字は"1"、"2"、"3"として行を表し、それに続く10文字を送ることにしています。
受信のときに、"\0"、"0D"、"1A"が来ると行末として"\0"に置き換えています。受信後は、1文字目を取り去り、該当行の文字列に置き換えています。
ハードウエアはATmega328pを使って(mega168では無理でした)、UNOの8MHz版としています。水晶、リセットSW、RxD回路のほかは、I2CのSDAは27ピン(A4)に、SCLは28ピン(A5)に接続(各10kでプルアップ)しているだけです。
この有機ELは表示にかなりのフラッシュを必要とするのでキャラクタLCDのようには簡単に組み込めません。実験時に有用であろうと思います。
プログラムはこの様になりました。
10 有機ELをシリアル表示器とする おわり ↑






































7 NANO V3 ボード  2019.01.21

7 NANO V3 ボード おわり ↑




































工事中













inserted by FC2 system