STM32F429移植STemWin,STemWin函数应用

以下所有函数均已测试过。
链接: 移植步骤.
参考安富莱.

目录
        • 一,文本显示
          • 1.1 GUI_DispString() 显示字符串
          • 1.2 GUI_DispStringAt() 指定位置显示字符串
          • 1.3 GUI_DispStringAtCEOL() 指定位置显示字符串并清除其他
          • 1.4 GUI_DispStringInRect() 指定矩形区域显示字符串
          • 1.5 GUI_DispStringInRectWrap() 在指定的矩形区域中显示字符串,并可自动换行
        • 二,数值显示
          • 2.1 十进制
            • 2.1.1 GUI_DispDec() 十进制显示
            • 2.1.2 GUI_DispDecAt()十进制显示,多了个坐标
            • 2.1.3 GUI_DispDecMin() 十进制显示,不用写长度
            • 2.1.4 GUI_DispSDec()显示加减号
          • 2.2 小数点(不是浮点数)GUI_DispDecShift()
          • 2.3 十进制升级版,可加减号,可小数GUI_DispSDecShift()
          • 2.3 二进制
            • 2.3.1 GUI_DispBin() 二进制显示
            • 2.3.2 GUI_DispBinAt()二进制显示,多了个坐标
          • 2.4 十六进制
            • 2.4.1 GUI_DispHex()十六进制显示
            • 2.4.2 GUI_DispHexAt()十六进制显示,多了个坐标
          • 2.5 浮点数
        • 三,2-D图形库
          • 3.1 画线
          • 3.2 画矩形
          • 3.3 Alpha混合
          • 3.4 流位图
          • 3.5 多边形
          • 3.6 圆
          • 3.7 椭圆
          • 3.8 弧线
          • 3.9 曲线(示波器那种)
          • 3.10 饼图
        • 其它
          • 显示游标

一,文本显示 GUI_SetBkColor(GUI_BLUE); //BLUE 字体底色
GUI_Clear(); //清屏
GUI_SetFont(&GUI_Font8x16); //设置字体大小
1.1 GUI_DispString() 显示字符串 在当前位置显示字符串。有换行, \n
例:GUI_DispString(“weser \n weser”);
1.2 GUI_DispStringAt() 指定位置显示字符串 在指定位置显示字符串。
void GUI_DispStringAt(const char GUI_FAR * s, int x, int y);
STM32F429移植STemWin,STemWin函数应用
文章图片

例:GUI_DispStringAt(“weser”,200,300);
1.3 GUI_DispStringAtCEOL() 指定位置显示字符串并清除其他 在指定位置显示字符串,并把此行字其他给清了。
void GUI_DispStringAtCEOL(const char GUI_FAR * s, int x, int y);
例:GUI_DispStringAtCEOL(“weser”,200,300);
1.4 GUI_DispStringInRect() 指定矩形区域显示字符串 指定的矩形区域内的指定位置处,使用当前字体显示作为参数的字符串。
void GUI_DispStringInRect(const char GUI_FAR * s,GUI_RECT * pRect,int Align);
STM32F429移植STemWin,STemWin函数应用
文章图片

例:
GUI_RECT WESERpRect[]={100,100,200,200}; //矩形坐标
GUI_DispStringInRect(“weser”,WESERpRect,GUI_TA_LEFT);
1.5 GUI_DispStringInRectWrap() 在指定的矩形区域中显示字符串,并可自动换行 void GUI_DispStringInRectWrap(const char GUI_UNI_PTR * s,GUI_RECT * pRect,int TextAlign,GUI_WRAPMODE WrapMode);
STM32F429移植STemWin,STemWin函数应用
文章图片

这种感觉。
STM32F429移植STemWin,STemWin函数应用
文章图片

二,数值显示 2.1 十进制 2.1.1 GUI_DispDec() 十进制显示 GUI_GotoXY(0,0); //设置显示位置
GUI_DispDec(-123,4); //前面是数,后面是长度
GUI_DispDec(1234,7);//长了会补0 显示:0001234
GUI_DispDec(1234,2); //短了会错,不能短
最高位不能为0
2.1.2 GUI_DispDecAt()十进制显示,多了个坐标 多了个坐标
GUI_DispDecAt(123,200,20,5);
2.1.3 GUI_DispDecMin() 十进制显示,不用写长度 GUI_GotoXY(0,40);
GUI_DispDecMin(-33232);
最高位不能为0
2.1.4 GUI_DispSDec()显示加减号 GUI_GotoXY(0,100);
GUI_DispSDec(-1234,5); //打印:-1234
GUI_DispSDec(1234,5); //打印:+1234
2.2 小数点(不是浮点数)GUI_DispDecShift() 打印:-12.34(负号,小数点也算长度)
GUI_GotoXY(0,60);
GUI_DispDecShift(-1234,6,2); //最后一个参数是小数点位数
2.3 十进制升级版,可加减号,可小数GUI_DispSDecShift() GUI_DispSDecShift(02345,7,3); //打印:+01.23
GUI_DispSDecShift(345,6,2); //打印:+03.45
GUI_DispSDecShift(-1234,6,3); //打印:-1.234
2.3 二进制 2.3.1 GUI_DispBin() 二进制显示 GUI_GotoXY(0,140);
GUI_DispBin(0x08,8); //第二个参数是显示长度
最长32位
2.3.2 GUI_DispBinAt()二进制显示,多了个坐标 GUI_DispBinAt(0x55,0,160,8);
最长16位
2.4 十六进制 2.4.1 GUI_DispHex()十六进制显示 GUI_GotoXY(0,140);
GUI_DispHex(0x08,8); //第二个参数是显示长度
最长16位
2.4.2 GUI_DispHexAt()十六进制显示,多了个坐标 GUI_DispHexAt(0x55,0,160,8);
最长16位
2.5 浮点数 float f = 123.45678f;
GUI_GotoXY(0,100);
GUI_DispFloat (f,9); //打印:123.45678
GUI_GotoXY(0,200);
GUI_DispFloat (-f,9); //打印:-123.45678(负号不计长度)
三,2-D图形库 3.1 画线 GUI_SetPenSize(10); //设置线宽
GUI_SetColor(GUI_RED); //设置颜色
GUI_DrawLine(80, 10, 240, 90); //画线
3.2 画矩形 GUI_DrawGradientRoundedH() 绘制用水平颜色梯度填充的圆角矩形。
GUI_DrawRectEx() 在当前窗口中的指定位置绘制矩形。
GUI_DrawRoundedFrame() 在当前窗口中的指定位置绘制指定宽度的圆角框。
GUI_FillRoundedRect() 在当前窗口中的指定位置绘制填充的圆角矩形。
例:
UI_RECT Rect = { 120, /* Upper left X-position. /
0, /
Upper left Y-position. /
219, /
Lower right X-position. /
99}; /
Lower right Y-position. */
GUI_DrawGradientRoundedH(0, 0, 99, 99, 25, 0x0000FF, 0x00FFFF);
GUI_DrawRectEx(&Rect);
GUI_DrawRoundedFrame(0, 110, 99, 210, 20, 10);
GUI_FillRoundedRect( 120, 110, 219, 210, 20);
STM32F429移植STemWin,STemWin函数应用
文章图片

3.3 Alpha混合 【STM32F429移植STemWin,STemWin函数应用】Alpha 混合是一种合并前景图像与背景来创建半透明效果的方法。Alpha 值决定可见的像素数以及背景透露的像素数。
Alpha 混合完全自动执行。唯一需要做的就是使用 GUI_EnableAlpha()启用 Alpha 混合。
这里不贴了,需要两个图层,我之前把图层2关了,又没写开关量,懒得改了。
3.4 流位图 没有内存卡,有空再搞吧
3.5 多边形 有点麻烦,看文档去吧。
STM32F429移植STemWin,STemWin函数应用
文章图片

3.6 圆 void GUI_DrawCircle(int x0, int y0, int r); 空心圆
X,Y,半径
void GUI_FillCircle(int x0, int y0, int r); 实心圆
3.7 椭圆 void GUI_DrawEllipse(int x0, int y0, int rx, int ry); 空心圆
X,Y,X半径,Y半径
void GUI_FillEllipse(int x0, int y0, int rx, int ry); 实心圆
3.8 弧线 void GUI_DrawArc(int xCenter, int yCenter, int rx, int ry, int a0, int a1);
STM32F429移植STemWin,STemWin函数应用
文章图片

3.9 曲线(示波器那种) void GUI_DrawGraph(I16 * paY, int NumPoints, int x0, int y0);
STM32F429移植STemWin,STemWin函数应用
文章图片

3.10 饼图 void GUI_DrawPie(int x0, int y0, int r, int a0, int a1, int Type);
STM32F429移植STemWin,STemWin函数应用
文章图片

其它 显示游标 GUI_CURSOR_Show();

    推荐阅读