LCD显示屏+ucGUI_FontBMP
STM32单片机源程序如下:
- #include "led.h"
- #include "key.h"
- #include "delay.h"
- #include "sys.h"
- #include "usart.h"
- #include "GUI.h"
- #include "lcddrv.h" // 新增加内容
- #include "LCDConf.h"
- #include <math.h>
- #include "remote.h"
- #include <string.h>
- extern GUI_CONST_STORAGE GUI_FONT GUI_FontHZ_SimSun_16;
- extern GUI_CONST_STORAGE GUI_FONT GUI_FontHZ_LiSu_48;
- extern GUI_CONST_STORAGE GUI_BITMAP bmThink_BADGE;
- extern GUI_CONST_STORAGE GUI_FONT GUI_FontHZ_SimSun_15;
- int k;
- u8 t;
- void Menu();
- void Welecome();
- void RechargeA();
- void RechargeB();
- void ShoppingA();
- void ShoppingB();
- void Balance();
- unsigned char helloworld_GUI[]="Time: 20:20:20";
- void Welecome(){
- while(1){
- GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_SimSun_15); //设置字体
- GUI_DispStringAt("WELECOME ",120,100); //显示文本
- GUI_DispStringAt("继续",240,170); //显示文本
- t=Remote_Scan();
- if(t!=0)
- {
- switch(t)
- {
- case 168:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- Menu();
- }
- break;
- }
- }
- }
- }
- void Menu(){
- while(1){
- GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_SimSun_15); //设置字体
- GUI_DispStringAt("充值(1)",120,80); //显示文本
- GUI_DispStringAt("消费(2)",120,105); //显示文本
- GUI_DispStringAt("查询(3)",120,130);
- GUI_DispStringAt("返回",50,175);
- t=Remote_Scan(); //得到键值
- // delay_ms(500);
- if(t!=0)
- {
- switch(t)
- {
- case 224:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- Welecome();
- }
- break;
- case 48:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- RechargeA();
- }
- break;
- case 24:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- ShoppingA();
- }
- break;
- case 122:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- Balance();
- }
- break;
- }
- }
- }
- }
- void RechargeA(){
- while(1){
- GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_SimSun_15); //设置字体
- GUI_DispStringAt("请输入充值金额",120,80); //显示文本
- GUI_DispStringAt("0",120,105); //显示文本
- GUI_DispStringAt("完成",240,175);
- GUI_DispStringAt("返回",50,175);
- t=Remote_Scan(); //得到键值
- // delay_ms(500);
- if(t!=0)
- {
- switch(t)
- {
- case 224:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- Menu();
- }
- case 226:{ //控制蜂鸣
- GUI_Clear();
- k+=100;// 清屏
- RechargeA();
- }
- case 162:{ //控制蜂鸣
- GUI_Clear();
- k-=100;// 清屏
- RechargeA();
- }
- case 168:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- RechargeB();
- }
- break;
- }
- }
-
- }
- }
- void RechargeB(){
- while(1){
- GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_SimSun_15); //设置字体
- GUI_DispStringAt("充值完成 ",120,80); //显示文本
- // GUI_DispStringAt("消费(2)",120,105); //显示文本
- //GUI_DispStringAt("查询(3)",120,130);
- GUI_DispStringAt("返回",50,175);
- t=Remote_Scan(); //得到键值
- // delay_ms(500);
- if(t!=0)
- {
- switch(t)
- {
- case 224:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- RechargeA();
- }
- break;
- }
- }
- }
- }
- void ShoppingA(){
- while(1){
- GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_SimSun_15); //设置字体
- GUI_DispStringAt("请输入消费金额",120,80); //显示文本
- GUI_DispStringAt("0",120,105); //显示文本
- GUI_DispStringAt("完成",240,175);
- GUI_DispStringAt("返回",50,175);
- t=Remote_Scan(); //得到键值
- // delay_ms(500);
- if(t!=0)
- {
- switch(t)
- {
- case 224:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- Menu();
- }
- case 226:{ //控制蜂鸣
- GUI_Clear();
- //sss+=100;// 清屏
- ShoppingA();
- }
- case 162:{ //控制蜂鸣
- GUI_Clear();
- //sss-=100;// 清屏
- ShoppingA();
- }
-
- case 168:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- ShoppingB();
- }
- break;
- }
- }
- }
- }
- void ShoppingB(){
- while(1){
- GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_SimSun_15); //设置字体
- GUI_DispStringAt("消费完成 ",120,80); //显示文本
- // GUI_DispStringAt("消费(2)",120,105); //显示文本
- // GUI_DispStringAt("查询(3)",120,130);
- GUI_DispStringAt("返回",50,175);
- t=Remote_Scan(); //得到键值
- //delay_ms(500);
- if(t!=0)
- {
- switch(t)
- {
- case 224:{ //控制蜂鸣
-
- ShoppingA(); // 清屏
- }
- break;
- }
- }
- }
- }
- void Balance(){
- while(1){
- GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_SimSun_15); //设置字体
- GUI_DispStringAt("余额为:",120,80); //显示文本
- GUI_DispStringAt("0",120,105); //显示文本
- // GUI_DispStringAt("查询(3)",120,130);
- GUI_DispStringAt("返回",50,175);
- t=Remote_Scan(); //得到键值
- //delay_ms(500);
- if(t!=0)
- {
- switch(t)
- {
- case 224:{ //控制蜂鸣
- GUI_Clear(); // 清屏
- Menu();
- }
- break;
- }
- }
- }
- }
- int main(void)
- {
- delay_init(); //延时函数初始化
- LED_Init(); //初始化与LED连接的硬件接口
- GUI_Init();
- KEY_Init();
- Remote_Init();
- GUI_SetBkColor(GUI_BLUE); //设置背景色为蓝色
- /* GUI_SetColor(GUI_RED); // 设置线条颜色为红色
- GUI_Clear(); // 清屏
- //======= 显示半角英文数字 ================
- GUI_SetFont(&GUI_Font24_1); // 设置字体
- GUI_SetTextMode(GUI_TM_REV); // 反转文本模式:在黑色上显示白字或相反
- GUI_DispStringAt("- - uCGUI disp Function sample - -",25,10); //显示文本
-
- //GUI_SetPenSize(10); // 设置显示线条的宽度为10
- GUI_SetColor(GUI_BLUE); // 设置线条颜色为红色
- GUI_DrawLine(10,60,420,200); // 画线
- GUI_DrawLine(10,200,420,60);
- GUI_SetFont(&GUI_Font24_1);
- GUI_SetBkColor(GUI_GREEN);
- GUI_SetColor(GUI_RED);
- GUI_SetTextMode(GUI_TM_NORMAL); // 正常显示模式
-
- GUI_DispStringHCenterAt("GUI_TM_NORMAL",200,50);
- GUI_SetTextMode(GUI_TM_REV); // 反转文本模式:在黑色上显示白字或相反
- GUI_DispStringHCenterAt("GUI_TM_REV",200,90);
- GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- GUI_DispStringHCenterAt("GUI_TM_TRANS",200,130);
- GUI_SetTextMode(GUI_TM_XOR); // 异或文本模式:新像素色=颜色的值-实际像素颜色-1
- GUI_DispStringHCenterAt("GUI_TM_XOR",200,170);
- GUI_SetTextMode(GUI_TM_TRANS | GUI_TM_REV); // 透明反转文本模式
-
- GUI_DispStringHCenterAt("GUI_TM_TRANS | GUI_TM_REV",200,210);
- GUI_SetTextMode(GUI_TM_NORMAL); //正常显示模式......为了下面截屏正常显示
-
-
- GUI_SetBkColor(GUI_BLACK);
- GUI_Clear(); // 清屏
- GazUI_DrawBitmap(&bmThink_BADGE,100,50);
- k=9999;*/
- while(1)
- {
- Welecome();
- GUI_Clear();
- Menu();
- //t=KEY_Scan(0); //得到键值
- // if(t!=0)
- // {
- //switch(t)
- //{
- // case KEY_UP:{ //控制蜂鸣
- // GUI_Clear(); // 清屏
- // Menu();
- // }
- //break;
- // }
- }
- //Balance();
- //ShoppingB();
-
- // Menu();
- /*GUI_SetTextMode(GUI_TM_TRANS); // 透明文本模式
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_SimSun_16); //设置字体
- GUI_SetColor(GUI_RED);
- GUI_DispStringAt("一二三四五-",25,10); //显示文本
- //=========================================
-
- //======== 显示中文 =======================
- GUI_SetFont(&GUI_FontHZ_LiSu_48); //设置字体
- GUI_DispStringA0t("一二三四五吴",25,80); //显示文本
- //=========================================
- // GUI_SetTextMode(GUI_TM_NORMAL); //正常显示模式......为了下面截屏正常显示
-
- delay_ms(500);
- GUI_SetFont(&GUI_Font24_1); // 设置字体
- GUI_SetColor(GUI_GREEN);
- GUI_SetTextMode(GUI_TM_NORMAL); // 正常显示模式
-
- sprintf(helloworld_GUI,"Time=%d",k);
- k--;
- GUI_DispStringHCenterAt(helloworld_GUI,150,180);8*/
- //}
- }
复制代码
所有资料51hei提供下载:
ucGUI_FontBMP.rar
(7.38 MB, 下载次数: 32)
|