📄 page.c
字号:
/*
*writed by liangwd in 2005-7-4
*/
#include <string.h>
#include "..\inc\def.h"
#include "..\inc\44b.h"
#include "..\inc\44blib.h"
#include "..\inc\led.h"
#include "..\inc\page.h"
#include "..\inc\character.h"
#include "..\inc\lcdlib.h"
#include "..\inc\kb.h"
extern flagsetting *flag_setting ;
extern fileparameter *file_parameter;
//read file data of comtrol point
//writed by liangweidong 2005-9-16
unsigned short int read_file_data(unsigned short int controlpoint)
{
unsigned short int temp;
// fileparameter *file_p;
temp = file_parameter->file_data[controlpoint];
return temp;//(file_parameter->file_data[controlpoint])&0x3fff;
}
//write file data of comtrol point
//writed by liangweidong 2005-9-16
void write_file_data(unsigned short int filedata,unsigned short int controlpoint)
{
unsigned short int flag_temp;
// fileparameter *file_p;
flag_temp = (file_parameter->file_data[controlpoint])&0xc000;
filedata = filedata & 0x3fff;
file_parameter->file_data[controlpoint] = filedata |flag_temp;
}
//seek some control point flag
//writed by liangweidong 2005-9-16
BOOL seek_trun_flag(unsigned short int controlpoint)
{
unsigned short int flag_temp;
flag_temp = (file_parameter->file_data[controlpoint])&0x4000;
if (0 == flag_temp)
return FALSE;
else
return TRUE;
}
//seek some control point flag
//writed by liangweidong 2005-9-16
BOOL seek_alarm_flag(unsigned short int controlpoint)
{
unsigned short int flag_temp;
flag_temp = (file_parameter->file_data[controlpoint])&0x8000;
if (0 == flag_temp)
return FALSE;
else
return TRUE;
}
//set some control point flag
//writed by liangweidong 2005-9-16
BOOL set_trun_flag(unsigned short int controlpoint)
{
file_parameter->file_data[controlpoint] = (file_parameter->file_data[controlpoint])|0x4000;
}
//set some control point flag
//writed by liangweidong 2005-9-16
BOOL set_alarm_flag(unsigned short int controlpoint)
{
file_parameter->file_data[controlpoint] = (file_parameter->file_data[controlpoint])|0x8000;
}
//clear some control point flag
//writed by liangweidong 2005-9-16
BOOL clear_trun_flag(unsigned short int controlpoint)
{
file_parameter->file_data[controlpoint] = (file_parameter->file_data[controlpoint])&0xbfff;
}
//clear some control point flag
//writed by liangweidong 2005-9-16
BOOL clear_alarm_flag(unsigned short int controlpoint)
{
unsigned short int flag_temp;
file_parameter->file_data[controlpoint] = (file_parameter->file_data[controlpoint])&0x7fff;
}
//writed by liangweidong 2005-9-9
//initialization the start states
void init_total_file(void)
{
int test_temp = 0;
// fileparameter *file_p;
unsigned short int i;
// if(flag_setting == NULL)
flag_setting = (flagsetting *)malloc(sizeof(flagsetting));
file_parameter = ( fileparameter *)malloc(sizeof( fileparameter)); //create a control file
//total patameter
test_temp = flag_setting->flag_language;//test
flag_setting->flag_language = 1;
test_temp = flag_setting->flag_language;//test
test_temp = (int)flag_setting->flag_language;//test
flag_setting->flag_protect = 1;
flag_setting->flag_LCD_onoff = 1;
flag_setting->flag_openloop = 1;
flag_setting->flag_accum_contim = 1;
flag_setting->flag_USB = 1;
flag_setting->flag_RS232 = 1;
flag_setting->flag_timesetup = 1;
//file patameter
flag_setting->flag_accum_stroke =100;
flag_setting->flag_auto_manual = 1;
flag_setting->flag_core_stroke = 100;
flag_setting->flag_filling_type =1;
flag_setting->flag_point_number = 2;
flag_setting->flag_set_core_type = 1;
flag_setting->flag_set_emoty_voltage = 10;
flag_setting->flag_set_full_voltage = 10;
flag_setting->flag_unit_type = 1;
flag_setting->flag_thickness_range = 3;
flag_setting->flag_set_zero_voltage = 10;
flag_setting->flag_set_span_voltage = 10;
flag_setting->flag_set_gain = 100;
//initialization file
strcpy(file_parameter->name, "liang");
test_temp = flag_setting->flag_point_number+1;//test
file_parameter->totalpointnumber = 32 + (flag_setting->flag_point_number)*32;
test_temp = file_parameter->totalpointnumber;//test
file_parameter->cushion = 5;
file_parameter->diegap = 5;
file_parameter->diegapslope = 15;
for(i = 0; i < (file_parameter->totalpointnumber); i++)
{
write_file_data(150, i);
test_temp = file_parameter->file_data[i] & 0x3fff;//test
}
file_parameter->flag_file_core_type = 1;
file_parameter->flag_file_emoty_voltage = 10;
file_parameter->flag_file_full_voltage = 10;
file_parameter->flag_file_gain = 1;
file_parameter->flag_file_span_voltage = 10;
file_parameter->flag_file_zero_voltage = 10;
file_parameter->movedelay = 3;
file_parameter->shotsize = 50;
file_parameter->startslope = 15;
file_parameter->range_high = 110;
file_parameter->range_low = 20;
// file_parameter->
}
//writed by liangweidong 2005-9-13
//display the file figure
void display_figure(int flag)
{
unsigned short int i, k, long_temp;//, controlnumber;
//
switch(flag)//flag_setting->flag_point_number)
{
case 0:
for(i = 0; i < 32; i++)
{
Display_number((3*ASCIIX), ((38-i)*ASCIIY), i);
long_temp = read_file_data(i);
for(k = 0; k < 8; k++)
{
ColorXLine((4*ASCIIX+1), ((39*ASCIIY) -( i*8 + k)), long_temp);
}
}
break;
case 1:
for(i = 0; i < 64; i++)
{
Display_number((3*ASCIIX), ((38-i)*ASCIIY), i*2);
long_temp = read_file_data(i);
for(k = 0; k < 4; k++)
{
ColorXLine((4*ASCIIX+1), ((39*ASCIIY) -( i*4 + k)), long_temp);
}
}
break;
case 2:
for(i = 0; i < 96; i++)
{
Display_number((3*ASCIIX), ((38-i)*ASCIIY), i*3);
long_temp = read_file_data(i);
for(k = 0; k < 3; k++)
{
ColorXLine((4*ASCIIX+1), ((39*ASCIIY) -( i*3 + k)), long_temp);
}
}
break;
case 3:
for(i = 0; i < 128; i++)
{
Display_number((3*ASCIIX), ((38-i)*ASCIIY), i*4);
long_temp = read_file_data(i);
for(k = 0; k < 2; k++)
{
ColorXLine((4*ASCIIX+1), ((39*ASCIIY) -( i*2 + k)), long_temp);
}
}
break;
default:
break;
}
}
//modefied by liangweidong
//2005-8-26
void page_setfigure(void)
{
unsigned int i, k, temp;
// fileparameter *file_p;
//
Display_ASCIITable(0*ASCIIX , 0*ASCIIY, "NO.");
Display_ASCIITable(20*ASCIIX, 0*ASCIIY, "TOTAL POINT:");
Display_number(36*ASCIIX, 0*ASCIIY, file_parameter->totalpointnumber);
Display_ASCIITable(0*ASCIIX, 1*ASCIIY, "POINT NO.");
Display_ASCIITable(20*ASCIIX, 1*ASCIIY, "DATA:");
Display_ASCIITable(37*ASCIIX, 1*ASCIIY, (flag_setting->flag_unit_type?"mm":"%"));
Display_ASCIITable(0*ASCIIX, 2*ASCIIY, "SHOT SIZE");
Display_number(16*ASCIIX, 2*ASCIIY, file_parameter->shotsize);
Display_ASCIITable(17*ASCIIX, 2*ASCIIY, "%");
Display_ASCIITable(20*ASCIIX, 2*ASCIIY, "100% =");
Display_number(36*ASCIIX, 0*ASCIIY, 120/(flag_setting->flag_thickness_range + 1));
Display_ASCIITable(37*ASCIIX, 2*ASCIIY, "mm");
Display_ASCIITable(0*ASCIIX, 3*ASCIIY, "DIE GAP");
Display_ASCIITable(17*ASCIIX, 3*ASCIIY, (flag_setting->flag_unit_type?"mm":"%"));
Display_ASCIITable(20*ASCIIX, 3*ASCIIY, "WEIGHT");
Display_number(36*ASCIIX, 3*ASCIIY, file_parameter->file_data[i]);
Display_ASCIITable(37*ASCIIX, 3*ASCIIY, "%");
Display_ASCIITable(0*ASCIIX, 4*ASCIIY, "DELAY");
Display_number(16*ASCIIX, 4*ASCIIY, file_parameter->movedelay);
Display_ASCIITable(17*ASCIIX, 4*ASCIIY, "%");
Display_ASCIITable(20*ASCIIX, 4*ASCIIY, "RANGE H");
Display_number(36*ASCIIX, 4*ASCIIY, file_parameter->range_high);
Display_ASCIITable(37*ASCIIX, 4*ASCIIY, "%");
Display_ASCIITable(0*ASCIIX, 5*ASCIIY, "CUSHION");
Display_number(16*ASCIIX, 5*ASCIIY, file_parameter->movedelay);
Display_ASCIITable(17*ASCIIX, 5*ASCIIY, "%");
Display_ASCIITable(20*ASCIIX, 5*ASCIIY, "RANGE L");
Display_number(36*ASCIIX, 5*ASCIIY, file_parameter->range_low);
Display_ASCIITable(37*ASCIIX, 5*ASCIIY, "%");
// for(i = 1; i <=32; i++)
// {
// Display_number((3*ASCIIX), ((38-i)*ASCIIY), (i*(flag_setting->flag_point_number+1)));//+4
// }
Display_number((3*ASCIIX), ((38)*ASCIIY), 1);
//
Display_number((3*ASCIIX), 39*ASCIIY+1, 0*(flag_setting->flag_thickness_range + 1)*5);
Display_number((10*ASCIIX), 39*ASCIIY+1, 1*(flag_setting->flag_thickness_range + 1)*5);
Display_number((17*ASCIIX), 39*ASCIIY+1, 2*(flag_setting->flag_thickness_range + 1)*5);
Display_number((24*ASCIIX), 39*ASCIIY+1, 3*(flag_setting->flag_thickness_range + 1)*5);
Display_number((31*ASCIIX), 39*ASCIIY+1, 4*(flag_setting->flag_thickness_range + 1)*5);
Display_number((38*ASCIIX), 39*ASCIIY+1, 5*(flag_setting->flag_thickness_range + 1)*5);
Display_ASCIITable(39*ASCIIX, 39*ASCIIY+1, "%");
//
ColorXLine((4*ASCIIX+1), (6*ASCIIY-1), 210);//+2
ColorXLine((4*ASCIIX+1), (39*ASCIIY), 210);//-2
ColorYLine((4*ASCIIX+1), (6*ASCIIY-1), 266);//+2
ColorYLine((4*ASCIIX+1+210), (6*ASCIIY-1), 266);//+2
// display_figure();
/*
ColorYLine();
for(i = 1; i <= 256; i++)
{
if(i<=200)
DrawHorizontalLine(1594+i*30, i);
else
DrawHorizontalLine(1594+i*30, i-200);
Delay(30);
}
DrawHorizontalLine(9304, 200);
DrawPerpendicularLine(6479, 258);
//TEST
for(i=0; i<257; i++)
{
DrawPerpendicularLine(37320-i*120, i);
DrawPerpendicularLine(37321-i*120, i);
Delay(20);
}
Display_character(1, 10, "-");
*/
}
//modefied by liangweidong
//2005-8-26
void page_setmark(void)
{
unsigned char i;
Display_ASCIITable(0*ASCIIX, 0*ASCIIY, "NO.");
//
for (i = 0; i < 32; i++)
{
Display_ASCIITable(2*ASCIIX, (2+i)*ASCIIY, "P");
Display_number(4*ASCIIX, (2+i)*ASCIIY, i+1);
Display_ASCIITable(6*ASCIIX, (2+i)*ASCIIY, "ON OFF");
}
if((flag_setting->flag_point_number == 2) ||(flag_setting->flag_point_number == 4))
{
for (i = 0; i < 32; i++)
{
Display_ASCIITable(14*ASCIIX, (2+i)*ASCIIY, "P");
Display_number(16*ASCIIX, (2+i)*ASCIIY, i+33);
Display_ASCIITable(18*ASCIIX, (2+i)*ASCIIY, "ON OFF");
}
}
//
Display_ASCIITable(25*ASCIIX, 2*ASCIIY, "SLOPE SET");
Display_ASCIITable(26*ASCIIX, 4*ASCIIY, "DIE GAP SLOPE");
Display_number(34*ASCIIX, 5*ASCIIY, 0);
Display_ASCIITable(35*ASCIIX, 5*ASCIIY, "%/SEC");
Display_ASCIITable(26*ASCIIX, 7*ASCIIY, "START SLOPE");
Display_number(34*ASCIIX, 8*ASCIIY, 0);
Display_ASCIITable(35*ASCIIX, 8*ASCIIY, "%/SEC");
//
if(flag_setting->flag_point_number == 4)
{
Display_ASCIITable(28*ASCIIX, 38*ASCIIY, "NEXT PAGE");
}
}
//modefied by liangweidong
//2005-8-26
void page_setmark_next(void)
{
unsigned char i;
Display_ASCIITable(0*ASCIIX, 0*ASCIIY, "NO.");
for (i = 0; i < 32; i++)
{
Display_ASCIITable(2*ASCIIX, (2+i)*ASCIIY, "P");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -