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

📄 yibiao1.lst

📁 这是我在我们公司做的C51加油单片机程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
*** WARNING C258 IN LINE 243 OF D:\COMM_D\YIBIAO1.C: 'num2': mspace on parameter ignored
 244          void xs_key_buf(unsigned char num);
 245          unsigned char menu_1();
 246          unsigned char menu_2();
 247          //char send(unsigned char len,unsigned char xdata *pt);
 248          //char receive(unsigned char len);
 249          //void send_k_msg();
 250          void gettime();/*读时钟*/
 251          void settime();/*写时钟*/
 252          void huakuang(unsigned char hang,unsigned char num,unsigned char lie_ge);/*在液晶上画框*/
 253          void xs_time();
 254          unsigned char password(bit aa); /*aa=0 员工密码  aa=1 用户密码*/
 255          unsigned char pass_card();
 256          void jycz(uchar xdata js,uchar xdata yuanyong);/*加油操作 num---升数或者金额  js----(0:升数,1:金额)*/
*** WARNING C258 IN LINE 256 OF D:\COMM_D\YIBIAO1.C: 'js': mspace on parameter ignored
*** WARNING C258 IN LINE 256 OF D:\COMM_D\YIBIAO1.C: 'yuanyong': mspace on parameter ignored
 257          uchar pd_xian();/*判断用户卡的限制*/
 258          void change_time();/*修改时间*/
 259          /*成交记录*/
 260          void trade_record(uchar xdata type);/*type:记录类型*/
*** WARNING C258 IN LINE 260 OF D:\COMM_D\YIBIAO1.C: 'type': mspace on parameter ignored
 261          void cuorse(uchar xdata cu);/*进程条控制*/
*** WARNING C258 IN LINE 261 OF D:\COMM_D\YIBIAO1.C: 'cu': mspace on parameter ignored
 262          /**********************************通讯函数**************************************/
 263          void main_comm();/*通讯主子程序*/
 264          void common();/*处理PC对加油机的普通查询命令*/
 265          void sq_download();/*申请下载各种文件*/
 266          void download_file();/*下载各种文件*/
 267          void send_record(uchar xdata *sr,uint xdata send_num);/*形成发送记录*/
*** WARNING C258 IN LINE 267 OF D:\COMM_D\YIBIAO1.C: 'send_num': mspace on parameter ignored
 268          unsigned int get_CRC(unsigned char xdata *buffer,unsigned char length);
 269          void downloatd_to_at45d021();/*处理PC机发送下载数据命令,并把数据存入FLASH*/
 270          void search_black();/*黑卡验证*/
 271          void search_white();/*白卡验证*/
 272          /********************************************************************************/
 273          /*FLASH 读写*/ /*pa----->页 0-2048  ba------>页中的偏移量 0-263*/
 274          void flash_cs_1(uint xdata p_cs);
*** WARNING C258 IN LINE 274 OF D:\COMM_D\YIBIAO1.C: 'p_cs': mspace on parameter ignored
 275          void flash_cs_0(uint xdata p_cs);
*** WARNING C258 IN LINE 275 OF D:\COMM_D\YIBIAO1.C: 'p_cs': mspace on parameter ignored
 276          char at45d021_so(void);
 277          void at45d021_si(unsigned char abyte);
 278          void at45d021_cmd(char cmd,uint pa,uint ba);
 279          void at45d021_xxx(unsigned charn);
 280          char at45d021_rb(uint pa,uint ba);
 281          char at45d021_wb(unsigned char dat,uint pa,uint ba);
 282          uint at45d021_wr(char xdata *wrbuf,uint size,uint pa,uint ba);
 283          uint at45d021_rd(char xdata *rdbuf,uint size,uint pa,uint ba);
 284          /**********************************通讯变量**************************************/
 285          unsigned char xdata	rxd_buf[300];	// 数据接收缓冲区
 286          unsigned char xdata	txd_buf[300];	// 数据发送缓冲区
 287          unsigned char xdata	comm_status;	/* 串口通信状态标志
 288          					   0:空闲
 289          					   1:收到通信头(0xfa),进入通信接收状态
 290          					   2:收到有效数据长度(2字节)
 291          					   3:接收完毕,等待处理
C51 COMPILER V6.02  YIBIAO1                                                                06/21/2002 13:04:11 PAGE 6   

 292          					   4:发送状态 */
 293          unsigned char xdata	comm_ptr;	// 串口通信缓冲区指针
 294          unsigned char xdata     ver[10];/*加油机的各种版本号
 295                                          0-1:基础黑名单版本号
 296                                          2:新增黑名单版本号
 297                                          3:新删黑名单版本号
 298                                          4:白名单版本号
 299                                          5:油品油价版本号
 300                                          6:加油站通用信息版本号
 301                                          */
 302          unsigned char xdata      ver_change=0;/*PC机和加油机不同的状态变量
 303                                                0:无变化
 304                                                1:基础黑名单版本号不同
 305                                                2:新增黑名单版本号不同
 306                                                4:新删黑名单版本号不同
 307                                                8:白名单版本号不同
 308                                                16:油品油价版本号不同
 309                                                32:加油站通用信息版本号不同
 310                                                */
 311          unsigned char xdata      now_download_ver=0;/*正在下载版本好的状态变量
 312                                                0:无下载
 313                                                1:下载基础黑名单
 314                                                2:下载新增黑名单
 315                                                3:下载新删黑名单
 316                                                4:下载白名单
 317                                                5:下载油品油价
 318                                                6:下载加油站通用信息
 319                                                */
 320          unsigned char xdata      txd_num=0x40;/*桢号*/
 321          union{
 322                  ulong len_long;
 323                  uchar len_char[4];
 324               }xdata download_file_len,now_file_len;/*记录下载数据的总长度*/
 325          unsigned char xdata start_download=0;/*接收到长度,开始下载*/
 326          union{
 327                  uint seg_int;
 328                  uchar seg_char[2];
 329               }s_offset;/*下载数据是的段便移*/
 330          unsigned char xdata flag_seg_ok=1;/*判断申请的数据是否已经下载0--未下载,1--已下载*/
 331          unsigned char xdata search_result=0xff;/*查找黑名单结果
 332                                                     0xff:正在查找
 333                                                     0:黑卡
 334                                                     1:不是黑卡*/
 335          /********************************************************************************/
 336          unsigned char xdata key_buf[20];
 337          unsigned char xdata ygmm[2];/*员工密码*/
 338          unsigned char xdata ygkmm[6]={0x11,0x22,0x33,0x00,0x00,0x00};/*员工卡密码*/
 339          unsigned char xdata yhmm[2];/*用户密码*/
 340          unsigned char xdata ygh;/*员工号*/
 341          unsigned char xdata je[4]={0x0,0x0,0x00,0x11};/*油票余额*/
 342          
 343          /*定义卡的外部RAM*/
 344          unsigned char xdata	gray_state_data[0x1e];	//
 345          unsigned char xdata	balance[0x04];	//
 346          unsigned char xdata	terminal[0x06];	//
 347          unsigned char xdata	psam_pse_inf[0x19];	///**/
 348          unsigned char xdata	use_pse_inf[0x1e];	//
 349          unsigned char xdata	init_gray_inf[0x0f];	//
 350          unsigned char xdata	gray_lock_time[0x07];	//
 351          unsigned char xdata	gray_mac1[0x0c];	//
 352          unsigned char xdata	gray_mac2[0x08];	//
 353          unsigned char xdata	gray_amn[0x04];	//   解扣时的交易金额
C51 COMPILER V6.02  YIBIAO1                                                                06/21/2002 13:04:11 PAGE 7   

 354          unsigned char xdata	gmac[0x08];	//
 355          unsigned char xdata	tac[0x08];	//
 356          unsigned char xdata	pin_dat[0x08];	// 1字节口令长度 + 2..6字节口令
 357          unsigned char xdata	use_0016_file[0x29];	//
 358          unsigned char xdata	use_001b_file[0x20];	//
 359          unsigned char xdata	use_001c_file[0x60];	//
 360          unsigned char xdata	use_0018_file[0x17];	//
 361          unsigned char xdata	psam_0015_file[0x0f];	//
 362          unsigned char xdata	use_list_file[0x12];	//
 363          unsigned char xdata	use_sel_adf_name[0x12];	//  用户选择的名字
 364          unsigned char xdata	t_mac[4];	//
 365          unsigned char xdata	check_gray_list[24];	//   asn10+bal4+amn3+ctc2+ds1+gmac4
 366          //unsigned char xdata data_count;        //
 367          //unsigned char xdata unit_2s;	// 2秒计时器
 368          /*************************************************************/
 369          //98967F
 370          uint xdata je_xs[9];/*余额*/
 371          //bit ygsb;/*员工是否上班 1---上班  0----下班*/
 372          unsigned char  xdata key_buf_p;/*键盘缓冲区指针*/
 373          unsigned char xdata key;
 374          //unsigned char xdata send_buf[100];
 375          unsigned char xdata second=0,minutes=0,hour=0,week=0,day=0,month=0,year=0;
 376          unsigned char xdata second1=0,minutes1=0,hour1=0,week1=0,day1=0,month1=0,year1=0;
 377          unsigned int xdata cursor_num=0;
 378          //bit cursor_f=0;
 379          //unsigned char xdata cursor_lie=0;
 380          unsigned char xdata in_password_n=0;
 381          unsigned char xdata now_time[4];
 382          unsigned char xdata card_time[4];
 383          bit card_in_out=0;/*判断卡是否插入 1-->插入,2-->弹出*/
 384          ulong xdata POS_TTC;/*终端交易序号,每笔交易自动加一*/
 385          unsigned char xdata card_err_state;
 386          bit dian_f=0;
 387          unsigned char xdata kk=0;/*小数点后的位数*/
 388          main()
 389          {
 390   1       /*********主程序开始**********/
 391   1      
 392   1          bit debug=0;
 393   1          char xdata *p;
 394   1          unsigned char xdata dey,pd=0,i;
 395   1         ZK_CS=1;
 396   1         XBYTE[0xc007]=1;
 397   1        // day=at45d021_wb(0x21,0,0);
 398   1              dey=at45d021_wr(yi_1,256,1024,0);
*** WARNING C259 IN LINE 398 OF D:\COMM_D\YIBIAO1.C: 'parameter': pointer: different mspace
 399   1              at45d021_rd(p,256,0,0);
 400   1              dey=at45d021_wb(25,1,0);
 401   1      
 402   1              dey=at45d021_rb(1,4);
 403   1              dey=at45d021_rb(1,5);
 404   1       /* minutes=0x3;
 405   1        hour=0x14;
 406   1               week=0x05;
 407   1               day=0x10;
 408   1               month=0x05;
 409   1               year=0x02;
 410   1               settime();*/
 411   1      
 412   1         IE=0x98;			// 开中断,允许串口中断、定时器1中断
 413   1         RCAP2H=0xff;			// 定时器2置初值,作为串口0的波特率发生器,波特率9600
 414   1         RCAP2L=0xd1;
C51 COMPILER V6.02  YIBIAO1                                                                06/21/2002 13:04:11 PAGE 8   

 415   1         TH2=0xff;
 416   1         TL2=0xd1;
 417   1         T2CON=0x34;			// 启动定时器2作为串口0的接收、发送时钟波特率发生器
 418   1         SCON=0xd0;			// 串口0工作在模式3,允许接收
 419   1         init();
 420   1         init_xs();/*初始花屏*/
 421   1      xs_hs();
 422   1         /*xs_hhz(0,0,XTCSH1);
 423   1         xs_hhz(2,0,XTCSH2);
 424   1         huakuang(6,8,0);
 425   1         cuorse(10);
 426   1         dl(500);
 427   1         cuorse(40);
 428   1         dl(600);
 429   1         cuorse(90);
 430   1         dl(500);
 431   1         cuorse(123);
 432   1         clear();
 433   1         xs_hhz(0,0,XTZJ1);
 434   1         xs_hhz(2,0,XTZJ2);
 435   1         huakuang(6,8,0);
 436   1         cuorse(10);
 437   1         dl(500);
 438   1         cuorse(40);
 439   1         dl(600);
 440   1         cuorse(90);
 441   1         dl(500);
 442   1         cuorse(123);
 443   1         clear();
 444   1         xs_hhz(0,0,XTLW1);
 445   1         xs_hhz(2,0,XTLW2);
 446   1         huakuang(6,8,0);
 447   1         cuorse(10);
 448   1         dl(500);
 449   1         cuorse(40);
 450   1         dl(600);
 451   1         cuorse(90);
 452   1         dl(500);
 453   1         cuorse(123);*/
 454   1         clear();
 455   1         //jycz(123,1,0);
 456   1         //menu_2();
 457   1         huakuang(6,8,0);
 458   1         xs_time();
 459   1         //change_time();
 460   1      start:
 461   1         clear();
 462   1         pd=0;/*记录密码验证的次数*/
 463   1      
 464   1         xs_hhz(0,40,JYS);
 465   1         xs_hhz(2,0,FR);
 466   1         xs_hhz(4,16,ICK);
 467   1      
 468   1         //huakuang(3,4,6);
 469   1         while(1)
 470   1         {
 471   2                 key=getkey();
 472   2                 if ((XBYTE[0xc010]&0x04)==0x00)
 473   2                 {
 474   3                     card_err_state=use_reset();  /*插卡后,用户卡复位*/
 475   3                     card_err_state=read_use_list(1);/*读第一条记录*/
 476   3                     for(i=0;i<12;i++)
C51 COMPILER V6.02  YIBIAO1                                                                06/21/2002 13:04:11 PAGE 9   

 477   3                     {
 478   4                           use_sel_adf_name[i]=use_list_file[i+4];
 479   4                     }
 480   3                     card_err_state=select_pse();/*选择应用*/
 481   3                     now_time[0]=0x20;
 482   3                     now_time[1]=year;
 483   3                     now_time[2]=month;
 484   3                     now_time[3]=day;
 485   3                     card_time[0]=use_pse_inf[24];
 486   3                     card_time[1]=use_pse_inf[25];
 487   3                     card_time[2]=use_pse_inf[26];
 488   3                     card_time[3]=use_pse_inf[27];
 489   3                     //判断卡是否过期
 490   3                     /* if (!strcomp(now_time,card_time,4))

⌨️ 快捷键说明

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