📄 main.c
字号:
#include "option.h"
#include "def.h"
#include "44b.h"
#include "44blib.h"
#include "GUI.H"
#include "DIALOG.H"
#include "WM.h"
#include "button.h"
#include "progbar.h"
extern const GUI_BITMAP bm001;
extern const GUI_BITMAP bm002;
extern const GUI_BITMAP bm003;
extern const GUI_BITMAP bm004;
extern const GUI_BITMAP bm005;
extern const GUI_BITMAP bm006;
extern const GUI_BITMAP bm007;
extern const GUI_BITMAP bmlogo;
/**********************************************************************
* main loop
************************************************************************/
#define DELAY_TIME 50000
const GUI_POINT FiveStart[]={
{113,38},
{94,88},
{37,88},
{82,126},
{64,190},
{113,144},
{162,190},
{143,126},
{189,88},
{132,88},
} ;
void Main(void)
{
int i;
rSYSCFG=CACHECFG; // Using 8KB Cache//
Port_Init();
Isr_Init();
ChangePllValue( 56, 3, 1 ) ;
//Uart_Init(0,57600);
Uart_Init(0,115200);
Delay(0);
Uart_Select(0); //Select UART0
Uart_Printf("\n uc-gui demo");
GUI_Init();
Uart_Printf("\n uc-gui Init OK");
//TP_init();
GUI_Clear();
LCD_L0_FillRect(0,0,639,479);
GUI_SetBkColor(GUI_WHITE);
GUI_SetColor(GUI_BLACK);
GUI_SetFont(&GUI_Font_HZK16);
/*
***************************************************
第一屏显示,和报告相类似
***************************************************
*/
GUI_DispStringAt("UC_GUI(图形程序接口)的移植和应用",200,100);
GUI_DispStringAt("指导老师:邹有明",350,200);
GUI_DispStringAt("张培华的毕业设计",350,250);
GUI_DispStringAt("电气03-2班",400,300);
GUI_DispStringAt("2007.06.20",400,350);
// Delay( DELAY_TIME) ;
//Delay( DELAY_TIME) ;
//Delay( DELAY_TIME) ;
// Delay( DELAY_TIME) ;
// Delay( DELAY_TIME) ;
// Delay( DELAY_TIME) ;
Delay( DELAY_TIME) ;
GUI_Clear();
/*
***************************************************
第二屏,用于感谢
***************************************************
*/
GUI_DispStringAt("在此首先要感谢邹有明老师的指导",200,80);
GUI_DispStringAt("感谢实验室主任阎有运老师的指导和帮助",200,150);
GUI_DispStringAt("感谢郭三明老师这两年里的指导和帮助",200,220);
GUI_DispStringAt("感谢所有帮助和教导过我的老师们",200,290);
GUI_DispStringAt("感谢共度大学四年的同学",200,360);
//Delay( DELAY_TIME) ;
// Delay( DELAY_TIME) ;
// Delay( DELAY_TIME) ;
// Delay( DELAY_TIME) ;
// Delay( DELAY_TIME) ;
Delay( DELAY_TIME) ;
/*
**************************************************
第三屏,用于字体测试
**************************************************
*/
GUI_Clear();
GUI_SetFont(&GUI_Font_HZK16);
GUI_DispStringAt("字体演示",300,100);
GUI_SetFont(&GUI_Font6x8);
GUI_DispStringAt("GUI_Font6x8",300,130);
GUI_SetFont(&GUI_Font8x8);
GUI_DispStringAt("GUI_Font8x8",300,170);
GUI_SetFont(&GUI_Font8_ASCII);
GUI_DispStringAt("GUI_Font8_ASCII",300,200);
GUI_SetFont(&GUI_Font8x16);
GUI_DispStringAt("GUI_Font8x16",300,230);
GUI_SetFont(&GUI_Font16_ASCII);
GUI_DispStringAt("GUI_Font16_ASCII",300,270);
GUI_SetFont(&GUI_Font16B_ASCII);
GUI_DispStringAt("GUI_Font16B_ASCII",300,310);
GUI_SetFont(&GUI_Font16B_ASCII);
GUI_DispStringAt("GUI_Font16B_ASCII",300,350);
GUI_SetFont(&GUI_Font24_ASCII);
//Delay( DELAY_TIME) ;
//Delay( DELAY_TIME) ;
// Delay( DELAY_TIME) ;
//Delay( DELAY_TIME) ;
//Delay( DELAY_TIME) ;
//Delay( DELAY_TIME) ;
Delay( DELAY_TIME) ;
/*
**************************************************
第四屏,用于2D图形测试
**************************************************
*/
GUI_Clear();
GUI_SetFont(&GUI_Font_HZK16);
GUI_DispStringAt("多边形绘制",70,5);
GUI_FillPolygon(&FiveStart[0],10,0,0);
GUI_DispStringAt("圆的绘制",440,5);
GUI_DrawCircle(480,130,90);
GUI_DrawCircle(480,130,60);
GUI_DrawCircle(480,130,30);
GUI_DrawCircle(480,130,10);
GUI_DispStringAt("椭圆的绘制",90,250);
GUI_DrawEllipse(160,380,130,90);
GUI_FillEllipse(160,380,50,80);
GUI_DispStringAt("圆弧的绘制",430,250);
GUI_SetPenSize( 2 );
GUI_SetTextMode(GUI_TM_TRANS);
GUI_SetFont(&GUI_FontComic18B_ASCII);
GUI_DrawArc(480,380,100, 100,-30, 210 );
for (i=0; i<= 23; i++) {
char ac[4];
float a = (-30+i*10)*3.1415926/180;
int x = -90*cos(a)+480;
int y = -90*sin(a)+380;
GUI_SetPenSize( 2 );
GUI_DrawPoint(x,y);
x = -80*cos(a)+480;
y = -80*sin(a)+380;
sprintf(ac, "%d", 10*i);
GUI_SetTextAlign(GUI_TA_VCENTER);
GUI_DispStringHCenterAt(ac,x,y);
}
Delay( DELAY_TIME) ;
Delay( 10000 );
// _ExecCalibration();Delay( DELAY_TIME) ; //WaitKey();
// _TestCalibration();Delay( DELAY_TIME) ; //WaitKey();
// _ExecKeyboard();Delay( DELAY_TIME) ; //WaitKey();
GUI_Clear();
GUI_SetBkColor(GUI_BLUE);
GUI_SetColor(GUI_WHITE);
GUI_SetFont(&GUI_Font_HZK16);
GUI_DispString("\n谢谢您选择了我们的产\n品!");
GUI_DispString("\n北京恒丰锐科科技有限\n公司");
GUI_DispString("\nhttp://www.hfrk.net");
GUI_DispString("\n电话:010-63726790");
GUI_DispString("\n按key2继续......");
//WaitKey();
GUI_Clear();
GUI_SetFont(&GUI_Font_HZK16);
GUI_DispString("支持16级灰度");
ShowColorBar();
Delay( DELAY_TIME) ;
GUI_Clear();
GUI_SetBkColor(GUI_BLUE);
GUI_SetColor(GUI_WHITE);
GUI_SetFont(&GUI_Font_HZK16);
GUI_DispStringAt("位图演示",48,60);
Delay( DELAY_TIME) ; //WaitKey();
GUI_DrawBitmap(&bm001,0,0);Delay( DELAY_TIME) ; //WaitKey();
GUI_DrawBitmap(&bm002,0,0);Delay( DELAY_TIME) ; //WaitKey();
GUI_DrawBitmap(&bm003,0,0);Delay( DELAY_TIME) ; //WaitKey();
GUI_DrawBitmap(&bm004,0,0);Delay( DELAY_TIME) ; //WaitKey();
GUI_DrawBitmap(&bm005,0,0);Delay( DELAY_TIME) ; //WaitKey();
GUI_DrawBitmap(&bm006,0,0);Delay( DELAY_TIME) ; //WaitKey();
GUI_DrawBitmap(&bm007,0,0);Delay( DELAY_TIME) ; //WaitKey();
GUI_Clear();
GUI_SetBkColor(GUI_BLUE);
GUI_SetColor(GUI_WHITE);
GUI_SetFont(&GUI_Font_HZK16);
GUI_DispString("绘图函数演示");
GUI_SetDrawMode(GUI_DRAWMODE_NORMAL);
GUI_FillCircle(60, 64, 40);
GUI_SetDrawMode(GUI_DRAWMODE_XOR);
GUI_FillCircle(60, 84, 40);
Delay( DELAY_TIME) ; //WaitKey();
GUI_Clear();
DrawPolygon();
Delay( DELAY_TIME) ;
GUI_Clear();
for (i=10; i<50; i++)
GUI_DrawCircle(100,100,i);
Delay( DELAY_TIME) ; //WaitKey();
GUI_Clear();
GUI_SetFont(&GUI_Font_HZK16);
GUI_DispString("\n以下对话框演示一般\nkey1选择键\nkey2为确定键");
GUI_DispString("\n按key2继续......");
//WaitKey();
Uart_Printf("\n OK");
GUI_SetFont(&GUI_Font6x8);
GUIDEMO_Messagebox();
Dialog_Radio();
Dialog_SliderClolor();
Dialog_All();
GUI_Clear();
//ShowHiresAntialiasing();//(这个程序按键反映迟钝)
//Widget_Progbar();//(这个程序按键反映迟钝)
//DemoListbox();//(这个程序按键反映迟钝)
//DemoButton();
GUI_Clear();
DemoScale();
GUI_Clear();
DemoBandingMemdev();
GUI_Clear();
Demo_DrawGraph();
GUI_Clear();
while(1)
{GUI_DispString("\nUCGUI演示完成\n");}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -