CASIO DT930开发实例(C语言)

这是一个使用C语言为CASIO DT930手持终端开发的盘点程序。程序包含了初始化、菜单操作、数据通信、文件传输、数据排序等功能。主要涉及文件操作、通信接口及图形设置等。
摘要由CSDN通过智能技术生成
  1. /******************************************************************************
  2. **     System name : 南京康码科技-徐州华腾盘点程序  (DT-930 10M)            **
  3. **     Detail      : Main routine                                            **
  4. **     File name   : main.c                                                  **
  5. **     Version     : 2.00                                                    **
  6. **     Author      : ZhaoWei                2007/05/24                       **
  7. *******************************************************************************
  8. ******************************************************************************/
  9. #include <stdio.h>
  10. #include <string.h>
  11. #include <stdlib.h>
  12. #include "itron.h"
  13. #include "cmndef.h"
  14. #include "bios1mac.h"
  15. #include "k_point2.h"    /*DT964使用*/
  16. #include "clce800.h"
  17. /*********************    宏定义区     ***************************/
  18. #define         CU_MLT_FLAG 1
  19. #define  WAIT    while ( (key_check()) == 0xFFFFFFFF); key_clear();
  20. /*----------------------*
  21. **  Prototype define   **
  22. *----------------------*/
  23. void MenuOpening( void );
  24. void work(void);
  25. void Menu2(void);
  26. void Menu2Select(void);
  27. void Comm(void);
  28. void Initial(void);
  29. void soundget(void);
  30. void Goods_cal();
  31. void Calculate(void);
  32. int del_opr(B *filename);
  33. void comcheck(void);
  34. void addspace(UB *str,H len,H KeyLen);
  35. void str_cut(B *str,B *substr,B *mode);
  36. void stock(void);
  37. void del_single(void);
  38. void FNC_Update(void);
  39. void FNC_Init(void);
  40. void compare(void);
  41. /*int sendfile(B *fname);
  42. int sendjiage(B *fname);
  43. int recvfile(void);*/
  44. void dtsort(B *filename);
  45. void infosort(B *filename);
  46. void sort(void);
  47. void RecvFile(B *RFileName,B *TDirName);
  48. void Com_open(void);
  49. void Com_close(void);
  50. void SendFile(B *SFileName,B *TDirName);
  51. B fpandian[20],ftbspda[20],ftbspjg[20],fjiage[20],fsort[20];
  52. H Lenth,Len,KeyLen,PassLen;
  53. H COM=COM0;
  54. CU_GRAPHSET cu_graphset={CU_GRAPH_ON_1, 10, 1, CU_GRAPH_NM_FILE, 1};
  55. /*项目名称 名称 规格 数量 确认 车号 ID号*/
  56. B BarCode[15],Names[20],Nums[10];
  57. long N=0;
  58. DAT_PWR_STR pwr_str;
  59. DAT_SYS_STR sys_id;
  60. /******************************************************************************
  61. **     Routine name: apstart2                                                **
  62. **     Detail      : Start routine                                           **
  63. **     Parameter   : None                                                    **
  64. **     Return value: None                                                    **
  65. **     Author      : Fuji Software Inc.                                      **
  66. ******************************************************************************/
  67. void ap_start( void )
  68. {   
  69.     Wait2( 5L );
  70.     s_sound( 2250, 5 );             
  71.     Wait2( 5L );
  72.     s_sound( 2250, 5 );            
  73.     FNC_Init();
  74.     lcd_cls();               
  75.     MenuOpening();          
  76.     Wait2( 60L );
  77.     obr_change(0);
  78.     work();                   
  79. }
  80. /******************************************************************************
  81. **     Routine name: MenuOpening                                             **
  82. **     Detail      : opening message search and display                      **
  83. **     Parameter   : none                                                    **
  84. **     Return value: none                                                    **
  85. **     Author      : Fuji Software Inc.                                      **
  86. ******************************************************************************/
  87. void MenuOpening( void )
  88. {
  89.     unsigned char    msg[][22]={
  90.                                 "     欢迎使用 ",
  91.                                 "      DT-900  ",
  92.                                 "    手持终端机",
  93.                                 "     南京康码 "};
  94.     short   cnt, x, y;
  95.     DAT_DSP_STR disp_set;
  96.     dat_system( SYSD_FNC_READ, SYSD_DSP, &disp_set );
  97.     disp_set.font_md = FONT6_SET;
  98.     dat_system( SYSD_FNC_WRITE, SYSD_DSP, &disp_set );
  99.     dat_system ( SYSD_FNC_READ, SYSD_PWR, &pwr_str );
  100.     pwr_str.res_md = RESUME_ON;
  101.     dat_system ( SYSD_FNC_WRITE, SYSD_PWR, &pwr_str );
  102.     for( x=0,y=1,cnt=0; cnt<4; y+=2,cnt++ )
  103.     {
  104.         lcd_csr_put( y, x );
  105.         cputstr(LCD_ATTR_WIDTH,msg[cnt]);
  106.     }
  107. /*******************************************************************************
  108. **      程序名称:cputstr
  109. **      说    明:显示字符串
  110. **      参    数:显示属性,显示内容
  111. **      参数取值:显示属性
  112. **                LCD_ATTR_NORMAL    正常显示模式
  113. **                LCD_ATTR_REVERS    反转显示模式
  114. **                LCD_ATTR_WIDTH     粗体显示模式
  115. **                LCD_ATTR_DOUBLE    双倍显示模式
  116. **      返 回 值:无
  117. *******************************************************************************/
  118. }
  119. void work(void)
  120. {
  121.     Initial();
  122.    /* Goods_cal();*/
  123.     for(;;)
  124.     {
  125.         Menu2();
  126.       Menu2Select();
  127.     }
  128. }
  129. /******************************************************************************
  130. **    Routine name: login
  131. **    Detail      : login system
  132. **    Parameter   : None
  133. **    Return value: None
  134. **    Author      : KangMa Inc.
  135. ******************************************************************************/
  136. void Menu2(void)
  137. {
  138.     short x,y,cnt;
  139.     unsigned char msg[][21]={ "   1:盘点处理",
  140.                              "   2:比价处理",
  141.                              "   3:数据通讯",
  142.                              "   4:数据排序",
  143.                             };
  144.     lcd_cls();
  145.     Dsp_str("*****盘点系统*****",1,0);
  146.     for( x=0,y=3,cnt=0; cnt<4; y+=2,cnt++ )
  147.     {
  148.         lcd_csr_put( y, x );
  149.         cputstr(LCD_ATTR_NORMAL,msg[cnt]);
  150.     }
  151. }
  152. void Menu2Select(void)
  153. {
  154.  H code;
  155.  for (;;)
  156.  {
  157.     code=getkey();
  158.    if(code >= '1' && code <= '4')
  159.         code -= 0x30;                   
  160.    switch (code)
  161.     {
  162.     case 1:
  163.         stock();
  164.        break;
  165.         case 2:
  166.           compare();
  167.           break;
  168.     case 3:
  169.         lcd_cls();
  170.       COM=COM0;
  171.        Comm();
  172.       break;
  173.      case 4:
  174.        dtsort(fpandian);;
  175.        break;
  176.    }
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值