.
Diff: Protocols/PAR8.cpp
- Revision:
- 4:12ba0ecc2c1f
- Parent:
- 1:ff019d22b275
- Child:
- 5:b222a9461d6b
--- a/Protocols/PAR8.cpp Sat Feb 14 17:42:21 2015 +0000 +++ b/Protocols/PAR8.cpp Sun Feb 15 20:06:07 2015 +0000 @@ -1,3 +1,21 @@ + /* mbed UniGraphic library - PAR8 protocol class + * Copyright (c) 2015 Giuliano Dianda + * Released under the MIT License: http://mbed.org/license/mit + * + * Derived work of: + * + * mbed library for 240*320 pixel display TFT based on ILI9341 LCD Controller + * Copyright (c) 2013 Peter Drescher - DC2PD + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + #include "PAR8.h" PAR8::PAR8(PortName port, PinName CS, PinName reset, PinName DC, PinName WR, PinName RD) @@ -53,41 +71,6 @@ _CS = 1; #endif } -void PAR8::wr_data8(unsigned char data, unsigned int count) -{ -#ifdef USE_CS - _CS = 0; -#endif - _DC = 1; // 1=data - _port.write(data); // write 8bit - while(count) - { - _WR=0; - // _WR=0; - _WR=1; - count--; - } -#ifdef USE_CS - _CS = 1; -#endif -} -void PAR8::wr_data8buf(unsigned char* data, unsigned int lenght) -{ -#ifdef USE_CS - _CS = 0; -#endif - _DC = 1; // 1=data - while(lenght) - { - _WR=0; - _port.write(*data++); // write 8bit - _WR=1; - lenght--; - } -#ifdef USE_CS - _CS = 1; -#endif -} void PAR8::wr_cmd16(unsigned short cmd) { #ifdef USE_CS @@ -120,7 +103,23 @@ _CS = 1; #endif } -void PAR8::wr_data16(unsigned short data, unsigned int count) +void PAR8::wr_gram(unsigned short data) +{ +#ifdef USE_CS + _CS = 0; +#endif + _DC = 1; // 1=data + _WR=0; + _port.write(data>>8); // write 8bit + _WR=1; + _WR=0; + _port.write(data&0xFF); // write 8bit + _WR=1; +#ifdef USE_CS + _CS = 1; +#endif +} +void PAR8::wr_gram(unsigned short data, unsigned int count) { #ifdef USE_CS _CS = 0; @@ -154,7 +153,7 @@ _CS = 1; #endif } -void PAR8::wr_data16buf(unsigned short* data, unsigned int lenght) +void PAR8::wr_grambuf(unsigned short* data, unsigned int lenght) { #ifdef USE_CS _CS = 0; @@ -175,6 +174,7 @@ _CS = 1; #endif } + void PAR8::hw_reset() { wait_ms(15);