USB current meter for TG-LPC11U35-501
Revision 1:e1d55b71e910, committed 2014-06-24
- Comitter:
- yasuyuki
- Date:
- Tue Jun 24 08:42:52 2014 +0000
- Parent:
- 0:4286edef4003
- Child:
- 2:d6fcc8bfc037
- Commit message:
- lib
Changed in this revision
--- a/AQM0802.cpp Sun Jun 22 09:44:50 2014 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,111 +0,0 @@
-//**********************
-// AQM0802.cpp for mbed
-//
-// AQM0802 lcd(P0_5,P0_4);
-// or
-// I2C i2c(P0_5,P0_4);
-// AQM0802 lcd(i2c);
-//
-// (C)Copyright 2014 All rights reserved by Y.Onodera
-// http://einstlab.web.fc2.com
-//**********************
-
-#include "mbed.h"
-#include "AQM0802.h"
-
-AQM0802::AQM0802 (PinName sda, PinName scl) : _i2c(sda, scl) {
- init();
-}
-AQM0802::AQM0802 (I2C& p_i2c) : _i2c(p_i2c) {
- init();
-}
-
-void AQM0802::put(unsigned char a, unsigned char b)
-{
- buf[0]=a;
- buf[1]=b;
- _i2c.write(AQM0802_ADDR, buf, 2);
-}
-
-
-void AQM0802::get(unsigned char a)
-{
- buf[0] = a;
- _i2c.write(AQM0802_ADDR, buf, 1, true); // no stop, repeated
- _i2c.read( AQM0802_ADDR, buf, 1);
-
-}
-
-void AQM0802::cls()
-{
- // Clear Display = 0x01
- put(CMD, 0x01);
- // Wait 1.08ms
- wait_ms(2);
-
-}
-
-void AQM0802::locate(int x, int y)
-{
-
- // 8x2
- put(CMD, 0x80 + y*0x40 + x);
-
-}
-
-void AQM0802::print(const char *a)
-{
-
- while(*a != '\0')
- {
- put(DAT, *a);
- a++;
- }
-
-}
-
-void AQM0802::init()
-{
- // Wait 40ms
- wait_ms(100);
- // Function set = 0x38
- put(CMD, 0x38);
- // Wait 26.3us
- wait_ms(1);
- // Function set = 0x39
- put(CMD, 0x39);
- // Wait 26.3us
- wait_ms(1);
- // Internal OSC frequency = 0x14
- put(CMD, 0x14);
- // Wait 26.3us
- wait_ms(1);
- // Contrast set = 0x70
- put(CMD, 0x70);
- // Wait 26.3us
- wait_ms(1);
- // Power/ICON/Contrast control = 0x56
- put(CMD, 0x56);
- // Wait 26.3us
- wait_ms(1);
- // Follower control = 0x6C
- put(CMD, 0x6C);
- // Wait 200ms
- wait_ms(200);
- // Function set = 0x38
- put(CMD, 0x38);
- // Wait 26.3us
- wait_ms(1);
- // Display ON/OFF control = 0x0C
- put(CMD, 0x0C);
- // Wait 26.3us
- wait_ms(1);
- // Clear Display = 0x01
- put(CMD, 0x01);
- // Wait 1.08ms
- wait_ms(2);
-
-}
-
-
-
--- a/AQM0802.h Sun Jun 22 09:44:50 2014 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-//**********************
-// AQM0802.h for mbed
-//
-// (C)Copyright 2014 All rights reserved by Y.Onodera
-// http://einstlab.web.fc2.com
-//**********************
-
-#ifndef AQM0802_H_
-#define AQM0802_H_
-
-#define AQM0802_ADDR 0x7c
-#define CMD 0x00
-#define DAT 0x40
-
-#include "mbed.h"
-
-//class AQM0802: public Stream{
-class AQM0802{
-public:
- AQM0802 (PinName sda, PinName scl);
- AQM0802 (I2C& p_i2c);
- void init();
-
- void put(unsigned char a, unsigned char b);
- void get(unsigned char a);
- void cls();
- void locate (int x, int y);
- void print (const char* a);
-
-protected:
-
- I2C _i2c;
-// virtual int _putc(int value);
-// virtual int _getc();
-
- char buf[2];
-
-};
-
-
-#endif /* AQM0802_H_ */
-
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/AQM0802.lib Tue Jun 24 08:42:52 2014 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/yasuyuki/code/AQM0802/#6fa303916aa8