diff options
author | David A. Mellis <d.mellis@arduino.cc> | 2007-10-06 14:47:50 +0000 |
---|---|---|
committer | David A. Mellis <d.mellis@arduino.cc> | 2007-10-06 14:47:50 +0000 |
commit | 5f3976696ddf5d02ea7e6f805ce655e1f281e6ed (patch) | |
tree | 547c97780b4a79c5fac43ebcd017ddfb9b73971c /cores/wiring/Matrix.h | |
parent | 72e9f39fbde96b484338cbbd785680e5ab4a2e72 (diff) |
Moving hardware/targets to hardware/cores.
Diffstat (limited to 'cores/wiring/Matrix.h')
-rwxr-xr-x | cores/wiring/Matrix.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/cores/wiring/Matrix.h b/cores/wiring/Matrix.h new file mode 100755 index 0000000..6c2ac00 --- /dev/null +++ b/cores/wiring/Matrix.h @@ -0,0 +1,56 @@ +/* + Matrix.h - Max7219 LED Matrix library for Arduino & Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef Matrix_h +#define Matrix_h + +// include core Wiring API +#include "WProgram.h" + +// declare other libraries depended on (if any) +class Sprite; + +class Matrix +{ + private: + byte _pinData; + byte _pinClock; + byte _pinLoad; + + byte* _buffer; + byte _screens; + byte _maximumX; + + void putByte(byte); + void setRegister(byte, byte); + void syncRow(int); + + void setScanLimit(byte); + + void buffer(int, int, byte); + public: + Matrix(byte, byte, byte, byte = 1); + void setBrightness(byte); + void write(int, int, byte); + void write(int, int, Sprite); + void clear(void); +}; + +#endif + |