📄 show_window.c
字号:
/*****************************************************************/
/*函数名称: Show_Window.c */
/*函数功能: 基本信息的显示 */
/*有无返回: 无 */
/*修改记录: 无修改记录 */
/*编写作者: t483-4-19chenyong */
/*编写日期: 2007-4-06 */
/*****************************************************************/
#include "common.h"
#include "TS12864A.h"
#include "delay.h"
#include "window.h"
#include "key.h"
#include "astar.h"
#include "map.h"
extern unsigned int Position;
unsigned char key=0xff;
unsigned char i=0;
/*****************************************************************/
/* 窗口显示函数:基本信息 :第一屏 : */
/* 窗口模式: */
/* ----------------------------------------------------- */
/* | 毕业设计 | */
/* ----------------------------------------------------- */
/* | 作品 | */
/* ----------------------------------------------------- */
/* | GPS导航设计 | */
/* ----------------------------------------------------- */
/*字库查询:
毕(0) 业(1) 设(2) 计(3)
作(4) 品(5)
导(6) 航(7) 设(8) 计(9) */
/*****************************************************************/
void show_menu_system()
{
CleanScreen();
delay_nms(10);
Display_Character(2,1,0); // 毕
Display_Character(4,1,1); // 业
Display_Character(6,1,2); // 设
Display_Character(8,1,3); // 计
Display_Character(10,1,4); // 作
Display_Character(12,1,5); // 品
Display_Char(2,3,42); // G
Display_Char(3,3,51); // P
Display_Char(4,3,54); // S
Display_Character(6,3,6); // 导
Display_Character(8,3,7); // 航
Display_Character(10,3,8); // 设
Display_Character(12,3,9); // 计
show_author_information();
while(1)
{
key= keyscan();
delay_nms(1000);
switch(key)
{
case 0x00: show_menu_frist();
/* 按0(确定键)键进入菜单界面 */
break;
default: break;
}
}
}
/*****************************************************************/
/* 窗口显示函数:基本信息 :第二屏 : */
/* 窗口模式: */
/* ----------------------------------------------------- */
/* | 1: 基本信息 | */
/* ----------------------------------------------------- */
/* | 2: 小车导航 | */
/* ----------------------------------------------------- */
/*字库查询:
基(10) 本(11) 信(12) 息(13)
作(4) 品(5)
小(14)车(15)导(16) 航(17) */
/*****************************************************************/
void show_menu_frist()
{
CleanScreen();
delay_nms(10);
Display_Char(3,3,0); // 0:
Display_Char(4,3,62);
Display_Character(5,3,10); // 基
Display_Character(7,3,11); // 本
Display_Character(9,3,12); // 信
Display_Character(11,3,13); // 息
Display_Char(3,5,1); // 1:
Display_Char(4,5,62);
Display_Character(5,5,14); // 小
Display_Character(7,5,15); // 车
Display_Character(9,5,16); // 导
Display_Character(11,5,17); // 航
while(1)
{
if(i==5)
{
i=0;
Clear_Area(0,1,16);
}
Display_Character(2*(7-i),1,30+i);
delay_nms(2500);
if(i<3)
Clear_Area(2*(7-i),1,2);
Display_Character(2*i,1,30+i);
key= keyscan();
delay_nms(2500);
switch(key)
{
case 0x00: GPS_Navigation();
/* 按1(确定键)键进入小车导航显示界面 */
break;
default: break;
}
i++;
}
}
/*****************************************************************/
/*函数名称: Navigation_End_ConstrolWord.c */
/*函数功能: 终点地址的确定 */
/*有无返回: 无 */
/*修改记录: 无修改记录 */
/*编写作者: t483-4-19chenyong */
/*编写日期: 2008-3-12 */
/*****************************************************************/
void Navigation_End_ConstrolWord(void)
{
unsigned char t;
unsigned int sum=0;
unsigned char i=0;
/*xy坐标*/
unsigned char temp_key[KeyInputN]={0};
CleanScreen();
delay_nms(10);
Display_Character(2,3,35);
Display_Character(4,3,37);
Display_Character(2,5,36);
Display_Character(4,5,37);
while(1)
{
key=keyscan();
delay_nms(3000);
switch(key)
{
case 0x00:
if(i<=KeyInputN-1&&i!=0)
{
if(i<=1)
Display_Char(8+i,3,0);
else
Display_Char(6+i,5,0);
temp_key[i]=0;
i++;
}
break;
case 0x01:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,1);
else
Display_Char(6+i,5,1);
temp_key[i]=1;
i++;
}
break;
case 0x02:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,2);
else
Display_Char(6+i,5,2);;
temp_key[i]=2;
i++;
}
break;
case 0x03:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,3);
else
Display_Char(6+i,5,3);
temp_key[i]=3;
i++;
}
break;
case 0x04:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,4);
else
Display_Char(6+i,5,4);
temp_key[i]=4;
i++;
}
break;
case 0x05:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,5);
else
Display_Char(6+i,5,5);
temp_key[i]=5;
i++;
}
break;
case 0x06:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,6);
else
Display_Char(6+i,5,6);
temp_key[i]=6;
i++;
}
break;
case 0x07:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,7);
else
Display_Char(6+i,5,7);
temp_key[i]=7;
i++;
}
break;
case 0x08:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,8);
else
Display_Char(6+i,5,8);
temp_key[i]=8;
i++;
}
break;
case 0x09:
if(i<=KeyInputN-1)
{
if(i<=1)
Display_Char(8+i,3,9);
else
Display_Char(6+i,5,9);
temp_key[i]=9;
i++;
}
break;
/*如果输错,就重新置0,清一位*/
case 0x0a: i=0;
Display_Char(8,3,64);
Display_Char(9,3,64);
Display_Char(8,5,64);
Display_Char(9,5,64);
break;
/* case 0x0b: //如果输错,重新输数,清所有位
for(i=KeyInputN;i>0;i--)
temp_key[i-1]=0;
break;
*/
case 0x0b:
for(t=0;t<i;t++)
sum=sum+(temp_key[t])*ten_n(i-1-t);
Position=sum;
CleanScreen(); // 清屏
delay_nms(1000);
show_menu_DaoHang();
sum=0;
break;
case 0x0d:
Clear_Area(6,3,5);
for(i=KeyInputN;i>0;i--)
temp_key[i-1]=0;
t=0;
sum=0;
Position=0;
break;
case 0x0f:GPS_Navigation();
break;
default:break;
}
}
}
/*****************************************************************/
void GPS_Navigation(void)
{
OSCILLATOR_Init (); // Initialize oscillator
PORT_Init (); // Initialize crossbar and GPIO
LCD_Init(); // 液晶初始化
CleanScreen(); // 清屏
delay_nms(100);
Show_Map();
while(1)
{
key= keyscan();
delay_nms(1000);
switch(key)
{
case 0x00: Navigation_End_ConstrolWord();
break;
/*
case 0x00: show_menu_DaoHang();
break;
*/ case 0x01: show_menu_frist();
break;
default: break;
}
}
}
void show_author_information()
{
Display_Char(1,5,55);
Display_Char(2,5,4);
Display_Char(3,5,8);
Display_Char(4,5,3);
Display_Char(5,5,67);
Display_Char(6,5,4);
Display_Char(7,5,67);
Display_Char(8,5,1);
Display_Char(9,5,9);
Display_Character(11,5,18);
Display_Character(13,5,19);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -