diff --git a/FactoryTest/gomi/TFTTerminal.cpp b/FactoryTest/gomi/TFTTerminal.cpp deleted file mode 100644 index 0e38574..0000000 --- a/FactoryTest/gomi/TFTTerminal.cpp +++ /dev/null @@ -1,151 +0,0 @@ -#include "TFTTerminal.h" - -TFTTerminal::TFTTerminal(LGFX_Sprite *dis_buff_ptr) -{ - _dis_buff_ptr = dis_buff_ptr; - memset(discharbuff, 0, 55 * 60); -} - -TFTTerminal::~TFTTerminal() -{ - -} - - -void TFTTerminal::setcolor( uint16_t color, uint16_t bk_color ) -{ - _color = color; - _bkcolor = bk_color; -} - -void TFTTerminal::setGeometry(uint16_t x, uint16_t y, uint16_t w, uint16_t h ) -{ - _win_x_pos = x; - _win_y_pos = y; - _win_w = w; - _win_h = h; - - _line_x_limit = _win_w / _font_x_size; - _line_y_limit = _win_h / _font_y_size; -} - -size_t TFTTerminal::write(uint8_t chardata) -{ - - bool flush_page_flag = false; - uint8_t dis_y_pos = 0; - - if ((chardata == '\r') || (chardata == '\n')) - { - xpos = 0; - ypos++; - ypos = ypos % 60; - memset(discharbuff[ypos % 60], 0, 55); - return 1; - } - else if(xpos >= _line_x_limit) - { - xpos = 0; - ypos++; - ypos = ypos % 60; - memset(discharbuff[ypos % 60], 0, 55); - } - - discharbuff[ypos][xpos] = chardata; - xpos++; - - if ((dispos <= ypos) && ((ypos - dispos) > _line_y_limit)) - { - dispos = ypos - _line_y_limit; - flush_page_flag = true; - } - else if ((dispos <= ypos) && ((ypos - dispos) <= _line_y_limit)) - { - dis_y_pos = ypos - dispos; - flush_page_flag = false; - } - else if ((dispos > ypos) && ((60 - (dispos - ypos)) > _line_y_limit)) - { - dispos = 60 - ( _line_y_limit - ypos ); - flush_page_flag = true; - } - else if ((dispos > ypos) && ((60 - (dispos - ypos)) > _line_y_limit)) - { - dis_y_pos = 60 - ( dispos - ypos ); - flush_page_flag = false; - } - - dispos = dispos % 60; - - _dis_buff_ptr->setTextColor(_color); - _dis_buff_ptr->setTextSize(0); - - if( flush_page_flag ) - { - _dis_buff_ptr->fillSprite(_bkcolor); - - for (size_t i = 0; i < _line_y_limit; i++) - { - _dis_buff_ptr->drawString((char *)discharbuff[(dispos + i) % 60], 0, i * 8); - } - } - else - { - _dis_buff_ptr->drawChar(chardata, ( xpos - 1 ) * _font_x_size, dis_y_pos * _font_y_size ); - } - _dis_buff_ptr->pushSprite(_win_x_pos, _win_y_pos); - - return 1; - -} - -size_t TFTTerminal::write(const uint8_t *buffer, size_t size) -{ - - while ((size != 0) && (*buffer != '\0')) - { - if ((*buffer == '\r') || (*buffer == '\n')) - { - xpos = 0; - ypos++; - ypos = ypos % 60; - memset(discharbuff[ypos % 60], 0, 55); - buffer++; - size--; - continue; - } - else if(xpos >= _line_x_limit) - { - xpos = 0; - ypos++; - ypos = ypos % 60; - memset(discharbuff[ypos % 60], 0, 55); - } - discharbuff[ypos][xpos] = *buffer; - xpos++; - buffer++; - size--; - } - - if ((dispos <= ypos) && ((ypos - dispos) > _line_y_limit)) - { - dispos = ypos - _line_y_limit; - } - else if ((dispos > ypos) && ((60 - (dispos - ypos)) > _line_y_limit)) - { - dispos = 60- ( _line_y_limit - ypos ); - } - - dispos = dispos % 60; - - _dis_buff_ptr->setTextColor(_color); - _dis_buff_ptr->setTextSize(0); - _dis_buff_ptr->fillSprite(_bkcolor); - //_dis_buff_ptr->fillRect(_win_x_pos, _win_y_pos, _win_w, _win_h, _bkcolor); - for (size_t i = 0; i < _line_y_limit; i++) - { - _dis_buff_ptr->drawString((char *)discharbuff[(dispos + i) % 60], 0, i * 8); - } - _dis_buff_ptr->pushSprite(_win_x_pos, _win_y_pos); - return 1; -} diff --git a/FactoryTest/gomi/TFTTerminal.h b/FactoryTest/gomi/TFTTerminal.h deleted file mode 100644 index 2d29481..0000000 --- a/FactoryTest/gomi/TFTTerminal.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef _TFTTERMINAL_H_ -#define _TFTTERMINAL_H_ - -#include -#include - -class TFTTerminal : public Print -{ -private: - LGFX_Sprite *disptr; - char discharbuff[60][55]; - uint32_t xpos = 0, ypos = 0, dispos = 0; - LGFX_Sprite *_dis_buff_ptr = NULL; - uint16_t _bkcolor = TFT_BLACK; - uint16_t _color = TFT_GREEN; - - uint16_t _win_x_pos = 0, _win_y_pos = 0, _win_w = 320, _win_h = 240; - uint16_t _font_x_size = 6, _font_y_size = 8; - uint16_t _line_x_limit = 53, _line_y_limit = 30; - -public: - TFTTerminal(LGFX_Sprite *dis_buff_ptr); - ~TFTTerminal(); - - void setcolor(uint16_t color, uint16_t bk_color); - void setGeometry(uint16_t x, uint16_t y, uint16_t w, uint16_t h); - void setFontsize(uint8_t size); - - size_t write(uint8_t); - size_t write(const uint8_t *buffer, size_t size); -}; - -#endif