Nucleo F401RE で使える I2C 接続の LCD ACM1602Ni 用のライブラリの使用例. Demo program of library for LCD ACM1602Ni connected using I2C interface on Nucleo F401.

Dependencies:   UIT_ACM1602NI mbed

Committer:
MikamiUitOpen
Date:
Fri Apr 01 04:29:04 2016 +0000
Revision:
1:d5e9bd9b38ad
Parent:
0:132eb47d57fb
2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MikamiUitOpen 0:132eb47d57fb 1 //------------------------------------------------------------
MikamiUitOpen 0:132eb47d57fb 2 // Demo program for LCD ACM1602NI using I2C interface
MikamiUitOpen 0:132eb47d57fb 3 // Pullup resistors for SDA and SCL: 4.7 kΩ
MikamiUitOpen 1:d5e9bd9b38ad 4 // 2016/04/01, Copyright (c) 2016 MIKAMI, Naoki
MikamiUitOpen 0:132eb47d57fb 5 //------------------------------------------------------------
MikamiUitOpen 0:132eb47d57fb 6
MikamiUitOpen 0:132eb47d57fb 7 #include "ACM1602NI.hpp"
MikamiUitOpen 0:132eb47d57fb 8 using namespace Mikami;
MikamiUitOpen 0:132eb47d57fb 9
MikamiUitOpen 0:132eb47d57fb 10 Acm1602Ni lcd_; // Default, OK
MikamiUitOpen 0:132eb47d57fb 11 //Acm1602Ni lcd_(D14, D15); // OK
MikamiUitOpen 0:132eb47d57fb 12 //Acm1602Ni lcd_(D14, D15, 200000); // OK
MikamiUitOpen 0:132eb47d57fb 13 //Acm1602Ni lcd_(D14, D15, 200000, true, true); // OK
MikamiUitOpen 0:132eb47d57fb 14 //Acm1602Ni lcd_(PB_3, PB_10); // OK
MikamiUitOpen 0:132eb47d57fb 15 //Acm1602Ni lcd_(PC_9, PA_8); // OK
MikamiUitOpen 0:132eb47d57fb 16 //Acm1602Ni lcd_(PB_4, PA_8); // OK
MikamiUitOpen 0:132eb47d57fb 17
MikamiUitOpen 0:132eb47d57fb 18 Ticker timer_;
MikamiUitOpen 0:132eb47d57fb 19
MikamiUitOpen 0:132eb47d57fb 20 // Display elapsed time in minutes and seconds
MikamiUitOpen 0:132eb47d57fb 21 void TimerIsr()
MikamiUitOpen 0:132eb47d57fb 22 {
MikamiUitOpen 0:132eb47d57fb 23 static int k = 0;
MikamiUitOpen 1:d5e9bd9b38ad 24
MikamiUitOpen 1:d5e9bd9b38ad 25 div_t ms = div(k, 60);
MikamiUitOpen 1:d5e9bd9b38ad 26 /*
MikamiUitOpen 0:132eb47d57fb 27 char str[20];
MikamiUitOpen 1:d5e9bd9b38ad 28 sprintf(str, "%d'%2d\"", ms.quot, ms.rem);
MikamiUitOpen 0:132eb47d57fb 29 lcd_.WriteStringXY(str, 0, 1);
MikamiUitOpen 1:d5e9bd9b38ad 30 */
MikamiUitOpen 1:d5e9bd9b38ad 31 lcd_.WriteValueXY("%d'", ms.quot, 0, 1);
MikamiUitOpen 1:d5e9bd9b38ad 32 lcd_.WriteValue("%2d\"", ms.rem);
MikamiUitOpen 0:132eb47d57fb 33 k++;
MikamiUitOpen 0:132eb47d57fb 34 }
MikamiUitOpen 0:132eb47d57fb 35
MikamiUitOpen 0:132eb47d57fb 36 int main()
MikamiUitOpen 0:132eb47d57fb 37 {
MikamiUitOpen 0:132eb47d57fb 38 if (lcd_.IsConnected()) printf("\r\nConnected");
MikamiUitOpen 0:132eb47d57fb 39 else printf("\r\nDisconnected");
MikamiUitOpen 0:132eb47d57fb 40
MikamiUitOpen 0:132eb47d57fb 41 lcd_.WriteString("Hello World!");
MikamiUitOpen 0:132eb47d57fb 42
MikamiUitOpen 0:132eb47d57fb 43 TimerIsr();
MikamiUitOpen 0:132eb47d57fb 44 timer_.attach(&TimerIsr, 1);
MikamiUitOpen 0:132eb47d57fb 45
MikamiUitOpen 0:132eb47d57fb 46 while (true) {}
MikamiUitOpen 0:132eb47d57fb 47 }
MikamiUitOpen 0:132eb47d57fb 48