00001 /* 00002 Object Oriented Mobile Robot Model (OOMRM) C++ Library Copyright (C) 2002-2005 Derek Jones 00003 00004 This library is free software; you can redistribute it and/or 00005 modify it under the terms of the GNU Lesser General Public 00006 License as published by the Free Software Foundation; either 00007 version 2.1 of the License, or (at your option) any later version. 00008 00009 This library is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 Lesser General Public License for more details. 00013 00014 You should have received a copy of the GNU Lesser General Public 00015 License along with this library; if not, write to the Free Software 00016 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00017 */ 00018 00019 #ifndef _BLCD_H 00020 #define _BLCD_H 00021 #include <hardware/oomrm.h> 00022 #define LCD_REG 0xf00800 00023 #define LCD_DATA 0xf00801 00024 00025 00040 class bLCD : public virtual OOMRM 00041 { 00042 public: 00043 bLCD(); 00044 bLCD(int row, int col,uint8 subclass=0); 00045 static int echo(int row, const char* const string); 00046 static void clear(int row); 00047 private: 00048 bLCD(const bLCD&); // copy constructor illegal except subclass 00049 bLCD& operator= (const bLCD&); // assignment illegal except on subclass 00050 static int lcd_write_reg(char val); 00051 static int lcd_write_data(char val); 00052 static void init(int row, int col,uint8 subclass); 00053 }; 00054 00055 #endif
1.3