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

📄 variable.h

📁 HT1621液晶控制测试
💻 H
字号:
/**********************************************************
*    文件名: variable.h
***********************************************************/

uchar  code  ver_num[2]={0x01,0x02};   //软件版本号U1.0.0  --只能用BCD码
uchar  code  keynumdata[]={0x7E,0x48,0x3D,0x6D,0x4B,0x67,0x77,0x4C,0x7F,0x6F,0x5F,   // 0--10
									0x73,0x36,0x31,0x79,0x37,0x17,0x5B,0x53,0x32,0x51,0x5E,   //11--21
        							0x71,0x1F,0x11,0x33,0x7A,0x01,0x00,0x01,0x02,0x04,0x08,0x00,0x00};   //22--32
                          //0,1,2,3,4,5,6,7,8,9,A,  b,C,c,d,E,F,H,h,L,n,N,  o,P,r,t,U,-,'全灭','Lock','function','Volume','Money'
uchar code  dotmem[8]= {0x0f,0x01,0x0A,0x00,0x0C,0x04,0x02,0x08};   //小数点查表--小数显示函数用
uchar code  dotmode[9]={0x10,0x0e,0x38,0x31,0x02,0x00,0x04,0x20,0x00};   //5种小数工作模式,只能修改,不能添加。
//**************************************************************
bdata uchar bbyte;  //位数组定义,可提髙速度
sbit a0=bbyte^0;
sbit a1=bbyte^1;
sbit a2=bbyte^2;
sbit a3=bbyte^3;
sbit a4=bbyte^4;
sbit a5=bbyte^5;
sbit a6=bbyte^6;
sbit a7=bbyte^7;  //位数组定义 
/*******************************************************/
bdata  uchar printstate;   //打印机状态
sbit  p1busy=printstate^0;
sbit  p1pe=printstate^1;
sbit  p1sel=printstate^2;
sbit  p1err=printstate^3;
sbit  p2busy=printstate^4;
sbit  p2pe=printstate^5;
sbit  p2sel=printstate^6;
sbit  p2err=printstate^7;
//**********************************************************
bdata  uchar alarm;   //K1SPK,DCFD1,DCFX1,K2SPK,DCFD2,DCFX2,
sbit k1spk=alarm^7;  //0--鸣;1--不鸣
sbit DCFD1=alarm^6;
sbit DCFX1=alarm^5;
sbit k2spk=alarm^4;
sbit DCFD2=alarm^3;
sbit DCFX2=alarm^2;
sbit  jsq1out=alarm^1;   //计数器1输出
sbit  jsq2out=alarm^0;   //计数器2输出
//***********************************************************

bdata uchar  cmdmem;   //提枪及计量数据
sbit  tq1     = cmdmem^0;  //  ;提枪1
sbit  tq2     = cmdmem^1;  //   ;提枪2
sbit  k1key   = cmdmem^2;  //   ;锁 0--设置
sbit  k2key   = cmdmem^3;  //   ;锁
sbit  cgq1s1  = cmdmem^4;  //   ;传感器11
sbit  cgq1s2  = cmdmem^5;  //   ;传感器12
sbit  cgq2s1  = cmdmem^6;  //  ;传感器21
sbit  cgq2s2  = cmdmem^7;  //   ;传感器22  
//////////////////////////////////////////
bit  cgq1s1old;   //传感器11前次检测状态
bit  cgq1s2old;   //传感器12前次检测状态
bit  cgq2s1old;   //传感器21前次检测状态
bit  cgq2s2old;   //传感器22前次检测状态
bit   updatea;    //更新显示A工作面计量数据
bit   updateb;    //更新显示B工作面计量数据
bit  update_worka;     //通知更新a显示,由定时器控制
bit  update_workb;     //通知更新b显示,由定时器控制
bit   scanfkey;   //通知扫描銉盘
bit   dispkeyok;  //通知显示更新key屏
bit   spear1_state;    //枪1的状态
bit   spear2_state;    //枪2的状态
bit   dispprn_a;     //每秒通知显示打印机状态a

bit   ration_a;   //1--a枪为定量加油停机  因定额到通知取整
bit   ration_b;   //1--b枪为定量加油停机  因定额到通知取整
bit   save_oka,save_okb;   //通知保存计量数据

bit   ration_mode_a;   //1--a枪为定升加油  0--a枪为定元加油模式  
bit   ration_mode_b;   //1--b枪为定升加油  0--b枪为定元加油模式
bit   vip_mode_a,vip_mode_b;  //历史定量模式

//bit rece_ok;         //正确接收到上位机指令标志
//bit rece_add;          //接收到上位机发送的ADD字节标志  收完戓时间超过1秒清该标志
bit isp_err;    //1--ISP编程错误标志
bit IFACK; //record the SDA state to confirn if ACK has happened
bit NO_ACK; //1==no ack flag
bit BUS_FAULT; //bus fault flag

bit  keyok_a,keyok_b;    //按銉有效
bit  setdotok,setdotok_b;   //设置定额数据时有无按下小数标记
//bit  saledot;   //1--金额小数点为叁位  0--金额小数点为两位
bit  locknooil_a,locknooil_b;   //1--锁机状态
bit  save_ok;     //1--有数据须保存(备份)
bit  cease_power;  //停电
bit  dropt_a,dropt_b;  //1-挂枪标志 用于上电时就则不能开电机
bit  messagesave_ok;   //1--上位机已设置参数标志
bit  printformat_saveok;  //通知保存打印格式
bit  setpas_a,setpas_b;   //设置--高级特殊菜单
/***************************************/
data  uchar time_seccnt;   //计数--秒
data  ulong ration_pulse_a,ration_pulse_b;  //定量脉冲数--修改密码时暂时新密码
data  uchar jl1s;   //计量读数传感器1
data  uchar jl2s;   //计量读数传感器2
data  uchar timer_time;  //计时器计数
data  uchar  hang_time1;  //挂枪延时
data  uchar  hang_time2;  //挂枪延时
//*************************
data uchar   state1;   //状态  00-正常等待状态  01-加油状态  02--设置参数  03--查询状态  04-系数出错

data uchar   state2;   //状态  00-正常等待状态  01-加油状态  02--设置参数  03--查询状态  04-系数出错
data uchar  k1spk_time;  //蜂鸣器1鸣时长及类型
data uchar  k2spk_time;  //蜂鸣器2鸣时长及类型
data uchar  timesec;   //用于产生1秒信号
data uchar  prn1time,prn2time;  //打印机状态显示延时--3分钟不进行任何操作进入该状态
//*************************
idata   uchar  keynumold_a,keynumold_b;   //历史键值
idata   uchar  keyinput_a,keyinput_b;   //记数銉扫次数
idata   uchar  keysolve_a,keysolve_b;  //待处理的键值
idata  uchar  idle_numa,idle_numb;    //空闲记数a
idata  uchar  temp_mema,temp_memb;  //临时--小心使用  修改密码的工作序列号
idata  uchar  keya_num[5];   //键盘小屏b显示缓存
idata  uchar  keyb_num[5];   //键盘小屏a显示缓存
idata  uint   mcstoptime_a,mcstoptime_b;  //电机重新启动延时
idata  uchar  disp_floor_level_a,disp_floor_level_b;  //显示下限
//*********************************************************
idata  uchar  time_temp_delay;  //临时时间继电器
//   ****以下保存的系统参数

idata   uchar  residue_a,residue_b;   //提前量,提前关大流量
idata   uchar  close_num_a,close_num_b;   //提前关机量
idata   uchar  increment_a,increment_b;   //每秒增量
idata   uchar  printermode_a,printermode_b;  //打印机工作方式  00--自动 01--手动
idata   uchar   pirnt_select_a,pirnt_select_b;  //被选择的打印机[00/01]
idata   uchar  oil_types_a,oil_types_b;  //油品类别
idata   uchar  gunadd_a,gunadd_b;  //--中控地址
idata   uchar  decimal_a;   //LCD1小数点控制  1--显点 髙-->低: n,m,6,4,2,5,3,1   [m=1表示A使用2#打印机;0使用1#打印机]
idata   uchar  decimal_b;   //LCD2小数点控制  1--显点  髙-->低: n,m,6,4,2,5,3,1  [m=1表示A使用2#打印机;0使用1#打印机]
idata   uint   price_a,price_b;      //单价
//---------------------------------------------------------------


//------------------------------------------------------
xdata  uchar   menu1;  //1枪菜单项  0--无   1--v/p
xdata uchar  menu2;  //2枪菜单项  0--无   1--v/p

xdata uint  hang_cnt1;   //挂枪检测记数
xdata uint  hang_cnt2;   //挂枪检测记数
xdata  ulong ration_num_a,ration_num_b;  //定额设定值--密码等
xdata   uint   multiple_a,multiple_b;   //设定时的倍数
xdata uchar ucCurtime[7];   //日期--时间
xdata  ulong  invoice_number;  //发票编号
xdata  uchar  rece_num;  //接收字节数
xdata  uchar  rece_buf[160];  //缓冲区
xdata  uchar  print_format[150];  //打印格式,首及尾
xdata  uchar  table_buf[106];  //表格
xdata  uchar  send_buf[23];  //发送缓冲区
xdata  uchar  send_unm;   //发送数据计数
xdata  uchar  command_a,command_b;  //通讯待执行命令
xdata struct gun{
		  ulong   liter;  //体积
		  ulong   sale;   //金额
		  ulong   ppu;   //临时发票编号
		  ulong  pulse;  //单次计量脉冲
		  ulong  ration;  //卡余额 
		  ulong  sum_liter;  //总累升
		  ulong  sum_sale;   //总累金额
		  ulong  work_liter; //班累升
		  ulong  work_sale; //班累金额		  
		  uchar  pulse_jsq;  //每120个向总累进1
       }gun1,gun2;
/***************************END************************************************/

⌨️ 快捷键说明

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