WeMos (4) 1602 LCD i2c 表示
1602 LCD直接繋ぐと、6つのデジタルポートを占有(4つデータワイヤ+2の制御ワイヤが必要)し、GPIOはたくさん消耗するので、i2cを利用すると2つのアナログポートが足りる。 下記のURLから、ライブラリを利用 https://github.com/agnunez/ESP8266-I2C-LCD1602 しかし、表示がない! 持っている他のUno, Nanaに試したら、ちゃんと表示した。 LCD address to 0x27も間違いない。 どうして? /* * 1602 LCD Sample with LiquidCrystal_I2 * https://github.com/agnunez/ESP8266-I2C-LCD1602 * * PCF8574—–1602LCD—–WeMos * A0 —–GND * A1 —–GND * A2 —–GND * VSS —–GND * P0 —– RS * P1 —– RW * P2 —– EN * P3 —– B/L * P4 —– […]
Arduino UNO (5) BLE + 1602 LCD
BLE受信したデータは、1602 LCD表示するようにプログラムを改造。 受信があると、LCDに起動時間と受信文字が表示される。 ただ、複数の文字を送ると、最後の文字しか残らない。 #include <SoftwareSerial.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,16,2); SoftwareSerial mySerial(7, 8); // RX, TX // Connect HM10 Arduino Uno // Pin 1/TXD Pin 7 // Pin 2/RXD Pin 8 void setup() { lcd.init(); lcd.backlight(); lcd.setCursor(0, 0); lcd.print(“BLE Test:”); Serial.begin(9600); // If the baudrate of the HM-10 module has been updated, // you may […]
Arduino UNO (3) 1602 LCD i2c 表示
1602 LCD直接繋ぐと、6つのデジタルポートを占有(4つデータワイヤ+2の制御ワイヤが必要)し、GPIOはたくさん消耗するので、i2cを利用すると2つのアナログポートが足りる。 WeMosで試すと、うまくいかないので、より汎用のこのNANOで試す。すんなりうまくいく。行きよいでUnoにも試す。これを成功することて、次に、BLT通信を実験するさい、受信文字をモニタリングできる。 I2C インターフェイス SDA、SCL は Arduino Uno ではそれぞれ A4、A5 です。 Arduino Uno R3 SDA A4 SCL A5 Arduino UnoのバージョンR3では、SDA、SCLピンが存在する。 以前のバージョンではSDAがA4ピン、SCLがA5ピンにそれぞれ割り当てられているが、R3についてもこのピンをI2C通信時に兼用しているため、A4、A5ピンは使用できない。 サンプルプログラム。 #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,16,2); void setup() { lcd.init(); lcd.backlight(); lcd.setCursor(0, 0); lcd.print(“Hello, world!”); } void loop(){ // set the cursor to column 0, line 1 // (note: line 1 is the second […]
Arduino NANO (2) 1602 LCD i2c 表示
1602 LCD直接繋ぐと、6つのデジタルポートを占有(4つデータワイヤ+2の制御ワイヤが必要)し、GPIOはたくさん消耗するので、i2cを利用すると2つのアナログポートが足りる。 WeMosで試すと、うまくいかないので、より汎用のこのNANOで試す。すんなりうまくいく。 I2C インターフェイス SDA、SCL は Arduino Nano ではそれぞれ A4、A5 です。 Arduino Nano SDA A4 SCL A5 サンプルプログラム。 #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,16,2); void setup() { lcd.init(); lcd.backlight(); lcd.setCursor(0, 0); lcd.print(“Hello, world!”); } void loop(){ // set the cursor to column 0, line 1 // (note: line 1 is the second row, since counting begins […]
WeMos (3) 1602 LCD 表示
OSが付いてないので、GUIの実現は難しい。 簡単に文字が表示できるデバイス1602 LCDを使う。 /* * 1602 LCD Sample * * 1602LCD —- WeMos * GND —- GND * VCC —- 5V * VE —- Variable resistor * RS —- D1(GPIO5) * R/W —- GND * Enable —- D2(GPIO4) * DB0 —- N.C * DB1 —- N.C * DB2 —- N.C * DB3 —- N.C * […]