📄 main.c
字号:
#include <math.h>
#include <stddef.h>
#include "gui\core\GUI.h"
#include "Target\44b.h"
#include "Target\44blib.h"
/********************************************/
// ARMSYS实验二十:GUI绘图和文字
// 描述:利用GUI提供的API函数绘制图形和文字
/********************************************/
static void DrawScale(void) {
int XSize = LCD_GetXSize();
int YSize = LCD_GetYSize();
int XMid = XSize / 2;
int a;
int c = 0;
int r1 = 110;
int r2 = 140;
int rt = 100;
int y = 180;
int step = 15;
int r = (r1 + r2) / 2;
GUI_Clear();
GUI_SetFont(&GUI_Font8x16);
GUI_DispStringHCenterAt("Drawing a scale using GUI-functions", XMid, 0);
GUI_SetPenSize(r2 - r1);
GUI_SetColor(0x0000AA);
//GUI_AA_DrawArc(XMid, y, r, r, 45, 60);
GUI_DrawArc(XMid, y, r, r, 45, 60);
GUI_SetColor(0x00AA00);
//GUI_AA_DrawArc(XMid, y, r, r, 60, 90);
GUI_DrawArc(XMid, y, r, r, 60, 90);
GUI_SetPenSize(2);
GUI_SetColor(GUI_WHITE);
//GUI_AA_DrawArc(XMid, y, r1, r1, 45, 135);
//GUI_AA_DrawArc(XMid, y, r2, r2, 45, 135);
GUI_DrawArc(XMid, y, r1, r1, 45, 135);
GUI_DrawArc(XMid, y, r2, r2, 45, 135);
for (a=45; a<=135; a+=step) {
float co = cos(a*3.1415926/180);
float si = sin(a*3.1415926/180);
int x1 = XMid - r1 * co;
int y1 = y - r1 * si;
int x2 = XMid - (r2 - 1) * co;
int y2 = y - (r2 - 1) * si;
int xt = XMid - rt * co;
int yt = y - rt * si;
GUI_SetColor(GUI_WHITE);
GUI_SetPenSize(2);
//GUI_AA_DrawLine(x1,y1,x2,y2);
GUI_DrawLine(x1,y1,x2,y2);
GUI_SetColor(GUI_GREEN);
GUI_SetFont(&GUI_Font8x8);
GUI_DispCharAt('0' + c++, xt - 4, yt - 4);
}
}
/*
*******************************************************************
*
* main()
*
*******************************************************************
*/
void Main(void) {
int i=0;
rSYSCFG=CACHECFG;// Using 8KB Cache//
Port_Init();
Uart_Init(0,115200);
Led_Display(0xf);
Delay(0);
Beep(0x01);
Uart_Select(0); //Select UART0//
Uart_Printf("\n*************************************************************************");
Beep(0x0);
Uart_Printf("\n* 立泰电子 *");
Uart_Printf("\n* -GUI应用:绘制表盘- *");
Uart_Printf("\n* Version 1.10 *");
Uart_Printf("\n* Email:rao_dali@263.net *");
Uart_Printf("\n* UART Config--COM:115.2kbps,8Bit,NP,UART0 *");
Uart_Printf("\n*------------------Begin to Start Drawing,OK? (Y/N)-------------------*");
Led_Display(0x0);
GUI_Init();//对GUI进行初始化(包括对LCD显示的初始化)
DrawScale();
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -