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

📄 apsmp.c

📁 DT900数据采集器
💻 C
📖 第 1 页 / 共 2 页
字号:
#include <stdio.h>
#include <string.h>
#include <math.h>
#include "itron.h"
#include "cmndef.h"
#include "bios1mac.h"

void Wait2(UW);
void MenuOpening( void );
void ap_clear(void);
void password1(void);
void changepsw(void);
void work(void);
void password(void);
void FNC_Init( void );   
int getkey(void);
int getkey2(int,int);
void getmail(void);
int keyf4(void);
void setini(void);
void ap_setdate(void);
void ap_collect(void);
void ap_init(void);
void ap_getdate(void);
void mark(void);
void CR_Check( UB *msg, short len );
struct day_tabl thisday;
struct tim_tabl thistime;

unsigned char oper[5];
unsigned char machine[5];
unsigned char store[10];
unsigned char infohead[7][11],ymy[9],check[50][21],clearpsw[5],ymd[11];
int m=0;
extern UB oper[5];
extern UB machine[5];
extern UB store[10];
   unsigned char msg[][20]={" 出库采集系统",
                            " 1: 采集   ",
                            " 2: 通信   ",
                            "     通信 ",
                            " 置HT于I/O座上 ",
                            "   按任意键 ",          
                            "   欢迎使用",
		            "  CASIO-DT900",
                            "  仓库采集系统",
                           " 东莞日鑫条码公司",
                            "单位类型:",
                            "单位编号:",
                            "系统日期:",
                            "输入错误!",
                            "状态:",
                            "地点:",
                            "货单批号:",
                            "数量:",
                            "请扫描条码...",
                            "重复扫描!",
                            "数量:",
                            "请输入密码:",
                            "密    码:",
                            "位数错! "};
/******************************************************************************
**     Routine name: apstart2                                                **
**     Detail      : Start routine                                           **
**     Parameter   : None                                                    **
**     Return value: None                                                    **
**     Author      : Fuji Software Inc.                                      **
******************************************************************************/

void ap_start( void )
{
   
    Wait2( 5L );
    s_sound( 2250, 5 );             
    Wait2( 5L );
    s_sound( 2250, 5 );            
    FNC_Init();
    lcd_cls();               
    MenuOpening();  /*此处开始*/           
    Wait2( 40L );
    obr_change( 0 );            
    strcpy(oper,"0000 ");
    work();        /*此处开始*/ 

}


/******************************************************************************
**     Routine name: FNC_Initialize                                          **
**     Detail      : function key initialize set (return default)            **
**     Parameter   : None                                                    **
**     Return value: None                                                    **
**     Author      : casio                                                   **
******************************************************************************/
void FNC_Init( void )
{
        KEYFORM		kcode;

	kcode.attr = 0x0;
	kcode.code = 0x2d;
		key_fnc( FNC_SET, FNC_1, &kcode);
	kcode.attr = 0x0;
	kcode.code = 0x1d;
		key_fnc( FNC_SET, FNC_2, &kcode);
	kcode.attr = 0x0;
	kcode.code = 0x1c;
		key_fnc( FNC_SET, FNC_3, &kcode);
	kcode.attr = 0x0;
	kcode.code = 0x10;
		key_fnc( FNC_SET, FNC_4, &kcode);
	kcode.attr = 0x0;
	kcode.code = 0x20;
		key_fnc( FNC_SET, FNC_5, &kcode);
	kcode.attr = 0xff;
	kcode.code = 0x0;
		key_fnc( FNC_SET, FNC_6, &kcode);
	kcode.attr = 0xff;
	kcode.code = 0x1;
		key_fnc( FNC_SET, FNC_7, &kcode); 
	kcode.attr = 0xff;
	kcode.code = 0x02;
		key_fnc( FNC_SET, FNC_8, &kcode);

}


/******************************************************************************
**     Routine name: MenuOpening                                            **
**     Detail      : opening message search and display                      **
**     Parameter   : none                                                    **
**     Return value: none                                                    **
**     Author      : Fuji Software Inc.                                      **
******************************************************************************/
void MenuOpening( void )
{  

short   cnt, x, y;
DAT_DSP_STR	disp_set;
dat_system( SYSD_FNC_READ, SYSD_DSP, &disp_set );
disp_set.font_md = FONT6_SET;
dat_system( SYSD_FNC_WRITE, SYSD_DSP, &disp_set );
lcd_cls();
    for( x=0,y=1,cnt=6; cnt<10; y+=2,cnt++ )
    {       
            lcd_csr_put( y, x );
            cputstr(LCD_ATTR_WIDTH,msg[cnt]);
            }
}

/******************************************************************************
**     Routine name: Wait2                                                   **
**     Detail      : specified second wait routine 2 (31.25ms)               **
**     Parameter   : tmcnt   : timer count                                   **
**     Return value: none                                                    **
**     Author      : Fuji Software Inc.                                      **
******************************************************************************/
void Wait2( UW   tmcnt )
{
ER      ercd;
UW      p_flg;

    ercd = s_settimer2( FL_TM2_INT_ID, FL_TM2_INT_ITU0, tmcnt );
    wai_flg( &p_flg, FL_TM2_INT_ID, FL_TM2_INT_ITU0, TWF_ANDW | TWF_CLR );
    s_timerend2( ercd );
}

int getkey(void)
 {
   KEY_INP	kinp;
   int code;

	kinp.ext = KEY_OBR_EXT;
	kinp.echo = ECHO_OFF;
	kinp.font_size = LCD_ANK_LIGHT;
	kinp.type = LCD_ATTR_WIDTH;
	kinp.column_pos =0;
	kinp.line_pos = 2;
        code=key_read(&kinp);
        return (code);
  }
int getkey2(int y,int x)
 {
   KEY_INP	kinp;
   int code;
   	kinp.ext = KEY_OBR_EXT;
	kinp.echo = ECHO_ON;
	kinp.font_size = LCD_ANK_LIGHT;
	kinp.type = LCD_ATTR_WIDTH;
	kinp.column_pos = x;
	kinp.line_pos = y;
        code=key_read(&kinp);
        return (code);
  }  

void work(void)
    {
  
   short x,y,cnt,code;
 
 for (;;)
 {
   lcd_cls();
  
   for( x=0,y=1,cnt=0; cnt<3; y+=2,cnt++ )
    {
         {
                lcd_csr_put( y, x );
                cputstr(LCD_ATTR_WIDTH,msg[cnt]);
         }

    }
                lcd_csr_put( 9, 3 );
                cputstr(LCD_ATTR_WIDTH," 东莞.日鑫条码 ");


     code=getkey();
     if(code >= '1' && code <= '4')    
         code -= 0x30;                   
     switch (code)
      {
       case 1:
      ap_collect();
        break;
       case 2:
       { 

         lcd_cls();
         for( x=0,y=1,cnt=3; cnt<6; y+=2,cnt++ )
          {
            {
                lcd_csr_put( y, x );
                cputstr(LCD_ATTR_NORMAL,msg[cnt]);
            }
          }
        getkey();
        sendfile();
        getkey();
        break;
      }
    }
  }   
 }

/* void ap_clear(void)
{
     char choice[2];
     H fhnd; 
     int j,i,k; 
           lcd_cls();      
           lcd_csr_put(3,0);
           cputstr(LCD_ATTR_WIDTH,"真的清除采集数据?");
           lcd_csr_put(5,0);
           cputstr(LCD_ATTR_WIDTH," 1.确认 2.放弃 ");
           lcd_csr_put(7,0);
           cputstr(LCD_ATTR_WIDTH," 3.更改密码 ");
           memset(choice,0x0,2);
          j=read_str(14,7,2,choice,1);
          if (choice[0]=='1') 
           {
            m=0;
            for (i=0;i<50;i++) strcpy(check[i],"");
            dat_fdel("goods.txt");
            fhnd=open("goods.txt",O_CREAT);
            close(fhnd);
            return;
           }
          
               else

⌨️ 快捷键说明

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