macsbug

Just another WordPress.com site

Archive for 6月 2015

Information of ESP8266 随時追加

with 2 comments

ESP8266 WiFi module の情報を随時追加して行きます。            2015.06.21 〜


内容 TITLE ( リンク )
Hardware User Guide ESP8266EX Hardware User Guide
Data Sheet ESP8266EX DataSheet Version 4.3
ESP-WROOM-02 Data Sheet ESP-WROOM-02 WiFi Module Version 0.3
‪Document list 0A-0D‬ ESP 8266 Development Guide‬
AT COMMAND と 応答事例 AT commands
基本的な接続方法とATコマンド ESP8266 WiFi Module Quick Start Guide
ATコマンド一覧表(簡易版) A4,1枚 ESP8266 AT Command Set
ATコマンド リファレンス ESP8266 – AT Command Reference
ATコマンド インストラクション ESP8266 AT Instruction Set Version 0.30
全般に渡る説明 NURDs ESP8266
詳細、配線図、ATコマンドチャート ESP8266 Serial WIFI Module
リファレンス、ATコマンド詳細 ESP8266 REFERENCE
ESP-01~ESP-13を写真で紹介 ESP8266モジュールを比較してみた
ESP-01~ESP-13までの機能比較表 機能比較表
Community Forum 及び WiKi ESP8266 Community Forum
hackster.ioの記事は楽しい hackster.io ESP8266
動く基本的なサンプルがある。 ALLAboutEE
具体例を画像で紹介と解説 instructables ESP8266
Dani Eichhorn氏の記事は丁寧 Dani Eichhorn    ,     SquixTechBlog
Marco Schwartz氏の記事は丁寧 Open Home Automation
技適済みWi-FiモジュールでIoT入門 Cerevo TechBlog
TUTORIALSが解り易い ESP8266
cerevo社 ESP-WROOM-02 BRILLIANTSERVICE TECHNICAL BLO
ESP-WROOM-02お試しの記事は丁寧 格安無線LANモジュールESP-WROOM-02お試し
ファームウェアの書き込み方法 ESP8266のファームウェアを更新masato’s blog
技適中華IoTモジュールを使いこなす BRILLIANTSERVICE TECHNICAL BLOG
ESP-WROOM-02の具体例 電子工作と介護と生活と・・・移転先
多方面に詳しく具体例も多い。 ともの技術メモ
ESP-WROOM-02 日本語版 ESP-WROOM-02 WiFi Module Japanese Version 0.3
ESP8266 の基本編(ElectroDragon) ESP8266
ESP8266 の基本編(ElectroDragon) ESP8266 Arduino
ESP8266 の基本編(ElectroDragon) ESP8266 firmware
ESP8266 の基本編(ElectroDragon) ESP8266 AT-command firmware
ESP-12 のスペック JUNKHACK:ESP8266 ESP-12 spec
ESP12 皆さん工夫してます JUNKHACK:ESP12の配線いろいろ
ESP12でDoubleBlink JUNKHACK:ESP8266 ESP-12 DoubleBlink
SDK V1.2.0 espressif:‪esp_iot_sdk_v1.2.0_15_07_03‬
IDE対応SDKのAPIマニュアル(DOC) esp8266-devkit
メモリーマップ Memory Map
ブートプロセス(SD CARD でBOOT可) Boot Process
林 伸夫氏の電子工作日記 1000円以下でIoTシステム!アプリ制作時間は15分
ESP8266実践編 コンピュータと足湯と園芸のブログ
公式サポートサイトの断片的な情報 ESPRESSIF (公式サポートサイト)
ESP8266の基本が丁寧に書かれている esp8266-wiki
Firmwareのアップと動くサンプル Flash ESP8266 Firmware using esptool.py
SDK,FW,Memory Map,開発環境詳細 KLAB株式会社:DSASブログ:SSL Client 機能追加
ファームウェアのアップデート詳細 Firmware Over The Air (FOTA) for ESP8266 SoC
ESP8266 SDK espressif.com
SDK v1.2.0 (2015.07.03) bbs.espressif.com:esp_iot_sdk_v1.2.0_15_07_03
SDK v1.2.0 Patch for SSL bbs.espressif.com:SDK v1.2.0 Patch for SSL
SDK v1.3.0 (2015.08.08) bbs.espressif.com:esp_iot_sdk_v1.3.0_15_08_08
SDK v1.3.0 patch for SSL bbs.espressif.com:esp_iot_sdk_v1.3.0 patch for SSL
SDK v1.4.0 最新版 esp_iot_sdk_v1.4.0_15_09_18 Release
RF paramater www.esp8266.com:esp_init_data_default.bin
ファームウェアの書き込みTool bbs.espressif.com:Flash Download Tool
解り易い解説と動くサンプル Bring IOT to Arduino, together
解り易いインストレーションの方法 installation guide of Arduino IDE for ESP 8266
オシロで実測、RF出力時=280mA ESP-WROOM-02を使う3 -そんな電源で大丈夫か-
ArduinoとESP-WROOM-02実践編 mkbtm:ESP-WROOM-02を使う〜気温測定をグラフ
丁寧で詳しい解説 WiFiモジュール(ESP-WROOM-02)
ハイレベルな詳しい解説 技適OKな中華IoTモジュールを使いこなす
各社のESP-WROOM-02の実践編 ESP-WROOM-02を使ってみる
もの凄い量の資料です。 http://esp8266.ru の「DATASHEETS
. .
ESP8266 FCC,CE,技適 情報 —————————
FCC,CEE ESP8266EX Wi-Fi SoC Has Been FCC & CE CertifiedES
マニュアル(2015.6.2)(9 Page) 0C-ESP8266 WROOM WiFi Module Datasheet EN‬
FCC ID : ESPRESSIF SYSTEMS 2AC7Z-ESPWROOM02
TELEC認証 TELEC認証
技適取得済み無線LANモジュール販売 INTERNET Watch 2015.07.07
ESP-WROOM-02 206-000519 技術基準適合証明

AT Command リストには、2014と記載してある。つまり去年から始まったと理解して良いか。 海外には沢山の実例があり、この低価格のチップにより個人のIOTが盛んになっている事が解る。 ところが、日本からの記事は数件ほどしかない。 Platformsの環境は、Arduino & ESP8266、Lua、NodeMCU、NodeLua、がある。 Arduinoには、ESP8266を単体で動かす、ESP8266 Libraryがある。 Arduinoの良さは、初心者でも解る実態配線と直ぐ動くスケッチがある事。しかしESPは、まだ少ない。

その後、技適適用のESP-WROOM-02 が、2015年7月に販売され、日本からの記事が出て来た。
苦労された方々に感謝。

Written by macsbug

6月 21, 2015 at 12:48 am

カテゴリー: ESP8266, New Infomation

Xbee WiFi to iPad

leave a comment »

目的: Xbee WiFi を使用し iPad(iPhone,iPod touch)と接続する。                 2015.06.15 (過去の備忘録)

方法: Wi-Fi アドホックモード で接続し相互に通信する。


Xbee WiFi の設定:Windows XP + X-CTU を使用する方法。

注:Mac用X-CTUは、「じわじわ進む」を参照の事:MacでXBeeの設定をする:X-CTU for Mac


 

 



Arduinoの設定:スケッチ( 32Bit random output)

char bit32[33] = "11110111001011010010110100101011"; 

void setup(){
  Serial.begin(9600);
  pinMode(13, OUTPUT)
}

void loop(){
  for ( int i=5; i<32; i=i+1 ){
    int r = random(1,10);
                bit32[i] = '0';
    if ( r>5 ){ bit32[i] = '1'; }
  }
  Serial.println(bit32);          // 32bit output
  digitalWrite(13,HIGH);
  delay(1000);
   for ( int i=5; i<32; i=i+1 ){
     int r = random(1,10);
     bit32[i]='0';
     if( r>5 ){ bit32[i]='1';}
   }
   Serial.println(bit32);         // 32bit output
   digitalWrite(13,LOW);
   delay(1000);
   Serial.println("Hello World"); // "Hello World" output
   delay(1000);
}

iPad Application による動作例

 


Test Program による動作例

Xcode iOS SDK + Mac OSX Lion + iPad 5.1.1

Written by macsbug

6月 15, 2015 at 11:23 am

カテゴリー: Arduino

Resistance Logger for HTBasic

leave a comment »

HTBasic で、レジスタンス・ロガーを作成。                  2015.06.07


デジタルマルチメーターのオームレンジで抵抗値を測定しグラフで表示する。
軸:縦は抵抗値、横は時間(分)で抵抗値の変化をグラフ化する。
スライドバー:左は縦軸の変更、右は時間軸の変更(測定中に変更可)。
警告音:リミット値を超えるとスピーカーから音が出る。



HTBasic は、Rocky Mountain BASIC (RMB) 言語のためのBASICインタープリタです。
GPIBインターフェースを通じ計測器(GPIB付)をコントロールしデーターを取得します。
OS環境:Windows。
使用計測器:Agirent 3458A 叉は、Agirent 34401A
汎用性:縦軸の抵抗値をDC電圧に変更すると、DC LOGGERになります。
時間間隔:約0.5秒で低速です。
未装備:オートレンジは組み込んでいませんが、追加は簡単です。


メモ:
今時、HTBasicの話は極めて少ないと思いますが、PLUS MODULE が素晴らしく、備忘録としました。
高性能で高価な計測器を自在に扱えると便利ですし、仮想の計測装置が作れます。
参考:HP-BASIC入門。 HTBasic Tip


プログラムを以下に示します。


1000 ! RE-STORE "RESISTANCE_LOGGER"
1010 !***********************************************************************
1020 ! RESISTANCE LOGGER PROGRAM  !
1030 !-----------------------------------------------------------------------
1040 !     COPYRIGHT              ! ORG               : BY macsbug
1050 !     ORG 2008.07.--         ! BPLUS DESIGN      : BY macsbug
1060 !     REV 2015.05.--         ! Resistance Logger : BY macsbug
1070 ! **********************************************************************
1080 ! Black=0,White=1,Red=2,Yellow=3,Green=4,Cyan=5,Blue=6,Magenta=7
1090 LOAD BIN "BPLUS"             ! PLUS MODULE LOADING
1100 DIM M$(0:4)[20],T$[80]       ! Menu,TITLE
1110     ! I/O -------------------!
1120 Hpib=8                       ! HPIB SYSTEM No.
1130 Dvm=803                      ! DVM HPIB ADDRESS. HP3478A(Agilent 34401A)
1140     ! Variable --------------!
1150 M$(0)="Loop Test=OFF"        ! SYSTEM MENU = Loop Test     ON/OFF
1160 M$(1)="Printer=OFF"          ! SYSTEM MENU = Printer       ON/OFF
1170 M$(2)="Sound=ON "            ! SYSTEM MENU = Sound Monitor ON/OFF
1180 M$(3)="Print"                ! SYSTEM MENU = Printout
1190 M$(4)="Quit"                 ! SYSTEM MENU = Quit
1200 T$=" RESISTANCE LOGGER"      ! TITLE
1210 R_limit=10                   ! RESISTOR LIMIT
1220 CLEAR SCREEN                                                  !
1230 CALL Date(D$)                                                 ! DATE
1240 KEY LABELS OFF                                                !
1250 !------------------------------------------------------------------------
1260 ! DATE                                                        !
1270 !------------------------------------------------------------------------
1280  ASSIGN @Dt TO WIDGET "PRINTER";SET ("BACKGROUND":1)          !
1290 CONTROL @Dt;SET ("X":815,"Y":10,"HEIGHT":70,"WIDTH":200)      !
1300 CONTROL @Dt;SET ("TITLE":"DATE")                              !
1310 CONTROL @Dt;SET ("FONT":"20 BY 20,BOLD")                      ! FONT SIZE
1320 CONTROL @Dt;SET ("APPEND TEXT":"   "&D$)                      !
1330 !------------------------------------------------------------------------
1340 ! CLOCK                                                       !
1350 !------------------------------------------------------------------------
1360  ASSIGN @Clock TO WIDGET "CLOCK"                              !
1370 CONTROL @Clock;SET ("TITLE":" TIME","BACKGROUND":37)          !
1380 CONTROL @Clock;SET ("X":815,"Y":85,"HEIGHT":200,"WIDTH":200)  !
1390 !------------------------------------------------------------------------
1400  Io_set_up:!--------------------------------------------------!---------
1410 CONTROL 10,102;1             ! PRINTER SELECT     = LAN PRINTER
1420 CLEAR SCREEN                 ! SCREEN             = CLEAR
1430 KEY LABELS OFF               ! MENU KEY DISPLAY   = OFF
1440 REMOTE Hpib                  ! HPIB SETUP
1450 CLEAR Dvm                    ! DIGITAL VOLT METER HP3458A = CLEAR
1460 WAIT 1                       !
1470 OUTPUT Dvm;"PRESET"          ! DVM Agirent 3458A = RESISTOR MODE
1480 WAIT 1                       ! DVM Agirent 3458A
1490 OUTPUT Dvm;"NORM"            ! DVM Agirent 3458A
1500 WAIT 1                       ! DVM Agirent 3458A
1510 OUTPUT Dvm;"OHM"             ! DVM Agirent 3458A
1530 !OUTPUT Dvm;"F3R2N3T1Z1"     ! DVM 34401A:R1=30,R2=300ohm,RA=AUTO RANGE
1540 WAIT 1                       !
1550 !------------------------------------------------------------------------
1560 ! VERTICAL SIZE SLIDER
1570 !------------------------------------------------------------------------
1580 Yh=300                                                        ! VERTICAL
1590  ASSIGN @S1 TO WIDGET "SLIDER"                                ! SLIDER
1600 CONTROL @S1;SET ("TITLE":"Y")                                 !
1610 CONTROL @S1;SET ("X":815,"Y":290,"WIDTH":80,"HEIGHT":253)     ! POSITION
1620 CONTROL @S1;SET ("MINIMUM":1,"MAXIMUM":20000)                 ! OHM 1-20000
1630      ON EVENT @S1,"DONE" GOSUB Cg1                            !
1640 !------------------------------------------------------------------------
1650 ! HORIZONTAL SIZE SLIDER SET UP                               !
1660 !------------------------------------------------------------------------
1670 Xh=30                                                         ! HORIZONTAL
1680  ASSIGN @T1 TO WIDGET "SLIDER"                                ! SLIDER
1690 CONTROL @T1;SET ("TITLE":"X")                                 !
1700 CONTROL @T1;SET ("X":900,"Y":290,"WIDTH":80,"HEIGHT":253)     ! POSITION
1710 CONTROL @T1;SET ("MINIMUM":30,"MAXIMUM":180)                  ! TIME min
1720      ON EVENT @T1,"DONE" GOSUB Cg2                            ! -> Cg2
1730 !------------------------------------------------------------------------
1740 !Resistance_chart_set_up:!------------------------------------!----------
1750 ASSIGN @P TO WIDGET "STRIPCHART"                              ! MODULE
1760 CONTROL @P;SET ("SYSTEM MENU":M$(*))                          ! MENU
1770 CONTROL @P;SET ("TITLE":T$)                                   ! TITLE
1780 CONTROL @P;SET ("SHOW GRID":1,"TRACE BACKGROUND":1)           ! 1=White
1790 CONTROL @P;SET ("X":10,"Y":5,"WIDTH":800,"HEIGHT":270*2)      ! X,Y,W,H
1800 CONTROL @P;SET ("CURRENT AXIS":"X","ORIGIN":0,"RANGE":30)     ! 30min
1810 CONTROL @P;SET ("CURRENT AXIS":"X","AXIS LABEL":"minutes")    ! X LABEL
1820 CONTROL @P;SET ("CURRENT AXIS":"Y","ORIGIN":0.,"RANGE":Yh)    ! VERTICAL
1830 CONTROL @P;SET ("CURRENT AXIS":"Y","AXIS LABEL":"ohm")        ! Y LABEL
1840 CONTROL @P;SET ("TRACE PEN":2,"VISIBLE":1)                    ! 2=Red
1850 CONTROL @P;SET ("TRACE COUNT":10,"CURRENT TRACE":0)           !
1860 CONTROL @P;SET ("POINT CAPACITY":216000)                      ! 3600*60*3
1870 ON EVENT @P,"SYSTEM MENU" GOSUB Sysmenu                       ! MENU EVEN
1880 !Main Routine ------------------------------------------------!----------
1890  Measure: S=TIMEDATE                                          ! START T
1900  Loop:! RESISTOR ---------------------------------------------!----------
1910 WAIT .5                                                       ! SICL time
1920 ENTER Dvm;D                                                   ! RESISTOR
1930 IF M$(2)="Sound=ON " AND D>R_limit THEN BEEP                  ! LIMIT OUT
1940 CONTROL @P;SET ("CURRENT TRACE":1,"TRACE PEN":2)              ! DRAW SET
1950 CONTROL @P;SET ("POINT LOCATION":(TIMEDATE-S)/60,"VALUE":D)   ! DRAW
1960 DISP "TIME = "&VAL$(INT(TIMEDATE-S))&" sec",                  ! DISP TIME
1970 DISP "RESISTOR = "&VAL$(D)&" ohm",                            ! DISP DATA
1980 DISP M$(0),M$(2),M$(1)                                        ! DISP MENU
1990 !-------------------------------------------------------------!----------
2000 IF (TIMEDATE-S)<(Xh*60-10) THEN GOTO Loop                     ! LOOP
2010        !------------------------------------------------------!
2020 IF M$(1)="Printer=ON " THEN CALL Print_out                    ! PRINT OUT
2030 IF M$(0)="Loop Test=ON " THEN                                 !
2040 CONTROL @P;SET ("CURRENT TRACE":0,"VALID POINTS":0)           ! RESET
2050 GOTO Measure                                                  ! RE-START
2060 END IF                                                        !
2070 GOTO Finish                                                   ! END
2080 !=============================================================!==========
2090 ! SYSTEM MENU EVENT ROUTINE                                   !
2100  Sysmenu: !---------------------------------------------------!
2110 STATUS @P;RETURN ("SYSTEM MENU EVENT":N)                      !
2120 IF N=3 THEN CALL Print_out                                    ! Print
2130 IF N=4 THEN GOTO Finish                                       ! Quit
2140 IF M$(N)="Loop Test=ON " THEN T$="Loop Test=OFF"              ! N=0
2150 IF M$(N)="Loop Test=OFF" THEN T$="Loop Test=ON "              ! Loop Test
2160 IF M$(N)="Printer=ON " THEN T$="Printer=OFF"                  ! N=1
2170 IF M$(N)="Printer=OFF" THEN T$="Printer=ON "                  ! Printer
2180 IF M$(N)="Sound=ON " THEN T$="Sound=OFF"                      ! N=2
2190 IF M$(N)="Sound=OFF" THEN T$="Sound=ON "                      ! Sound
2200 IF N=0 OR N=1 OR N=2 THEN                                     !
2210 M$(N)=T$                                                      ! MENU CG
2220 CONTROL @P;SET ("SYSTEM MENU":M$(*))                          ! MENU SET
2230 END IF                                                        !
2240 RETURN                                                        !
2250 !-------------------------------------------------------------!
2260 ! REGISTOR SLIDER SELECT                                      !
2270 !-------------------------------------------------------------!
2280  Cg1:!                                                        !
2290    STATUS @S1;RETURN ("VALUE":Yh)                             ! SLIDER
2300    CONTROL @P;SET ("CURRENT AXIS":"Y","ORIGIN":0.,"RANGE":Yh) ! VERTICAL
2310    RETURN                                                     !
2320 !-------------------------------------------------------------!
2330 ! HORIZONTAL SLIDER SELECT                                    !
2340 !-------------------------------------------------------------!
2350  Cg2:!                                                        !
2360    STATUS @T1;RETURN ("VALUE":Xh)                             ! SLIDER
2370    CONTROL @P;SET ("CURRENT AXIS":"X","ORIGIN":0,"RANGE":Xh)  ! min
2380    RETURN                                                     !
2390 !=============================================================!==========
2400  Finish: !----------------------------------------------------! END
2410 INPUT "MONITOR END ? (ENTER)",A$                              !
2420 ASSIGN @P TO *                                                !
2430 ASSIGN @S1 TO *                                               !
2440 END                                                           !
2450 !========================================================================
2460 ! CALL SUBROUTINE                                             !
2470 !========================================================================
2480 SUB Print_out                                                 !
2490 GINIT                                                         !
2500 GCLEAR                                                        !
2510 AREA PEN 1                                                    ! White
2520 RECTANGLE 1024,768,FILL,EDGE                                  ! FILL
2530 RECTANGLE 10,10,FILL,EDGE                                     ! BG=White
2540 CONFIGURE SYSTEM ("DUMP;PLUS")                                ! MODULE
2550 CONFIGURE DUMP TO "WIN-DUMP;INVERT"                           ! INVERT
2560 DUMP GRAPHICS #10                                             ! PRINT OUT
2570 CLEAR SCREEN                                                  !
2580 SUBEND                                                        !
2590 !-------------------------------------------------------------!----------
2600  SUB Date(Ymd$)                                               ! CALCURATE
2610 !-------------------------------------------------------------!----------
2620 DIM Y$(12)[3],X$(12)[3]                                       ! DATE
2630 DATA Jan,01,Feb,02,Mar,03,Apr,04,May,05,Jun,06                ! 1 TO  6
2640 DATA Jul,07,Aug,08,Sep,09,Oct,10,Nov,11,Dec,12                ! 7 TO 12
2650   FOR I=1 TO 12                                               ! 1 TO 12
2660       READ Y$(I),X$(I)                                        ! DATA READ
2670   NEXT I                                                      !
2680   D$=DATE$(TIMEDATE)                                          ! TODAY
2690   Mon$=D$[4,6]                                                ! MONTH
2700   FOR I=1 TO 12                                               ! 1 TO 12
2710       SELECT Mon$                                             ! SEL MANTH
2720       CASE Y$(I)                                              ! SEL YEAR
2730       Mon$=X$(I)                                              ! SET MANTH
2740       Day$=D$[1,2]                                            ! SET DAY
2750       IF Day$[1,1]=" " THEN Day$="0"&Day$[2,2]                ! " " = 0
2760          Year$=D$[8,11]                                       ! SET YEAR
2770          Ymd$=Year$&"."&Mon$&"."&Day$                         ! YYYY.
2780       END SELECT                                              ! MM.DD
2790   NEXT I                                                      !
2800 SUBEND                                                        !
2810 !=============================================================!==========


Written by macsbug

6月 7, 2015 at 7:39 am

カテゴリー: Knowledge

I2C 128X64 OLED Display for Arduino

leave a comment »

Blue 0.96 inch I2C 128X64 OLED Display をArduinoで動かしてみた。              2015.06.05


準備:
1. Arduino UNO + Arduino IDE 1.5.5。ブレッドボード。
2. Blue 0.96 inch I2C 128X64 OLED Display。 ebay:1個491円。(Amazonでは1280円とか)
3. Library:U8glib for Arduino :DLしライブラリ−に追加。U∞gのメンバーに感謝。これが無ければ出来ません。
4. 配線:Arduino 3.3V(or 5V) — OLED VCC, GND — GND, A4(SDA) — SDA, A5(SCL) — SCL


スケッチ:上記画像は、U8glib > examples中にあるGraphic Test。リスト中の以下コメント(//)を外す。
_    U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE|U8G_I2C_OPT_DEV_0);
_ 文字の表示方法は、u8g.drawStr( x, y, “Hello World!”); //(x=0-127,y=0-63 で簡単です。


参考:
Ug:U∞g galkery。解り易い実例。
ProgramResource.net:I2C 128×64 OLEDディスプレイをArduinoで使う
Arduino mini-oscilloscope:オシロスコープが動く(Youtube)。ここからスケッチをDLすると直ぐ動きます。
SSD1306 Datasheet(PDF):128 x 64 Dot Matrix OLED/PLED Segment/Common Driver with Controller


仕様:0.96 インチ 4Pin I2C ブルー OLED ディスプレイ モジュール Arduino対応
_ 解析度: 128×64。OLED 内蔵 ドライブ チップ: SSD1306。
_ VCC: 2.2V-5.5V。SCL: クロック (2V-5.5V)。SDA: データ (2.2V-5.5V)。
_ パワー 供給レンジ: DC 3V-5V。パワー: 0.06W。温度: -30°C to 70°C。サイズ: 29.28 x 27.1 mm (LW)


メモ:
OLEDの利点:画像の明るさは充分で文字は鮮明に見えかなり綺麗。
UNOの使用メモリー:上記のGraphic Testは、32256 byte の内 13,356 byte(41%)使用し、かなりメモリーを使う。
_ adafruitのLibraryもあり、更にメモリーを使用するらしい。
配線が楽:I2Cは4本のみで簡単。
Arduino I/O端子への効能:i2C方式は、端子数の多いディスプレーより使えるI/Oが多くなる。
_ ただし、ディスプレールーチンはメモリーを占有する為、大きなスケッチは書けない。
U8glib Library:2012年から記載され、多種のProcessor, Driver, OLEDに対応した作りに驚嘆します。
_ 使用できる命令は、70もあり凄い。素晴らしいメンバーに感謝。
adafruit:adafruitの中には、128×64 I2C OLED は無いらしい。
部品入手:動作したのでebayへ追加注文。1個466円があった。(2015.06.05)。追記:2015.06.11着。
製品の注意:VCCとGNDの表記が今回とは逆配置の製品があるらしい。端子の名前を確認する事。


文字表示サンプルコード:Hello World!

#include "U8glib.h"
U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE|U8G_I2C_OPT_DEV_0);	// I2C / TWI
void setup(void) {
  u8g.setColorIndex(1);   // pixel on
  u8g.setFont(u8g_font_unifont);
}
void loop(void) {
  u8g.firstPage();
  do {
    u8g.drawStr( 0, 22, "Hello World!");
  } while( u8g.nextPage() );
  delay(50);
}


Written by macsbug

6月 5, 2015 at 3:48 am

カテゴリー: Arduino