Написание библиотеки
- Войдите на сайт для отправки комментариев
Ср, 15/02/2017 - 20:04
Я начал писать библиотеку для ардуино, чтобы облегчить работу с TFT дисплеем, но библиотека не грузиться.
Вот заголовочный файл:
#ifndef UCR_h
#define UCR_h
#include "arduino.h"
#include <UTFT.h>
class UCR{
public:
pins(int p1,int p2,int p3,int p4,int p5);
void DrawPixel(int x,int y,int CRED,int CGREEN,int CBLUE);
void DrawLine(int xl,int yl,int xl2,int yl2,int CREDl,int CGREENl,int CBLUEl);
void DrawRect(int xr,int yr,int xr2,int yr2,int CREDr,int CGREENr,int CBLUEr);
void DrawCircle(int xc,int yc,int xc2,int yc2,int CREDc,int CGREENc,int CBLUEc);
void text(char text,int xt,int yt,int CREDt,int CGREENt,int CBLUEt);
private:
int _p1;int _p2;int _p3;int _p4;int _p5;}
#endif
Файл реализации:
#include "UCR.h"
#include "arduino.h"
UCR::pins(int p1,int p2,int p3,int p4,int p5)(){
UTFT myGLCD(TFT01_22SP,p1,p2,p3,p4,p5);
_p1=p1;_p2=p2;_p3=p3;_p4=p4;_p5=p5;}
void UCR::DrawPixel(int x,int y,int CRED,int CGREEN,int CBLUE){
myGLCD.setColor(CRED,CGREEN,CBLUE);
myGLCD.drawPixel(x,y);}
void UCR::DrawLine(int xl,int yl,int xl2,int yl2,int CREDl,int CGREENl,int CBLUEl){
myGLCD.setColor(CREDl,CGREENl,CBLUEl);
myGLCD.drawLine(xl,yl,xl2,yl2);}
void UCR::DrawRect(int xr,int yr,int xr2,int yr2,int CREDr,int CGREENr,int CBLUEr){
myGLCD.setColor(CREDr,CGREENr,CBLUEr);
myGLCD.drawLine(xr,yr,xr2,yr2);}
void UCR::DrawCircle(int xc,int yc,int xc2,int CREDc,int CGREENc,int CBLUEc){
myGLCD.setColor(CREDc,CGREENc,CBLUEc);
myGLCD.drawLine(xc,yc,xc2);}
void text(char text,int xt,int yt,int CREDt,int CGREENt,int CBLUEt){
myGLCD.print(text,xt,yt);}
Скомпилировал следующий скетч:
#include <UTFT.h>
UCR.pins(9,8,12,11,10);
extern uint8_t BigFont[];
void setup(){
myGLCD.InitLCD();
myGLCD.clrScr();
myGLCD.setFont(BigFont);}
void loop(){
UCR.DrawLine(100,100,200,200,255,255,0);}
Я начал писать библиотеку для ардуино, чтобы облегчить работу с TFT дисплеем, но библиотека не грузиться.
Вот заголовочный файл:
#ifndef UCR_h #define UCR_h #include "arduino.h" #include <UTFT.h> class UCR{ public: pins(int p1,int p2,int p3,int p4,int p5); void DrawPixel(int x,int y,int CRED,int CGREEN,int CBLUE); void DrawLine(int xl,int yl,int xl2,int yl2,int CREDl,int CGREENl,int CBLUEl); void DrawRect(int xr,int yr,int xr2,int yr2,int CREDr,int CGREENr,int CBLUEr); void DrawCircle(int xc,int yc,int xc2,int yc2,int CREDc,int CGREENc,int CBLUEc); void text(char text,int xt,int yt,int CREDt,int CGREENt,int CBLUEt); private: int _p1;int _p2;int _p3;int _p4;int _p5;} #endifФайл реализации:
#include "UCR.h" #include "arduino.h" UCR::pins(int p1,int p2,int p3,int p4,int p5)(){ UTFT myGLCD(TFT01_22SP,p1,p2,p3,p4,p5); _p1=p1;_p2=p2;_p3=p3;_p4=p4;_p5=p5;} void UCR::DrawPixel(int x,int y,int CRED,int CGREEN,int CBLUE){ myGLCD.setColor(CRED,CGREEN,CBLUE); myGLCD.drawPixel(x,y);} void UCR::DrawLine(int xl,int yl,int xl2,int yl2,int CREDl,int CGREENl,int CBLUEl){ myGLCD.setColor(CREDl,CGREENl,CBLUEl); myGLCD.drawLine(xl,yl,xl2,yl2);} void UCR::DrawRect(int xr,int yr,int xr2,int yr2,int CREDr,int CGREENr,int CBLUEr){ myGLCD.setColor(CREDr,CGREENr,CBLUEr); myGLCD.drawLine(xr,yr,xr2,yr2);} void UCR::DrawCircle(int xc,int yc,int xc2,int CREDc,int CGREENc,int CBLUEc){ myGLCD.setColor(CREDc,CGREENc,CBLUEc); myGLCD.drawLine(xc,yc,xc2);} void text(char text,int xt,int yt,int CREDt,int CGREENt,int CBLUEt){ myGLCD.print(text,xt,yt);}Скомпилировал следующий скетч:
#include <UTFT.h> UCR.pins(9,8,12,11,10); extern uint8_t BigFont[]; void setup(){ myGLCD.InitLCD(); myGLCD.clrScr(); myGLCD.setFont(BigFont);} void loop(){ UCR.DrawLine(100,100,200,200,255,255,0);}Не обращайте внимание на то что я забыл подключить библиотеку, я это уже исправил.
В чём ошибка???