⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 list.c

📁 带有LCD
💻 C
字号:
/****************************************************
*Copyright (c) 2007, 新芝股份
*All rights reserved.
*
*文件名称:common.c
*
*当前版本:1.1
*作者:黄文剑
*完成日期:2007.10.10
*
*取代版本:1.0
*原作者:
*完成日期:2007.10.16
****************************************************/
#include "D:\ql200\com\com.h"
#include "D:\ql200\key\key.h"
#include "D:\ql200\lcd\lcd.h"
#include "list.h"

bank1 unsigned char 	list_menu[7] = "LIST:";
const unsigned char	run_time[20] = "Estimated run time:";
const unsigned char	time[10] = "99h99m99s";
const unsigned char	save[6] = "Save?";
extern const unsigned char 	yes[4];
extern const unsigned char	no[3];

void Dsp_List_Menu(void)
{
	Lcd_Clr();
	Lcd_Show_String(list_menu);
}

void List_Menu(void)
{
	KEY_VALUE 		key_value = 0;
	unsigned char		bExit = 0;
	unsigned char		list_file_name [9] = {0};
	unsigned char		i = 0, j = 0;
	unsigned char		lcd_position = 0;
	unsigned char		file_index = 0;

	Lcd_Set_Paint(1);
	while(!bExit)
	{
		if(Lcd_Get_Paint())
		{
			Dsp_List_Menu();
			for(i = 0, j = 0; i<10; i++)
			{
				Eep_Rom_Read_Filename(i, list_file_name);
				if(list_file_name[0] != 0)
				{
					Lcd_MoveTo_Position(20 + 10*j);
					Lcd_Show_String(list_file_name);
					j++;
				}
			}
			Lcd_Set_Paint(0);
		}
		key_value = Keypad_HighISR();
		switch(key_value)
		{
			case KEY_ERROR:
				break;
			case KEY_0:
				break;
			case KEY_1:
				break;
			case KEY_2:
				break;
			case KEY_3:
				break;
			case KEY_4:
				break;
			case KEY_5:
				break;
			case KEY_6:
				break;
			case KEY_7:
				break;
			case KEY_8:
				break;
			case KEY_9:
				break;
			case KEY_LEFT:
			{
				Lcd_Cursor_Left();
				break;
			}
			case KEY_RIGHT:
			{
				Lcd_Cursor_Right();
				break;
			}			
			case KEY_UP:
			{
				Lcd_Cursor_Up();
				break;
			}			
			case KEY_DOWN:
			{
				Lcd_Cursor_Down();
				break;
			}	
			case KEY_ENTER:
			{
				lcd_position = Lcd_Get_Current_position();
				if((lcd_position >= 20) && (lcd_position <= 22))
				{
					file_index = 0;
					List_FileName_Detail(file_index);
					Lcd_Set_Paint(1);
				}
				else if((lcd_position >= 30) &&  (lcd_position <= 32))
				{
					file_index = 1;
					List_FileName_Detail(file_index);
					Lcd_Set_Paint(1);
				}
				else if((lcd_position >= 40) &&  (lcd_position <= 42))
				{
					file_index = 2;
					List_FileName_Detail(file_index);
					Lcd_Set_Paint(1);
				}
				else if((lcd_position >= 50) &&  (lcd_position <= 52))
				{
					file_index = 3;
					List_FileName_Detail(file_index);
					Lcd_Set_Paint(1);
				}
				else if((lcd_position >= 60) &&  (lcd_position <= 62))
				{
					file_index = 4;
					List_FileName_Detail(file_index);
					Lcd_Set_Paint(1);
				}
				else if((lcd_position >= 70) &&  (lcd_position <= 72))
				{
					file_index = 5;
					List_FileName_Detail(file_index);
					Lcd_Set_Paint(1);
				}					
				break;				
			}
			case KEY_BACK:
				bExit = 1;
				break;
			default:
				break;					
		}
	}
}

void List_FileName_Detail(unsigned char n)
{
	KEY_VALUE 		key_value = 0;
	unsigned char		bExit = 0;
	unsigned char		list_file_name[8] = {0};

	//unsigned char		yes[4] = "Yes";
	//unsigned char		no[3] = "No";

	Lcd_Clr();
	Lcd_Show_String(list_menu);
	Eep_Rom_Read_Filename(n, list_file_name);
	Lcd_MoveTo_Position(10);
	Lcd_Show_String(list_file_name);
	Lcd_MoveTo_Position(20);
	Lcd_Show_RomString(run_time);
	Lcd_MoveTo_Position(40);
	Lcd_Show_RomString(time);	
	Lcd_MoveTo_Position(60);
	Lcd_Show_RomString(save);
	Lcd_MoveTo_Position(66);
	Lcd_Show_RomString(yes);	
	Lcd_MoveTo_Position(70);
	Lcd_Show_RomString(no);		

	while(!bExit)
	{
		key_value = Keypad_HighISR();
		switch(key_value)
		{
			case KEY_ERROR:
				break;
			case KEY_0:
				break;
			case KEY_1:
				break;
			case KEY_2:
				break;
			case KEY_3:
				break;
			case KEY_4:
				break;
			case KEY_5:
				break;
			case KEY_6:
				break;
			case KEY_7:
				break;
			case KEY_8:
				break;
			case KEY_9:
				break;
			case KEY_LEFT:
			{
				Lcd_Cursor_Left();
				break;
			}
			case KEY_RIGHT:
			{
				Lcd_Cursor_Right();
				break;
			}			
			case KEY_UP:
			{
				Lcd_Cursor_Up();
				break;
			}			
			case KEY_DOWN:
			{
				Lcd_Cursor_Down();
				break;
			}	
			case KEY_ENTER:
			{
				bExit = 1;
				break;				
			}
			case KEY_BACK:
				bExit = 1;
				break;
			default:
				break;					
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -